Monday, 30 May 2016

Introduction to RFC

Types of RFC:


requires both the systems (client and server) to be available at the time of communication or data transfer. It is the most common type and is required when result is required immediately after the execution of sRFC.

sRFC is a means of communication between systems where acknowledgements are required. The resources of the Source System wait at the target system and ensure that they deliver the message/data with ACKD. The Data is consistent and reliable for communication.

The issue is if the target system is not available, the source system resources wait until target system is available. This may lead to the Processes of source system to go into Sleep/RFC/CPIC Mode at target systems and hence blocks these resources.

Used for
  • For communication between systems
  • For communication between SAP Web Application Server to SAP GUI


It is communication between systems where acknowledgements are not required (it is similar to post card delivery).It doesn't require both the systems to be available at the time of execution and the result is not immediately required to be sent back to calling system.
The Source System resource does not wait for the target system as they deliver the message/data without waiting for any acknowledgement. It is not reliable for communication since data may be lost if the target system is not available. 
Used for -
  • For communication between systems
  • For parallel processing


 It is a special form of aRFC. Transactional RFC ensures transaction-like handling of processing steps that were originally autonomous.
Transactional RFC is an asynchronous communication method that executes the called function module in the RFC server only once, even if the data is sent multiple times due to some network issue. The remote system need not be available at the time when the RFC client program is executing a tRFC. The tRFC component stores the called RFC function, together with the corresponding data, in the SAP database under a unique transaction ID (TID). tRFC is similar to aRFC as it does not wait at the target system (Similar to a registered post). If the system is not available, it will write the Data into aRFC Tables with a transaction ID (SM58) which is picked by the scheduler RSARFCSE (which runs for every 60 seconds). Used For-
  • Extension of Asynchronous RFC
  • For secure communication between systems


Queued RFC is an extension of tRFC. It also ensures that individual steps are processed in sequence.
To guarantee that multiple LUWs (Logical Unit of Work/ Transaction) are processed in the order specified by the application. tRFC can be serialized using queues (inbound and outbound queues). Hence the name queued RFC (qRFC). Used For-
  • Extension of the Transactional RFC
  • For a defined processing sequence
  • Implementation of qRFC is recommended if you want to guarantee that several transactions are processed in a predefined order.

Types of RFC Connections – SM59

Type 3 - entries specify connection between ABAP systems. Here, we must specify the host name / IP address. You can, however, specify logon information if desired. This is applicable for both type of RFCs, between ABAP systems and external calls to ABAP systems
Type I - entries specify ABAP systems connected to the same data base as the current system. These entries are pre-defined and cannot be modified. Example entry name: ws0015_K18_24
  • ws0015=host name
  • K18=system name (data base name)
  • 24=TCP-service name
  Type T - destinations are connections to external programs that use the RFC API to receive RFCs. The activation type can be either Start or Registration. If it is Start, you must specify the host name and the pathname of the program to be started.


  1. My friend Suggest me this blog and I can say this is the best blog to get the best knowledge.Thank you so much for this SAP Basis Training in Chennai blog

  2. Thanks for the great information, was looking for this information from long.Great blogSAP MM Training in Chennai