Application Development 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: 

bapi

Former Member
0 Kudos

Hi,

what is the diff b/w synchronous and asynchronous bapi?

Thank you

ASHOK KUMAR

3 REPLIES 3

Former Member
0 Kudos

Hi Ashok,

<b>Synchronous BAPIs</b>

Synchronous BAPIs are generally used to read data from a remote logical system, for example to display a customer list.

Before calling the BAPI, it is therefore necessary to determine the RFC destination of the remote system or the BAPI server. The application developer has access to an API for determining the RFC destination of the BAPI.

<b>Asynchronous BAPIs</b>

Asynchronous BAPIs are generally used for replicating data on one or more logical systems, for example to distribute article master data.

To implement an asynchronous data transfer with a BAPI, an ALE IDoc interface must be generated. This interface controls all of the data communication between logical systems using IDoc technology. The application then calls the generated ALE IDoc interface locally instead of the BAPIs.

As with synchronous BAPIs, the corresponding logical systems of the BAPI must be determined before you call the ALE-IDoc interface. These are transferred to the ALE-IDoc interface as input parameters.

<b>

Processing the Return Parameter</b>

Each BAPI has the standardized Return parameter for returning messages to the calling application. For more information about this parameter, see Return Parameters (Error Handling) in the BAPI Programming Guide.

First the function module that converts the IDoc into the corresponding BAPI in the receiving system is called. After this status records are written for the IDoc in which messages sent in the Return parameter are logged.

If the field type contains A (abort) in at least one of the transferred return parameter entries, the status 51 (error, application document has not been posted) is assigned to all the status records of the IDoc and a ROLLBACK WORK is executed. If the field type contains E (error) in at least one of the transferred Return parameter entries, the status 51 (error, application document has not been posted) is assigned to all the status records of the IDoc and a COMMIT WORK is executed anyway. Otherwise status 53 (application document posted) is written and a COMMIT WORK is executed.

Thanks,

Vinay

Former Member
0 Kudos

synchronous - both way communication

and asynchronous - single way communication.

Regards

S@meer