2014年5月28日 星期三

前補0和去0的方法

需求:下載成檔案時,各欄位資料前補齊0
方法:

"前補0
'6000'.
CALL FUNCTION 'CONVERSION_EXIT_ALPHA_INPUT'"只適用純數值
  EXPORTING
    INPUT         A
 IMPORTING
   OUTPUT        A
          .
WRITE:/,'CONVERSION_EXIT_ALPHA_INPUT'A.

輸出:
CONVERSION_EXIT_ALPHA_INPUT 0000006000
輸出:

'6000A'.
CALL FUNCTION 'CONVERSION_EXIT_ALPHA_INPUT'"只適用純數值
  EXPORTING
    INPUT         A
 IMPORTING
   OUTPUT        A
          .
WRITE:/,'有文字時,CONVERSION_EXIT_ALPHA_INPUT'A.

輸出:
有文字時,CONVERSION_EXIT_ALPHA_INPUT 6000A
輸出:

'6000'.
SHIFT A RIGHT DELETING TRAILING space.
OVERLAY WITH '0000000000'"“要知道長度

WRITE/,'shift RIGHT DELETING TRAILING space',A.

輸出:
shift RIGHT DELETING TRAILING space 0000006000
輸出:

"前去0
'0000006000'.
CALL FUNCTION 'CONVERSION_EXIT_ALPHA_OUTPUT' "只適用純數值
EXPORTING
input A
IMPORTING
OUTPUT A.

write:/,'CONVERSION_EXIT_ALPHA_OUTPUT'A.

輸出:
CONVERSION_EXIT_ALPHA_OUTPUT 6000
輸出:

'0000006D00'.
CALL FUNCTION 'CONVERSION_EXIT_ALPHA_OUTPUT' "只適用純數值
EXPORTING
input A
IMPORTING
OUTPUT A.

write:/,'有文字時,CONVERSION_EXIT_ALPHA_OUTPUT'A.

輸出:
有文字時,CONVERSION_EXIT_ALPHA_OUTPUT 0000006D00
輸出:

'0000006000'.
SHIFT LEFT DELETING LEADING '0'.
WRITE:/,'SHIFT LEFT DELETING LEADING'A.

輸出:
SHIFT LEFT DELETING LEADING 6000
輸出:

沒有留言:

張貼留言