去除SAP中的一些特殊字符
①??????換行符,TAB KEY等的表示
在數(shù)據(jù)文件輸出的時(shí)候,有時(shí)候需要使各個(gè)字段間用TAB KEY進(jìn)行分割。
那么,TAB KEY在ABAP中是如何表示的,就是寫入一個(gè)TAB KEY嗎?
事實(shí)上,在類對(duì)象CL_ABAP_CHAR_UTILITIES中已經(jīng)事先定義好了如換行符,TAB KEY等。
CR_LF???????????????????換行符
HORIZONTAL_TAB??????????水平方向的TAB KEY
VERTICAL_TAB????????????豎直方向的TAB KEY
FORM_FEED???????????????改頁(yè)
例:?CONCATENATE COL1 COL2 CL_ABAP_CHAR_UTILITIES=>HORIZONTAL_TAB?INTO …
?
②??????換行符,TAB KEY等在DB中保存
換行符,TAB KEY等在SAP的DB中被存為“#“。
雖然被保存為#,但在報(bào)表中仍能正常顯示。
如果是Excle中有換行, 則被存儲(chǔ)為雙引號(hào).
??????換行符,TAB KEY等的置換處理
換行符,TAB KEY等的置換不能簡(jiǎn)單的用REPLACE命令進(jìn)行處理。
正確的處理如下:
FORM?remove_cr_lf??USING????p_str.
??DATA:?tcodepage?TYPE?cpcodepage.
??CALL?FUNCTION?'NLS_GET_FRONTEND_CP'
????EXPORTING
??????langu?????????????????=?sy-langu
??????fetype????????????????=?'MS'
????IMPORTING
??????frontend_codepage?????=?tcodepage
????EXCEPTIONS
??????illegal_syst_codepage?=?1
??????no_frontend_cp_found??=?2
??????internal_or_db_error??=?3
??????OTHERS????????????????=?4.
??CALL?FUNCTION?'SCP_REPLACE_STRANGE_CHARS'
????EXPORTING
??????intext????????????=?p_str
??????inter_cp??????????=?tcodepage
??????replacement???????=?32?????"?等于space,?ASC
????IMPORTING
??????outtext???????????=?p_str
????EXCEPTIONS
??????invalid_codepage??=?1
??????codepage_mismatch?=?2
??????internal_error????=?3
??????cannot_convert????=?4
??????fields_not_type_c?=?5
??????OTHERS????????????=?6.
ENDFORM.????????????????????"?REMOVE_CR_LF
總結(jié)
以上是生活随笔為你收集整理的去除SAP中的一些特殊字符的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 利润中心, 成本中心, 工作中心
- 下一篇: SAP概念之利润中心