Application Development and Automation Discussions
Join the discussions or start your own on all things application development, including tools and APIs, programming models, and keeping your skills sharp.
cancel
Showing results for 
Search instead for 
Did you mean: 
Read only

Asynchronous,Synchronous,

Former Member
0 Likes
1,727

hello all

can anybody tell what is asynchrous, synchrous updating and processing in BDC.

6 REPLIES 6
Read only

Former Member
0 Likes
1,182

Hi,

In batch session interface: - Asynchronous processing means Transfers data for multiple transactions - Synchronous database update means during processing, no transaction is started until the previous transaction has been written to the database.

In CALL TRANSACTION: - Synchronous processing means Transfers data for a single transaction. Synchronous and asynchronous database updating both possible The program specifies which kind of updating is desired. Separate LUW for the transaction The system performs a database commit immediately before and after the CALL TRANSACTION USING statement.

https://forums.sdn.sap.com/click.jspa?searchID=11736405&messageID=3923106

https://forums.sdn.sap.com/click.jspa?searchID=11736405&messageID=5357980

Regards

Kiran Sure

Read only

Former Member
0 Likes
1,182

Hi Swamy,

Classical BDC methods are Call transaction & Session.

1.Call transaction is sync processing and sync/asyn update

2.Session is sync/async processing and sync update

Call transaction processes record by record and if error occurs it stops even there are valid records after that.So sync processing and async update

Whereas Session processes all records at a time finds valid and invalid records and updates all valid records at the end.Error log is generated at the end.As it is processes all records it is asyn processing and sync update

I think it is clear to you.Award points if useful

Regards,

Ravee..

Read only

Former Member
0 Likes
1,182

Hi,

SYNCHRONOUES: when ever u execute the transaction the flat file record can be filled in database record by record while in the middle there is an error comes entire transaction is stopped.There is no updation of Database.

ASYNCHRONOUS: when ever u execute the transaction the flat file recored can be filled in database record by record while in the middle there is an error comes, the records upto to now can be processed can be updated in the database and the transaction is stopped.

DIFFERENCE BT SESSION AND CALL TRANSACTION.

CALL TRANSACTION:

1. only synchronous updation

2. errors can handled

3. faster

4. less amount of data

5. updation takes place during program execution .

6.At a time we can process only one TRANSACTION.

SESSION METHOD:

1. Only synchronous updation.

2. Error log is created.

3. slower.

4. Huge Amount of data is Transfer.

5. Updation takes place once the session being created

Synchronous Update – The program wait for the work process to finish the update. Commit Work and Wait.

Asynchronous updating. In this mode, the called transaction does not wait for any updates it produces to be completed. It simply passes the updates to the SAP update service. Asynchronous processing therefore usually results in faster execution of your data transfer program.

Asynchronous processing is NOT recommended for processing any larger amount of data. This is because the called transaction receives no completion message from the update module in asynchronous updating. The calling data transfer program, in turn, cannot determine whether a called transaction ended with a successful update of the database or not.

If you use asynchronous updating, then you will need to use the update management facility (Transaction SM12) to check whether updates have been terminated abnormally during session processing. Error analysis and recovery is less convenient than with synchronous updating.

Synchronous updating. In this mode, the called transaction waits for any updates that it produces to be completed. Execution is slower than with asynchronous updating because called transactions wait for updating to be completed. However, the called transaction is able to return any update error message that occurs to your program. It is much easier for you to analyze and recover from errors.

Regards,

KK

Read only

Former Member
0 Likes
1,182

Hi,

Synchronous Update:

With the Synchronous update, no transaction is stored until the previous transaction is written into the database.

Asynchronous Update:

With the Asynchronous Update, the current transaction need not wait for the previous transaction to be completed. Any transaction is stored into the database.

Hope this is helpful.

Read only

Former Member
0 Likes
1,182

Hi,

Asynchronous Update – The program does not wait for the work process to finish the update. Commit Work.

Synchronous Update – The program wait for the work process to finish the update. Commit Work and Wait.

Refer thse links also.

http://fuller.mit.edu/tech/sync_asynchronous.html

http://sapabapnotes.blogspot.com/2008/03/synchronous-vs-asynchronous-links-in.html

http://help.sap.com/saphelp_nw70/helpdata/en/41/7af4cea79e11d1950f0000e82de14a/content.htm

Reward if it useful..

Lakshmi.

Read only

Former Member
0 Likes
1,182

Hi,

A Asynchronous updating: In this mode, the called transaction does not wait for any updates it produces to be completed. It simply passes the updates to the SAP update service. Asynchronous processing therefore usually results in faster execution of your data transfer program.

Asynchronous processing is NOT recommended for processing any larger amount of data. This is because the called transaction receives no completion message from the update module in asynchronous updating. The calling data transfer program, in turn, cannot determine whether a called transaction ended with a successful update of the database or not.

If you use asynchronous updating, then you will need to use the update management facility (Transaction SM12) to check whether updates have been terminated abnormally during session processing. Error analysis and recovery is less convenient than with synchronous updating.

S Synchronous updating: In this mode, the called transaction waits for any updates that it produces to be completed. Execution is slower than with asynchronous updating because called transactions wait for updating to be completed. However, the called transaction is able to return any update error message that occurs to your program. It is much easier for you to analyze and recover from errors.

Some More information

Synchronus data processing is that in which the program calling the update task waits for the update work process to finish the update before it continues processing.

In Asynchronus update the callng program does not wait for update work process to finish the update and continues as normal.

A BDC done with sessions is always synchronus.

A BDC with call transaction is by default asynchronus

unless you define it explicitly as

call transaction 'XXXX' ...... update 'S'.

( If you donot define update option it is defaulted to "A" ).

The update method is of importance when one transaction locks data which may be required by a subsequent transaction . The subsequent transaction will fail if data is locked from previous one. An example would be you are creating sales order for same material in succession ( with asynchronus update ). Quite likely that some of transactions would fail due to material locked.

For large volume of data Call Transaction will be faster but you have no restart capability here. Suppose from 1000 transactions 100 fails . You will have to run the BDC program again exclusing the ones which wrere successful. However with session method you have the option to process the error transactions again in SM35 . So if you are sure that errors will not occur use call transaction else use session method.

Regards,

Raj.