‎2007 Sep 11 12:54 PM
Hi to all,
may i use BAPI_TRANSACTION_COMMIT to commit two BAPIs or BAPI_TRANSACTION_ROLLBACK to rollback two BAPIs?
Pratical example.
I call BAPI_OUTB_DELIVERY_CHANGE to delete a delivery.
After i have to call BAPI_PO_CHANGE to change a transfer order.
(The example uses the real BAPI i'll have to use in my code).
I need that if the second BAPI goes wrong (there are error messages) the first one (and the second) should be rolled-back.
Code-example.
call function 'BAPI_OUTB_DELIVERY_CHANGE'
exporting .....
...other code lines ....
call function 'BAPI_PO_CHANGE'
exporting .....
if sy-subrc eq 0. "means return_tab contains no errors
call function 'BAPI_TRANSACTION_COMMIT'.
else.
call function 'BAPI_TRANSACTION_ROLLBACK'.
endif.
This code will work, or the rollback will reset only the second bapi db-actions (means that cannot rollback the delivery delete)?
Thx a lot
Andrea
‎2007 Sep 11 11:26 PM
AFAIK, BAPI_COMMIT or BAPI_ROLLBACK will work for the last executed BAPI...So you better consider put one call per BAPI...
Greetings,
Blag.