一个BADI中实施多个Implementation
生活随笔
收集整理的這篇文章主要介紹了
一个BADI中实施多个Implementation
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
業務場景:例如我們需要對國家的稅率做一個增強,以完成某種業務運算,但是每個國家的稅率又是不同的,所以可以新建一個BADI用于增強國家稅率計算,對BADI進行多次實施,分別用于不同國家的稅率計算。
| 1、因為BADI多次實施,需要選中Multiple Use;因為實施的Implementation用于不同場景,需要選中Filter Use。 ? 2、在BADI:Y_BADI_CALC_VAT1中再實施一個Implementation:Y_BADI_CALC_VAT_GB ? 部署Method(Y_CL_CAL_VAT_GB)代碼:Y_IF_CALC_VAT~GET_VAT 3、在BADI:Y_BADI_CALC_VAT1中新建定義一個Filter ? 4、分別在BADI的兩個Implemention中設置Filter條件 ? Y_BADI_CALC_US的Filter條件為country = US,意思是:當country = US時,執行Y_BADI_CALC_US中Method代碼 Y_BADI_CALC_GB的Filter條件為country = GB,意思是:當country = GB時,執行Y_BADI_CALC_GB中Method代碼 5、SE38修改調用程序的代碼: 6、執行程序,測試效果: 當輸入條件是US時,執行Y_BADI_CALC_US Implemention 當輸入條件是GB時,執行Y_BADI_CALC_GB Implemention Multiple GB.jpg? 下載附件 我們Debug就可以直觀的看到不同條件執行不同Implemention了 |
總結
以上是生活随笔為你收集整理的一个BADI中实施多个Implementation的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 定义交货类型(Delivery Type
- 下一篇: SAP实战中Submit的常见用法-调用