
RFC Processing with the Integration Engine
Purpose
The
RFC Adapter enables you to process and execute RFCs (Remote Function Calls) using the Integration Engine.Processing RFC calls using the Integration Engine
pipeline is an alternative to processing XML messages that are generated using the proxy interface. This alternative is considered for all SAP applications that already use RFC calls, as well as for new applications of SAP components that do not yet have access to the proxy generation functions.For more information about RFCs see
RFC basics.
Prerequisites
Sender Application Component
A user for SAP Java Connector (JCo) must be maintained in the sender system to access the required meta data for the called function modules in the sender system.

The RFC Adapter cannot be used for external programs since programs of this type that use the RFC SDK (Software Development Kit) do not have any meta data.
Existing applications do not need to be changed. However, all application systems that send RFCs require an RFC connection to the respective inbound RFC Adapter. You must register the program ID for the inbound adapter with this RFC destination. The program ID is located in the RFC Adapter configuration file.

You cannot send IDocs using this RFC connection. You must sent IDocs to the RFC destination of the
To establish an RFC destination to the inbound RFC Adapter, proceed as follows:
Under the name of the old RFC destination (
R/3_Old) – formerly an R/3 Connection, now a Logical Destination – the system calls the new RFC connection (RFC_Adapter) of type TCP/IP Connection for the RFC Adapter.The change to the target address (RFC destination) is transparent to the application but it alters the semantics of the RFC connection.
To return to the old destination, simply change the reference entry in the logical destination (
R/3_Old), for example from RFC_Adapter to R/3_New.System with RFC Adapter and Integration Engine
Each RFC inbound adapter requires an RFC connection to the Integration Engine. The RFC Adapter configuration file contains the required connection data for this.
Integration Engine outbound processing calls the outbound RFC Adapter with the fixed RFC destination AI_RFCADAPTER_JCOSERVER. The program ID for the outbound adapter must be registered to this RFC destination. The program ID is located in the RFC Adapter configuration file.

Since the Integration Engine is a Unicode system, the RFC destination of the registered RFC Adapter must also be defined as Unicode.
Receiver Application Component
The
end points in the Integration Directory determine the respective receiver systems. If you know which are called by using an RFC then specify them in the RFC adapter configuration file.Process Flow
The connected systems generate the corresponding RFC calls in the applications and send them to the RFC destination of the Integration Engine.
The RFC Adapter is then called in the Integration Engine; the RFC Adapter generates an XML RFC document (XML message) from the RFC data and transfers this document to the pipeline for
routing and mapping.If necessary, the system also converts (in the opposite direction) and maps the results of RFC calls of this type.
Inbound RFC Adapter
Once the RFC call has progressed from the application to the inbound RFC Adapter through the RFC interface, SAP Java Connector converts the meta data to XML RFC format.
Integration Engine: Inbound
A message ID is created for each XML RFC document and a message comprising a prolog and payload is sent to the Integration Engine. The prolog contains the technical connection data for the sender and receiver.

The message only contains one RFC call.
Incoming XML RFC documents are only persisted if they are based on a tRFC call (asynchronous message processing). Synchronous RFC calls are only persisted if
logging is activated.Logical Routing
Once it has entered the Integration Engine, the message header contains the technical connection data (business systems) required to assign the sender and receiver of a message.
Depending on the message contents, the receiver can be identified using an XPath rule; it must have the status True for the receiver to be identified successfully. If no Xpath rule is defined, the receiver business system assigned to the sender business system is chosen.
Technical Routing
In
technical routing the logical receiver is assigned a physical target. For the message, the outbound RFC Adapter requires one RFC end point (an RFC destination) from technical routing for each logical receiver.This RFC end point originates from the Integration Directory. It is analyzed and provides the technical information for the RFC call:
0 without SNC (Default)
1 with SNC
Mapping
The RFC Adapter does not make any special demand on mapping. The outbound RFC adapter must simply be provided with an RFC XML document. This either already exists or must be generated by using a mapping.
Integration Engine: Outbound
The system calls the outbound RFC Adapter and transfers the XML RFC document (XML message) with the RFC end point data.
Outbound RFC Adapter
The task of the outbound RFC Adapter is to convert XML RFC to a valid RFC call and to execute this call.
The result of the RFC call is accepted by the outbound RFC Adapter, converted to XML (XML RFC response), if necessary, and returned to the Integration Engine for mapping.