In ALE applications BAPIs can be called synchronously and asynchronously but synchronous communication only using for reading external data. For writing, ALE BAPI distribution use only asynchronous communication method.
Here is the list of processes in ALE data distribution model using BAPI
Outbound Processing
- Receiver determination (Receiver system for the BAPI call will define and filter objects will check the validity of the receiver. This process take place in application layer)
- Calling the generated outbound function module (Data for BAPI call and list of receiver system are passed to the ALE outbound function module. This take place in ALE layer)
- Data filtering
- Conversion of BAPI calls into IDoc (IDOC containing the data is transferred and created from the outbound function module. This take place in ALE layer)
- Segment filtering (rarely used one for BAPI)
- Field conversion (For converting data fields between different systems)
- IDoc version change
- Dispatch control (Schedule timing for the dispatch. This step also take place in ALE layer)
IDOC dispatch
In communication layer IDOCs are sent using tRFC or EDI to the target system. This step take place in communication layer.
Inbound Processing
- Segment filtering (rarely used one for BAPI)
- Field conversion
- Transfer control (Decides when the BAPIs are to be called like or at a later time in background processing.)
- Conversion of IDoc into BAPI call (Data from IDOC segments will stored in the corresponding parameters of BAPI function module)
- BAPI function module call
- Determination of IDoc status
- Posting of application data and IDoc status
- Error handling
Also Read : ALE Tutorial -> ALE Distribution model using Message types