MB_DOCUMENT_BADI調試(Update Debug)


Update Module函數,主要用語對話或報表中實現同步和異步更新數據庫操作,需要單獨調用函數實現更新數據庫表,但又要求對程序的運行不產生影響(更新成功與否不影響主程序的正常執行)
幾個操作,要么全部執行,要么全部不執行

執行順序如下

  1. IF_EX_MB_DOCUMENT_BADI~MB_DOCUMENT_BEFORE_UPDATE
  2. POST_DOCUMENT(產生會計憑證)
  3. IF_EX_MB_DOCUMENT_BADI~MB_DOCUMENT_UPDATE

Method would get triggered in Update debugging mode. After setting the update debugging it would work . update debugging is setting values at runtime ....and checking values.

Update task是用於對話或報表中實現同步和異步更新數據庫的功能,在Update之前還有一個Before Update,用於更新數據前的檢查,當二者都執行完,才會進行到后面的commit,當before update成功執行,而update不成功,會報錯如下,顯示數據回滾: Express document "Update was terminated" received from author "xxx"

SAP is detecting that and rolling back the body of work that was just committed to the database.

T-code:SM13 and ST22 to analyse it

調試Update Task方法

  1. 在MB_DOCUMENT_BEFORE_UPDATE打上內部斷點;
  2. 在MB_DOCUMENT_ UPDATE打上外部斷點
  3. 在MB_DOCUMENT_BEFORE_UPDATE調試界面
    Settings-Display/Change Debugger Settings-Update Debugging

FM加入到update task的方式是:Call Function xxx in update task


免責聲明!

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



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