Describing Cross-System Business Processes and the SAP Remote Function Call (RFC)

Objectives

After completing this lesson, you will be able to:
  • Explain basic interface and communication technologies available for SAP systems
  • Describe the SAP Remote Function Call (RFC) and explain how it can be used for SAP system communications

SAP Integration and Communication Technologies

Overview

This lesson is designed to enhance your knowledge of the diverse range of communication and integration technologies supported by SAP. The SAP ABAP Platform is designed to support various interface paradigms to enable seamless communication between systems. These interfaces include both SAP proprietary interfaces and interfaces based on open standards.

This figure outlines the technical connections that the ABAP Platform supports.

For example, the ABAP Platform supports technical connections based on TCP/IP protocol or CPI-C, as well as HTTP and HTTPS. Additionally, it also supports numerous specialized interfaces such as RFC, BAPI, ALE, and OData, among others. These specialized interfaces enable access to specific business objects or business processes.

Let's begin with a short video defining some basic concepts and terminology.

Application Link Enabling

Now, let's discuss Application Link Enabling. Application Link Enabling, or ALE, is a proprietary integration service developed by SAP.

It is used for the purpose of exchanging business documents - such as sales orders, invoices, or master data records - between modules in an SAP system, between different SAP systems, or between SAP and non-SAP systems.

ALE enables the business processes that have been developed across several SAP systems or non-SAP systems to be integrated.

We'll discuss ALE in more detail in the following video.

You should now be able to describe some of the important interface and communication technologies used in your SAP S/4HANA system environment. Now, let's have a look in more detail at the SAP Remote Function Call protocol.

SAP Remote Function Call (RFC)

Overview

As discussed earlier, the SAP Remote Function Call (RFC) is a protocol and a set of functions that allow communication between SAP systems or between SAP and external systems. This protocol enables remote function calls to be made from one SAP system to another SAP system or to a non-SAP system.

This powerful tool sits at the heart of the SAP'S S/4HANA landscape and significantly streamlines inter-system communication for efficient business operations. RFC is used to exchange data and execute functions remotely, making it possible to integrate different systems seamlessly.

Now, let's delve further into the concept of the SAP Remote Function Call and explore how it can be used in an SAP S/4HANA environment.

This figure outlines the relationship between the RFC Client and the RFC Server.

The concept of SAP RFC involves two main components:

RFC Client

The RFC Client is the system initiating the remote function call. The client sends a request to the target system to execute a specific function module. The request contains the necessary input parameters for the function module.

 

RFC Server

The RFC Server is the system that receives the request from the client and executes the requested function module using the provided input parameters. The server system processes the function and sends back the results or an error message to the client.

In the example from the above figure, System A initiates the function call and is designated as the RFC Client. System B is the recipient of the RFC from System A and is, therefore designated as the RFC Server.

SAP currently supports a variety of different RFC variants, each of which has its own unique properties and can be used for specific purposes. These RFC Variants include the following:

This figure shows the RFC variants supported by SAP.

By using these RFC variants, customers can leverage a proven technology that provides secure, reliable communication between systems. Specifically, the key features and benefits of the SAP RFC protocol include the following:

This figure outlines the key features and benefits of the SAP RFC Protocol
Data Exchange

RFC allows for the exchange of both structured and unstructured data between different systems. It facilitates the integration of SAP systems with non-SAP systems or other SAP systems to share data seamlessly.

Function Execution

SAP RFC enables the execution of remote function modules residing in a target system. This allows for the execution of business logic or processing of data in a remote system.

Real-Time Communication

RFC enables real-time communication between systems, allowing for immediate data transfer and execution of functions across different systems.

Security

SAP RFC provides secure communication channels between systems by supporting standard encryption and authentication mechanisms. This helps to ensure the confidentiality and integrity of the data exchanged between the systems.

Scalability

SAP RFC supports the distribution of workload across multiple systems, facilitating scalability and performance optimization in complex environments.

RFC Variants

SAP systems have interfaces at different communication levels. The Remote Function Call, or RFC, is the preferred interface protocol of SAP. It enables you to call and execute predefined functions, such as a module or BAPI, in a remote SAP system, or from within the same SAP system.

To illustrate, let us consider communication between two SAP ABAP systems in the next video.

In the following video, let's examine the three first RFC variants supported by SAP:

  • Synchronous RFC (sRFC)
  • Asynchronous RFC (aRFC)
  • Transactional RFC (tRFC)

Disadvantages of Transactional RFC

Unfortunately, the Transactional RFC has two distinct disadvantages.

First, Transactional RFCs process each logical unit of work independently of one another. This can impact system performance over consuming resources on both the RFC Client and the RFC Server.

Second, the Transactional RFC cannot account for the sequencing of logical units of work. This means that it is not possible to guarantee that the transactions will be executed in the sequence dictated by the application.

To resolve these problems, SAP enhanced the Transactional RFC concept with the Queued RFC concept. Therefore, to resolve this problem, SAP enhanced the Transactional RFC concept.

Watch the following videos to learn how the Transactional RFC concept was enhanced by the Queued RFC and the Background RFC.

Summary

You should now be able to describe the SAP Remote Function Call (RFC) and explain how it can be used for SAP system communications.

Log in to track your progress & complete quizzes