1. 程式人生 > >SAP增強總結-第一代增強

SAP增強總結-第一代增強

1、SAP增強從用途來說分:A、資料元素增強;B、選單增強、C、螢幕增強;D、功能增強;

2、SAP增強從實現方式來說分:A 、第一代增強(增強嵌入標準程式中);B第二代增強(SMOD、CMOD);C、第三代增強(BADI);D、第四代增強(BTE);

3、其他相關增強:A、財務模組常用的替代和驗證;B、銷售模組常用的例程等;

實現某個用途採用何種實現方式,四代增強可能都不是萬能的,具體採用哪種方式實現,需要考慮實際情況(可能四種方式都能實現某個增強),以及程式設計師個人喜好選擇合適的增強方式。

各種增強例項:

1、第一代增強

 最常用的就是銷售訂單螢幕增強及功能增強,增強點在程式SAPMV45A中有明顯標誌,見下圖

或檢視該程式子例程以USEREXIT_開頭的即為增強出口,這些出口就包含在上圖的INCLUDE程式中。

 1.1  、銷售訂單行專案螢幕增強

程式SAPMV45A給使用者預留了兩個增強螢幕,訂單擡頭-附加資料B(螢幕號8309)和訂單專案-附加資料B(螢幕號8459)。首先需要將要增加的欄位(如PRODH)新增至資料表VBAP,SE11修改資料表VBAP,點APPEND STRUCTURE,新增資料元素,然後儲存、啟用資料表

然後在SAPMV45A程式中,將控制元件新增至螢幕8459

具體的控制邏輯可以在PBO和PAI中新增程式碼。

 1.2   銷售訂單功能增強

在程式中找以USEREXIT_開頭的子程式,找合適的增強點(根據已積累經驗,如果是新手,只有一個一個試了)。以剛才螢幕增強為例,如果想對該欄位輸入有效性做判斷(當然該判斷可以在PAI中判斷),此控制是在銷售訂單儲存時,做有效性檢查。這需要對XVBAP、YVBAP、KOMK、KOMK、KOMV等通訊結構比較熟悉

然後儲存、啟用程式就可以看到增強的效果了。