Synchronus .. is used when you have to use the generated object into some other transaction code.
Say, you have generated the customer record in the customer master and you need to use this customer code into Sales order cretion (step 2), then you must use the Synchronus update. In this case if you use the Asyncronus update system gives you the customer number but that customer would not be created in the database... so, your step 2 could give you an error.
Asynchronus is used when you need to generated object but don't have to process it further.
Regards,
Naimesh Patel
hi,
in synchronous updated the parent table is updated along with the child
tables and then a sy-subrc is returned. 0 fior sucessful and 4 or 8 for not
sucessful. While in asynchronous updatetion after the updation of the
parent table we get a sy-subrc return. The system is not bothered if the
child tables are updated or not.
Hi
<b>synchronous updating</b>
DO.
PERFORM FILL_BDC_TAB.
CALL TRANSACTION FK02
USING BDC_TAB
MODE N
UPDATE S.
IF SY-SUBRC < > 0.
WRITE: /ERROR.
ENDIF.
ENDDO.
With synchronous updating, we can check SY-SUBRC to determine the success of the transaction and the actual update to the database.
<b>asynchronous updating</b>
With asynchronous updating, we can check SY-SUBRC to determine the success of the transaction only, not the actual update to the database.
DO.
PERFORM FILL_BDC_TAB.
CALL TRANSACTION FK02
USING BDC_TAB
MODE N
UPDATE A.
IF SY-SUBRC < > 0.
WRITE: /ERROR.
ENDIF.
ENDDO.
BDC has two types of update modes. They are ASYNCHRONOUS and SYNCHRONOUS updates.
Asynchronous Update:
In this update it will update transaction level and it goes to next record. Later it updates database level.
Synchronous Update:
In this update it will update transaction level and its goes database level. Then it is goes to the next record.
CALL TRANSACTION method of BDC is Asynchronous and Synchronous Update. Synchronous and Asynchronous database updating is possible with this method.
SESSION method of BDC is Synchronous update. Means no transaction is started until the previous transaction has been written to the database.
Reward points if useful.
Add a comment