1. 程式人生 > >同一個程式裡呼叫多個BAPI需要注意的情況

同一個程式裡呼叫多個BAPI需要注意的情況

然而,有時候,在程式中需要呼叫多個不同的BAPI實現不同的功能,那麼這個時候就容易出現問題了。最先呼叫的BAPI成功執行了,可是後續的BAPI就無法成功執行,當我們除錯的時候,卻沒有錯誤,一切都能正常操作那麼這個時候,我們就要考慮是 BAPI_TRANSACTION_COMMIT引數的問題了!

因為在一個bapi成功執行後,需要呼叫 BAPI_TRANSACTION_COMMIT來提交所做得更改,那麼這個提交操作要等待一定的時間,我們呼叫的時候,通常 BAPI_TRANSACTION_COMMIT的WAIT引數是空的,那麼就會導致commit work and wait不會執行,而是簡單的commit work操作

,這樣後續的BAPI可能需要上一個bapi所作操作的資料,而恰巧這些資料還沒有提交完成,就會導致以後的bapi都無法正常順利的執行。所以我們只需要 BAPI_TRANSACTION_COMMIT中的引數wait賦值'X'。就可以保證後續的操作正常進行了。