Function:
SJIS_DBC_TO_SBC 全角转半角
SJIS_SBC_TO_DBC 半角转换为全角
DATA zconvert TYPE /BIC/AXXXXXX00-XXXXXX.
zconvert = SOURCE_FIELDS-XXXXXX.
CALL FUNCTION 'SJIS_DBC_TO_SBC'
EXPORTING
all = 'X'
* KATAKANA = ' '
* KATAKANA_LOOSE = ' '
* ALPHABET_UPPER = ' '
* ALPHABET_LOWER = ' '
* NUMERIC = ' '
* SPECIAL = ' '
* IMPORTING
* CONVERTED = zconvert
CHANGING
text = zconvert
* EXCEPTIONS
* OVERFLOW = 1
* OTHERS = 2
.
IF sy-subrc <> 0.
* Implement suitable error handling here
ENDIF.
CALL FUNCTION 'SCP_REPLACE_STRANGE_CHARS'
EXPORTING
INTEXT = zconvert
* INTEXT_LG = 0
* INTER_CP = '0000'
* INTER_BASE_CP = '0000'
* IN_CP = '0000'
* REPLACEMENT = 46
IMPORTING
OUTTEXT = zconvert.
* OUTUSED =
* OUTOVERFLOW =
* EXCEPTIONS
* INVALID_CODEPAGE = 1
* CODEPAGE_MISMATCH = 2
* INTERNAL_ERROR = 3
* CANNOT_CONVERT = 4
* FIELDS_NOT_TYPE_C = 5
* OTHERS = 6
.
IF SY-SUBRC <> 0.
* MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
* WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
ENDIF.
REPLACE ALL OCCURRENCES OF '#' IN zconvert WITH space.
RESULT = zconvert.
额外:
TRANSLATE zconvert TO UPPER CASE.