Thursday, June 18, 2009

Recommended Technologies by SAP for Integration

by: Venkatesh Pai

Seamless integration across business applications has always been a critical area of interest for any organization. The criticality of application integration is obvious from the fact that this is often a critical factor in purchase decision making.

SAP recommends the following technologies for integration:

1) SAP BAPI (Business Application Programming Interfaces)

2) Remote callable function modules (RFMs) that have been released for customer / external use

3) IDocs (Intermediate Documents) provided by SAP, that are sent or received by mySAP Business Suite components

4) Data Transfer Programs provided by SAP

1. SAP BAPI (Business Application Programming Interfaces)

Business Application Programming Interfaces (BAPIs) are standard SAP interfaces that enable software vendors to integrate their software into the mySAP Business Suite. BAPIs are technically implemented using RFC (Remote Function Call) enabled function modules inside SAP systems.

BAPIs are defined in the Business Object Repository (BOR) as methods of to SAP business objects that perform specific business tasks. They allow integration at business level, not technical level. This makes it much easier to find suitable BAPIs compared to non-BAPI based function modules.

Once SAP has released a BAPI, its interface definitions and parameters will remain stable in the long term, which means third-party application programs will not be affected by changes to the underlying SAP software or data. If upward-compatible enhancements are made to the BAPIs, the integration of the existing applications is not affected. If incompatible changes to the BAPI become necessary, SAP will create a new BAPI and mark the old BAPI as "obsolete". Obsolete BAPIs are guaranteed to work at least in two subsequent functional releases, starting with the one in which they are declared obsolete. This gives developers approximately two years, depending on SAPs release cycle, to change their existing integration from using the obsolete BAPI to the usage of the new BAPI.

2. Remote Function Call

The SAP development environment supports several ways of structuring software. ABAP function modules are equivalent to what most programming languages call "functions". The SAP system contains thousands of function modules - for example more than 110,000 in SAP R/3 release 4.6C.

Only a subset of those can be called from external systems using a protocol called Remote Function Call (RFC). RFC allows for remote calls between two SAP systems (for example SAP R/3 and SAP BW) or between an SAP system and a non-SAP system. These remotely callable functions are called RFC-enabled function modules or RFMs in short. SAP R/3 release 4.6 C for example contains more than 10,000 RFMs. They can have import and export parameters to send and receive data between systems. Only RFMs with a 'released for customer/released for external use' status will remain stable in long term. Only these should be used for third-party integration projects and are eligible for interface certification. As the special set of RFMs that are linked as methods of the business objects in the SAP systems, BAPIs are explicitly released for customer usage.

3. Intermediate Documents

Intermediate documents (IDocs) were originally invented by SAP to support Electronic Data Interchange (EDI) in a generic fashion. Later, IDocs were also used in the SAP Application Link Enabling (ALE) technology as data containers, which allow exchange of business information between an SAP system and other SAP or non-SAP systems.

IDocs are based on a hierarchical, tree-like segment structure. The syntax for each IDoc type is defined in the SAP system. IDocs can be used in the following business scenarios: ? ?Application Link Enabling (ALE): Communication between logical systems (intra-company relations).

Logical systems can be either SAP systems or non-SAP systems. ALE distribution models are based on message types and BAPIs that indicate the appropriate IDoc types. ? ?Electronic Data Interchange (EDI): Communication between SAP systems and the 3rd party EDI subsystem which is typically connected to an EDI VAN (inter-company relation).

IDocs are created when message types and (object) methods are distributed. The message type is the semantic information which identifies the usage of business data. The IDoc type defines the syntactical format in which the data for a specific business process is transferred.

4. Data Transfer Programs

Some SAP applications provide data transfer programs that can be used to transfer data into or out of SAP systems. The Data Transfer Workbench is a tool that supports the transfer of data into the SAP system with these data transfer programs. The Data Transfer Workbench is particularly useful for business objects with large data volumes. It guarantees that data is transferred efficiently and ensures that data in the SAP system remains consistent. The data transfer is performed in a batch-like fashion.