Data Transfer Methods
Question 8: What are data transfer methods?
Data is transferred from an external system into the SAP R/3 System. You use data transfer when you:
- Transfer data from an external system into an R/3 System as it is installed.
- Transfer data regularly from an external system into an R/3 System.
There are three basic methods for Data Transfer:
- Direct Input (DINP)
With direct input, the SAP function modules execute the consistency checks. However with batch input, these consistency checks are executed with help of the screens. This means that direct input has considerable performance advantages. But there are a few programs for direct input, you can use them if it accomplishes your goal. Direct Input programs work like that they update database tables directly. As you know that it is forbidden to update SAP database tables directly, since consistency and security should be considered. Exceptions are these direct input programs. So you are not able to write custom ABAP direct input programs. But of course you can write ABAP programs to update custom database tables (Z tables), if you are sure all about consistency.
So why SAP has created direct input programs? Because SAP wanted to enhance the batch input procedure, since batch input is slower. SAP offers the direct input technique, especially for transferring large amount of data. In contrast to batch input, this technique does not create sessions, but stores, updates, inserts data directly. To enter the data into the corresponding database tables directly, the system calls a number of function modules that execute any necessary checks. In case of errors, the direct input technique provides a restart mechanism. However, to able to activate the restart mechanism, direct input programs must be executed in the background only. To maintain and start these programs, use program RBMVSHOW or transaction BMV0.Examples for direct input programs are:
RFBIBL00 - FI
RMDATIND - MM
RVAFSS00 - SD
RAALTD11 - AM
RKEVEXTO - CO-PA - CALL TRANSACTION
It seems like batch input method. Data consistency check with help of screen logic. - Batch Input with batch input sessions.
Data consistency check with help of screen logic. Batch Input is a standard technique for transferring large sets of data into the SAP System. The transaction flow is transferred as if it were entered online. The advantage of this is that all relevant check for the transaction are executed, thereby ensuring that the data is consistent.
Before creating your own data transfer program, you should use the Data Transfer Workbench to find the data transfer programs that are delivered by SAP.
SAP applications support the data transfer of numerous SAP business objects. The transfer program specifies the data format definition that is necessary to import the data into the R/3 System. Adapt your conversion program for exporting the external system to this definition. Once the data has been exported, you can import it into your system using a generated data transfer program. Let’s assume you have a Excel file that includes Open Financial Items which should be imported to SAP System. Great! You can use RFBIBL00 direct input program for this purpose. This program normally needs an external source file, but the problem is it requires a special format for direct input. So you should firstly write a conversion program that will convert your Excel file to specified format specified by direct input program.
I mentioned above three basic methods for data transfer. There are also different methods that might be considerable data transfer methods:
- BAPIs as interfaces
Business Application Programming Interfaces (BAPIs) are standardized programming interfaces that provide external access to SAP business processes and data.
BAPIs are defined in the Business Object Repository (BOR) as methods of SAP business objects or SAP interface types. BAPIs enable an object-oriented access to SAP application components.
BAPIs are implemented ans stored as RFC-enabled function modules in the Function Builder of the ABAP Workbench. - One more thing IDOCs might be considered another technique for data transfer. Right?
References:
- SAP Library, ABAP Programming (BC-ABA)