Data Transfer Techniques 

To load data into your R/3 System you can use the standard techniques BAPIs, batch input or direct input:

Business Application Programming Interfaces (BAPIs) are standardized programming interfaces that provide external access to R/3 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 R/3 application components.

BAPIs are implemented and stored as RFC-enabled function modules in the Function Builder of the ABAP Workbench.

For more information about BAPIs see the BAPI User Guide.

The data is transferred by calling a BAPI in the appropriate application.

When using BAPIs as interfaces to the SAP System, the Workbench uses the same technology as used with permanent data transfer via ALE between R/3 Systems or between R/3 Systems and non-SAP systems. The data to be loaded must be in IDoc format (see Analysing SAP Structures). The IDoc numbers in the file must be unique.

If, after a run has ended, there is an error file resulting from task type LOA , this can be used for restarting the data transfer, once the error has been removed.

Batch input is a standard technique for transferring large sets of data into the R/3 System. Here the transaction flow is simulated and the data is transferred as if it were entered online. The advantage of this is that all relevant checks of the transaction are executed, thereby ensuring that the data is consistent.

The batch input process is divided into two steps:

  1. The data transfer program creates a batch input session that contains all the relevant data.
  2. The batch input session is processed and the data it contains is transferred into the R/3 System.

The Data Transfer Workbench executes step one only.

The majority of SAP standard data transfer programs use the batch input technique. The data transfer program creates a batch input session which is processed later. Batch input sessions can be processed in various ways:

You should process batch input sessions in the foreground or using the error display if you want to test the data transfer. If you want to execute the data transfer or test its performance, you should process the sessions in the background.

For more information see the Basis documentation on Batch Input Sessions.

With direct input, the same checks as for the online transaction are made on the data from the data transfer file. The data is then transferred directly into the R/3 System. The R/3 database is updated directly with the transferred data.

For more information see the relevant program documentation.

There are two types of direct input programs:

There are two ways to trigger direct input:

If you are working with test data, start the direct input directly. For the final data transfer, SAP strongly recommends that you use Transaction BMVO.

Theses programs always provide error handling.

Defining attributes

Define the following attributes: Use F4 input help and F1 field help.

Name of a registered program for this program type

You can only specify a variant with programs that are started directly.

Note that with background processing, the input file cannot be stored on the presentation server. Access to presentation server files is only possible when you are working online.

For more information about direct input see BC - Basis Programming Interfaces..

Variants cannot be specified for direct input programs that only enable error handling when they are called from the direct input monitor (transaction BMV0). This is because transaction BMV0 is interactive and runs with tasks of this kind cannot be started in the background.