銷售訂單BAPI增強


一、需求背景

在銷售訂單批導時,需要調用BAPI:BAPI_SALESORDER_CREATEFROMDAT2維護成本中心字段,

二、增強實現

 BAPI中沒有該字段,需要通過增強的方式導入。通過BAPI的文檔,可以看出,抬頭部分和行項目字段分別要增強的結構

因為是抬頭部分,所以要增強抬頭結構,因為VBAK表本身有KOSTL字段,因此不用修改底表

BAPE_VBAK   

BAPE_VBAKX表只用維護KOSTL的更新標識即可

VBAKKOZ  

 VBAKKOZX的KOSTL的組件類型必須用CHAR1或CHAR01

 

因此在源碼中,此處通過組件類型去獲取增強字段

BAPI傳入參數

"-----------------------------------------@斌將軍-------------------------------------------- 
DATA:LS_ZVBAK TYPE BAPE_VBAK, LS_ZVBAKX TYPE BAPE_VBAKX. LS_EXTEN TYPE BAPIPAREX, "擴展字段 LT_EXTEN TYPE STANDARD TABLE OF BAPIPAREX. "擴展字段 CLEAR :LS_ZVBAK,LS_ZVBAKX. LS_ZVBAK-VBELN = LS_IN-VBELN. LS_ZVBAK-KOSTL = LS_IN-ZRSV04. LS_ZVBAKX-VBELN = LS_IN-VBELN. LS_ZVBAKX-KOSTL = 'X'. CLEAR: LS_EXTEN. LS_EXTEN-STRUCTURE = 'BAPE_VBAK'. LS_EXTEN-VALUEPART1 = LS_ZVBAK. APPEND LS_EXTEN TO LT_EXTEN. CLEAR: LS_EXTEN. LS_EXTEN-STRUCTURE = 'BAPE_VBAKX'. LS_EXTEN-VALUEPART1 = LS_ZVBAKX. APPEND LS_EXTEN TO LT_EXTEN.
"-----------------------------------------@斌將軍--------------------------------------------

在出口處加入如下代碼,將傳入的參數進行傳遞。

根據測試情況,考慮是否需要增強USEREXIT_COBL_RECEIVE_VBAK出口,本例不用增強

 

定期更文,歡迎關注


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM