Communication between systems in an SAP environment can be between two SAP Systems or between an SAP system and a non-SAP system. Remote Function Call (RFC) is used for communication between two SAP Systems. An RFC can also be used for communication within a system.
RFC is an interface based on CPI-C (Common Programming Interface for Communication) protocol.
Describe the synchronous and asynchronous communication:
(a) Synchronous Communication: Synchronous Communication is implemented where there is a need for immediate return of data (response) from the receiving system to the sender system. The receiving system should be active at the time this communication is made so that it can process the function call at that very time.
This communication is very helpful when real-time response is required from the destination system.
(b) Asynchronous Communication: In Asynchronous Communication, the receiving system may or may not be available to receive the function call request made from the sender system. The function call can be processed at a later time when the receiving system gets available. Till that time the function call remains in an outbound queue of the sending system and the call is repeated at regular intervals until the receiving system gets available to process the request.
The advantage of this communication is that the receiving system need not be available all the time to process the request especially in cases where the receiving system is temporarily unavailable due to upgrade.
Types of RFCs:
Based on Types of Communication:
(a) Synchronous RFC: This RFC is based on Synchronous Communication which means both the source system and destination system involved must be available at the time function call is made.
(b) Transactional RFC (tRFC): This RFC is also known as Asynchronous RFC and is based on Asynchronous Communication Method. The remote system need not be available at the time tRFC is executed.