2014年5月29日 星期四

FBL*N增加廠商、客戶、科目名稱

需求:FBL1N、FBL3N、FBL5N要顯示廠商、客名、科目名稱
方法:
參考來源:http://scn.sap.com/thread/1407915

使用BTE(Business Transaction Events) EXIT

1、T-CODE:FIBF
建立新的產品(名稱要Z開頭)
設定→產品→客戶

建立新的功能模組
設定→P/S模組→客戶

2、如果結構RFPOSX有異動,需執行RFPOSXEXTEND
SE38→RFPOSXEXTEND

3、FM CODING
TABLES kna1lfa1,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.

ENDIF.
*}   INSERT

沒有留言:

張貼留言