Entering content frameProcess documentation RFC Processing with the Integration Engine Locate the document in its SAP Library structure

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 Structure linkRFC 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.

Note

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.

Note

You cannot send IDocs using this RFC connection. You must sent IDocs to the RFC destination of the IDoc adapter.

To establish an RFC destination to the inbound RFC Adapter, proceed as follows:

  1. From the SAP menu, choose Administration ® System Administration ® Administration ® Network ® RFC Destination (Transaction SM59).
  2. Select an existing RFC destination of type R/3 Connections (for example, R/3_Old) by double-clicking it.
  3. Choose Destination ® Copy and copy the RFC destination using a new name (for example, R/3_New).
  4. Save the new RFC destination (R/3_New) and delete the old RFC destination (R/3_Old) .
  5. Create a new RFC destination (for example, RFC_Adapter) of type T (TCP/IP connection) as the RFC destination for the RFC Adapter.
  6. Select the registration type Registered Server Program and in the field Program ID enter the corresponding program ID from the RFC Adapter configuration file.
  7. If the sender system is a Unicode system, define the RFC destination as Unicode.
  8. Using the name of the old R/3 connection (R/3_Old), create a new RFC destination of type L (logical destination with reference entry).
  9. In the field Reference Entry enter the RFC destination (RFC_Adapter) for the RFC Adapter.

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.

Note

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.

Note

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.

 

 

Leaving content frame