使用BADI: ME_PURCHDOC_POSTED ; 方法:POSTED
-
Step1,選擇典型業務加載項,創建
實施名稱:ZCL_IM_ME_PURCHDOC_1
填上描述:采購訂單審批增強(1),保存並激活
-
Step2. 雙擊方法:POSTED,然后可以寫增強邏輯:
用函數報出消息測試:
CALL FUNCTION 'C14Z_MESSAGES_SHOW_AS_POPUP'
TABLES
i_message_tab = lt_error_message.
-
Step3. 測試:ME21N創建 采購訂單:
保存, 進入剛才增強代碼重點斷點
展示效果:
這里是以顯示 MESSAGE 為示例,你也可以在這里寫其他處理的業務邏輯:修改數據,檢查數據,保存數據,或者抓取數據下發到 其他系統,都可以。
所以這個BADI增強,PO保存的時候一定經過的,所以創建 / 修改 /PO 審批保存環節的增強都可以用這個實現。
注意:1. 一定不要寫 COMMIT 或者ROLLBACK語句 會造成數據一次性錯誤;
2. 避免寫CHECK, EXIT ,RETUN 語句,以保證標准的邏輯可以執行;
再貼個例子:以前項目,在BADI: ME_PURCHDOC_POSTED ; 方法:POSTED里增強,封裝函數保存數據,保存PO修改時間戳到自建表,
然后通過自建表的時間戳判斷為增量PO, 保證發送增量數據給外圍系統