ABAP中有關於分行符號,TAB KEY等
①
分行符號,TAB KEY等的表示
在資料檔案輸出的時候,有時候需要使各個欄位間用TAB KEY進行分割。
那麼,TAB KEY在ABAP中是如何表示的,就是寫入一個TAB KEY嗎?
事實上,在類對象CL_ABAP_CHAR_UTILITIES中已經事先定義好了如分行符號,TAB KEY等。
CR_LF 分行符號
HORIZONTAL_TAB 水平方向的TAB KEY
VERTICAL_TAB 豎直方向的TAB KEY
FORM_FEED 改頁
例: CONCATENATE COL1 COL2CL_ABAP_CHAR_UTILITIES=>HORIZONTAL_TAB INTO …
②
分行符號,TAB KEY等在DB中儲存
分行符號,TAB KEY等在SAP的DB中被存為“#“。
雖然被儲存為#,但在報表中仍能正常顯示。
③
分行符號,TAB KEY等的置換處理
分行符號,TAB KEY等的置換不能簡單的用REPLACE命令進行處理。
正確的處理如下:
CALL FUNCTION 'NLS_GET_FRONTEND_CP'
EXPORTING
LANGU = SY-LANGU
IMPORTING
FRONTEND_CODEPAGE =CPCODEPAGE
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 = INTEXT
INTER_CP = CPCODEPAGE
REPLACEMENT = 32
IMPORTING
OUTTEXT = OUTTEXT
EXCEPTIONS
INVALID_CODEPAGE = 1
CODEPAGE_MISMATCH = 2
INTERNAL_ERROR = 3
CANNOT_CONVERT = 4
FIELDS_NOT_TYPE_C = 5
OTHERS = 6.