You require the Remote Function Call (RFC) adapter for scenarios in which systems are connected to the Integration Server using the RFC protocol. The RFC adapter is part of the Adapter Engine.
The different message types in the RFC adapter are as follows:
- Inbound
- A message is sent from the sender system and sends in the RFC data format to the sender RFC adapter. This could, for example, be an RFC call executed in a report. The sender RFC adapter creates a message in the XML format from this message and adds the SAP PI metadata (business system, interface, and namespace) required for pipeline processing.
- Outbound
The pipeline sends a message in the XML format to the receiver RFC adapter. The adapter function module, which is a remote-enabled function module, is then called in the target system.
Hint
The adapter requires the metadata of the function module interface (for example, data structures and data types) to convert between the RFC format and the SAP PI XML format. Access to the Metadata Repository (MDRS) is then required and this metadata is temporarily stored in the metadata cache of the RFC adapter.Features of the RFC Adapter
The RFC adapter supports the following features:
Synchronous Remote Function Calls (sRFCs) in messages with quality of service (QoS) and Best Effort (BE) are available.
Transactional Remote Function Calls (tRFCs) in messages with quality of Exactly Once (EO) are available.
Messages with QoS Exactly Once In Order (EOIO) mapped to tRFC are available.
SAP GUI, callbacks, and queued remote function call (qRFC) are not required.
Stateless calls are available.
Additional attachments are not required.
Unicode and non-Unicode systems are available.
Hint
Only the Intermediate Document (IDoc) adapter can process IDocs.External programs that have been created using the RFC Software Development Kit (SDK) can only be connected if the metadata for the interface used is available in an SAP system.
Stateless calls are multiple calls that are executed in the target system cannot be grouped in a single context. Therefore, there is no transactional context for more than one RFC call per Logical Unit of Work (LUW).