1、T-CODE:FIBF 建立新的產品(名稱要Z開頭) 設定→產品→客戶 建立新的功能模組 設定→P/S模組→客戶 2、如果結構RFPOSX有異動,需執行RFPOSXEXTEND SE38→RFPOSXEXTEND 3、FM CODING TABLES : kna1, lfa1,SKAT. DATA tNAME LIKE SKAT-TXT20. DATA tNAME1 LIKE SKAT-TXT20. *T-CODE FBL3N總帳 FBL1N供應商 FBL5N客戶 IF sy-tcode = 'FBL3N' OR sy-tcode = 'FBL1N' OR sy-tcode = 'FBL5N'. *CASE KOART CASE E_POSTAB-KOART. *S總帳科目 WHEN 'S'. *SELECT NAME FROM SKB1 SELECT SINGLE TXT20 INTO TNAME FROM SKAT WHERE SAKNR = E_POSTAB-KONTO AND SPRAS = 'M' AND KTOPL = 'NTV'. *K供應商 WHEN 'K'. **SELECT NAME FORM LFA1 SELECT SINGLE NAME1 INTO TNAME FROM lfa1 WHERE LIFNR = E_POSTAB-KONTO.
SELECT SINGLE TXT20 INTO TNAME1 FROM SKAT WHERE SAKNR = E_POSTAB-HKONT AND SPRAS = 'M' AND KTOPL = 'NTV'.
*D客戶 WHEN 'D'. *SELECT NAME FORM KNA1 SELECT SINGLE NAME1 INTO TNAME FROM kna1 WHERE KUNNR = E_POSTAB-KONTO.
SELECT SINGLE TXT20 INTO TNAME1 FROM SKAT WHERE SAKNR = E_POSTAB-HKONT AND SPRAS = 'M' AND KTOPL = 'NTV'.
WHEN OTHERS. *ENDCASE ENDCASE. *NAME INTO E_POSTAB-PRIORITY_TEXT WRITE TNAME TO E_POSTAB-PRIORITY_TEXT. WRITE TNAME1 TO E_POSTAB-STAT_ORDERNO_TEXT.
需求:下載成檔案時無負號,台幣無小數位,不顯示千分號 方法: "消.00 負號,千分號 DATA B TYPE CHAR20. DATA BA TYPE P DECIMALS 2 VALUE -123456. WRITE:/,'原值:',BA. WRITE '123456' TO B no-SIGN NO-GROUPING DECIMALS 0. WRITE:/,'轉換:',B.
輸出: 原值: 123,456.00- 轉換: 123456
輸出:
需求:下載成檔案時,各欄位資料前補齊0 方法: "前補0
A = '6000'. CALL FUNCTION 'CONVERSION_EXIT_ALPHA_INPUT'"只適用純數值 EXPORTING INPUT = A IMPORTING OUTPUT = A . WRITE:/,'CONVERSION_EXIT_ALPHA_INPUT', A.
輸出: CONVERSION_EXIT_ALPHA_INPUT 0000006000
輸出:
A = '6000A'. CALL FUNCTION 'CONVERSION_EXIT_ALPHA_INPUT'"只適用純數值 EXPORTING INPUT = A IMPORTING OUTPUT = A . WRITE:/,'有文字時,CONVERSION_EXIT_ALPHA_INPUT', A.
輸出: 有文字時,CONVERSION_EXIT_ALPHA_INPUT 6000A
輸出:
A = '6000'. SHIFT A RIGHT DELETING TRAILING space. OVERLAY A WITH '0000000000'. "“要知道長度
WRITE: /,'shift RIGHT DELETING TRAILING space',A.
輸出: shift RIGHT DELETING TRAILING space 0000006000
輸出:
"前去0
A = '0000006000'. CALL FUNCTION 'CONVERSION_EXIT_ALPHA_OUTPUT' "只適用純數值 EXPORTING input = A IMPORTING OUTPUT = A.
write:/,'CONVERSION_EXIT_ALPHA_OUTPUT', A.
輸出: CONVERSION_EXIT_ALPHA_OUTPUT 6000
輸出:
A = '0000006D00'. CALL FUNCTION 'CONVERSION_EXIT_ALPHA_OUTPUT' "只適用純數值 EXPORTING input = A IMPORTING OUTPUT = A.