You are on page 1of 21

PRINT FROM SAP HELP PORTAL

Document: Data Transfer Workbench URL: http://help.sap.com/saphelp_nw73ehp1/helpdata/en/4d/670d0d57ba1465e10000000a15822b/content.htm Date created: July 21, 2013

2013 SAP AG or an SAP affiliate company. All rights reserved. No part of this publication may be reproduced or transmitted in any form or for any purpose without the express permission of SAP AG. The information contained herein may be changed without prior notice. Some software products marketed by SAP AG and its distributors contain proprietary software components of other software vendors. National product specifications may vary. These materials are provided by SAP AG and its affiliated companies ("SAP Group") for informational purposes only, without representation or warranty of any kind, and SAP Group shall not be liable for errors or omissions with respect to the materials. The only warranties for SAP Group products and services are those that are set forth in the express warranty statements accompanying such products and services, if any. Nothing herein should be construed as constituting an additional warranty. SAP and other SAP products and services mentioned herein as well as their respective logos are trademarks or registered trademarks of SAP AG in Germany and other countries. Please see www.sap.com/corporate-en/legal/copyright/index.epx#trademark for additional trademark information and notices.

Note This PDF document contains the selected topic and its subtopics (max. 150) in the selected structure. Subtopics from other structures are not included.

PUBLIC 2013 SAP AG or an SAP affiliate company. All rights reserved.

Page 1 of 21

Data Transfer Workbench


The Data Transfer Workbench supports the automatic transfer of data into the system. The Workbench is particularly useful for various business objects with large amounts of data. It guarantees that data is transferred efficiently and ensures that data in the system is consistent.

Note
The Data Transfer Workbench was designed for the initial transfer of data. If you want to transfer data repeatedly at regular intervals, we recommend that you use tools such as ALE (through the IDoc interface) or the SAP Exchange Infrastructure (XI).

Features
The Data Transfer Workbench provides the following functions: Administration and organization of data transfer projects Tools for analyzing the required SAP structures Integration of standard data transfer programs Registration and integration of your own data transfer programs and help programs Various techniques for loading data The data is read from a transfer file in SAP format and loaded into your system using one of the techniques below: BAPI interface Batch input Direct input Data conversion using the Legacy System Migration Workbench (LSMW).

More Information
For details of the individual steps, see the following: Initial Data Transfer Authorizations Preparing the Data Transfer Data Transfer Conversion Assistant Data Transfer Using the Workbench Data Transfer Techniques

Initial Data Transfer


Prerequisites
The following questions should be answered before beginning the initial data transfer: Which business objects are to be transferred? This depends on which business applications you will use. If you are using sales and distribution processing, for example, you have to transfer the material master records as well as the sales master records. How should the business objects be transferred? Various techniques are available for loading the data.

Process
The graphic below describes the possible tasks involved in transferring the data:

PUBLIC 2013 SAP AG or an SAP affiliate company. All rights reserved.

Page 2 of 21

The Data Transfer Workbench provides integrated project management for all the required steps involved in transferring data to your system. A project consists of one or more subprojects, each subproject consists of one or more run definitions, and each run definition consists of one or more tasks. These objects are displayed in a hierarchy in the project management. When the run is started, all the tasks of the run definition are carried out in sequence when the associated programs are called. You need to use programs or function modules for the various steps. Once you have created a project, you can start a run. The tasks of a run definition are processed in order. The result of a run is displayed as status information in color (green, yellow or red) in the hierarchy. The process of transferring data for each object can be divided into the following steps: 1. Prepare the data transfer Extract: In the first step, you extract the existing data from a source system into a file. Clean: Clean the data in this file if necessary (more information: Analyzing and Cleaning Legacy Data and Creating Example Files and Analyzing Structures). Convert: You have to convert your extracted and cleaned data into the structures of the transfer file. 2. Transfer Data Create projects: With the Data Transfer Workbench, you can create projects, sub-projects, and run definitions (more information: Organizing Transfer in Projects). Load: SAP provides a range of transfer programs and interfaces (BAPIs) for loading data. They require a transfer file in an appropriate SAP format. One of the techniques available is used to load the data into the system, depending on the type of business object. If more than one of these methods is available for an object type, read the documentation to distinguish between their objectives. For more information, see Data Transfer in Runs. Check: After the data has been successfully loaded into your system, it can be checked there.

Authorizations
With SAP Web AS 6.20, the DX Workbench was extended with additional authorization checks. The system now uses the authorization object S_DX_MAIN to check for project-independent authorizations and S_DX_PROJ to check for project-dependent authorizations. Users with no authorizations for these objects can no longer work with the DX Workbench. The corresponding user roles are SAP_BC_SRV_DX_ADMIN for administrative tasks and SAP_BC_SRV_DX_MANAGER for executing activities. For example, all activities are assigned to the DX Workbench administrator, for example, also change authorizations. The manager can only display and execute. The authorization object S_DX_PROJ is used to specify whether the authorizations apply in general, or are project-related. These user roles also contain authorizations for the LSMW. The following combinations of authorization objects and roles are possible for the Data Transfer Workbench: Authorization Object S_DX_MAIN S_DX_PROJ S_DX_MAIN S_DX_PROJ SAP_BC_SRV_DX_ADMIN SAP_BC_SRV_DX_ADMIN SAP_BC_SRV_DX_MANAGER SAP_BC_SRV_DX_MANAGER The user can perform non-project-specific administration activities in the DX Workbench. The user can perform project-specific and non-project-specific administration activities in the DX Workbench. The user can perform non-project-specific executing activities in the DX Workbench. The user can perform project-specific and non-project-specific executing activities in the DX Workbench. Role Function

PUBLIC 2013 SAP AG or an SAP affiliate company. All rights reserved.

Page 3 of 21

Note
For an exact description, see SAP Note 670500.

Preparing the Data Transfer


Procedure
Before you can transfer data, you have to make a number of preparations. For each business object type, you have to plan the data transfer and split it into individual tasks. You have to determine the existing programs, function modules, or BAPIs for the individual tasks, or if none exist, you have to develop and register them. The following tasks are required: Analyzing and Cleaning Legacy Data Creating a Mapping Plan Creating Example Files and Analyzing Structures Editing Transfer Files with the Editor Developing Your Own Programs, Function Modules, and BAPIs Registering Your Own Programs, Function Modules, and BAPIs

Preparing the Legacy System


Prerequisites
The data transfer is influenced by the status of the legacy data. You can ensure that the process flows smoothly by preparing your data in the legacy system as much as possible. This step concerns various aspects: Data volume Delete any data that is obsolete or that you no longer require in your legacy system such as one-time customers or material that is no longer required. Data consistency and data integrity You must ensure that no inconsistent data is transferred to the SAP system. All errors must be corrected before actually transferring the data. You should then check how the data is used in the SAP system. If, for example, you only use "Material types" in your legacy system to form subtotals for various evaluations, and if you transfer this subdivision of materials directly as an SAP material type, then when you are later processing in the SAP system, the system displays incorrect account bookings and balance sheets, for example. The reason for this is that numerous functions are connected with distinguishing material types in the SAP system.

Note
SAP recommends that you do not transfer historical data that is no longer required for the business flow, but instead use other solutions. You have the following options for this: Print the list with the corresponding data or use microfiche. In the latter case, the data is archived as a hard copy. It is still available for future evaluations. Use your legacy data to analyze historical data. Furthermore, if you save the historical data in your legacy system and only use it as required, on the one hand you can save maintenance costs (no upgrades) and on the other you can the adhere to the analysis options. Use the SAP information system and the relevant documentation to inform yourself on the available options. Use alternative business objects. Analyze exactly why you want to transfer specific documents and document data. Sometimes the information that you require on a specific business object can be better and more easily determined using an alternative business object. You should therefore transfer the data into the SAP system using price information records instead of old invoice documents, for example.

Procedure
1. Delete all obsolete data from your legacy system. 2. Remove all inconsistent data from your database and check how the data is actually used in the SAP system.

Analyzing and Cleaning Legacy Data


Procedure
You must analyze your legacy data so that you can assign it later to the data fields in the transfer file.

PUBLIC 2013 SAP AG or an SAP affiliate company. All rights reserved.

Page 4 of 21

Consider the following questions: Which data exists? How is this data structured (length, sequence)? Which data can be transferred unmodified, which must be converted, and which cannot be transferred at all?

Note
You can supplement data that does not exist in your legacy system in the conversion process. You can also clean up your data either before or after it has been extracted from the source system.

Creating a Mapping Plan


You can create a mapping plan for a data transfer program (program, BAPI, or function module) and the corresponding target structure and store it as a text file. This text file contains all target structures in table format and can be used as the basis for the creation of conversion rules.

Prerequisites
You have created a conversion proposal.

Procedure
1. In the Data Transfer Workbench, choose 3. Create a mapping plan by choosing Goto DX Tools . The Data Transfer - Tools screen appears. 2. Choose a program type and program for an object type and the corresponding task type. Goto Mapping Plan . System List Save Local File , in the menu. (Continue) pushbutton to display the dialog box in which you can specify the 4. The list displayed contains all the fields from the target structure and other columns in which you can maintain the assignment to the source fields. 5. Save the list by choosing the relevant pushbutton or

6. A dialog box where you can choose the file type is displayed. Choose the file name. The file is stored on your local PC. 7. Create the file.

Result
You have created the target structures as a file. You can open and maintain or print the file using an Office program (Excel, for example).

Creating Example Files and Analyzing Structures


This section provides information about creating, editing, and displaying a data transfer file, and how to familiarize yourself with the required SAP structures in this process. To load the data into the system (task type LOA), SAP provides one or more program types for each object type. Task Type LOA Program Type BAPI BINP DINP IDOC Description Loads data using BAPI Loads data using batch input Loads data using direct input Loads data using ALE inbound function module

You can select the programs, function modules or BAPIs for the program types of the task type LOA using input help. You can analyze and process the associated SAP structures. You can also generate import structures for the connection of external programs (data definitions for program languages C, Cobol, PL1, and RPG). If you create a data transfer file with the required application data, you can use this file to test the data transfer.

Prerequisites
You have identified the SAP business object types for the data that you want to transfer.

Procedure
In the Data Transfer Workbench, choose The Data Transfer - Tools screen appears. Create a File Goto DX Tools .

PUBLIC 2013 SAP AG or an SAP affiliate company. All rights reserved.

Page 5 of 21

Note
Use the field help and input help when you create the transfer file. 1. Use the input help to select Object Type, Program Type, and Program/Method for loading the data. 2. In the File Type field, select a physical or logical file type. 3. Enter the name of your data transfer file in the File Name field. 4. Choose one of the functions below: Create an Initial File with Structure Information A data transfer file in SAP format is created without data. This file contains all the required structure information. You can use this information to identify the required data structures. You can manually enter application data into this file. Create a File from a Test Program Provided that the application has a program to create test data, you can create a file with this test data.

Note
EDI Customizing settings are required for the program type BAPI . The application program creates IDocs that are written with these settings into a file. Specify a logical system when you create the file. A logical system is an application system in which the applications are coordinated to work in one common database. You can then generate the settings for this logical system. The required authorizations are contained in the role ALE Administrator (SAP_BC_MID_ALE_ADMIN). Alternatively, you can also carry out these steps manually to generate the Customizing settings. To do this, you have to make the following settings in the SAP Implementation Guide under Define the Logical System Prepare the Sender and Receiver Systems Set Up Logical Systems Name Logical System If you use Create File with Data, you have to make further settings: Define port of type "file" (transaction code WE21) Enter a file name with a physical directory. Maintain outbound partner profiles (transaction code WE20 ) The partner profiles are valid for the message type assigned to the BAPI. This is required for filling the IDoc control record. Web Application Server Application Link Enabling (ALE) :

Create a File from the Conversion Assistant Provided you have created a conversion proposal for a file transfer program, BAPI, or function module, you can create a file in the corresponding target structure for the file transfer program, BAPI, or function module from this conversion proposal. A list of the conversion proposals created for the chosen business object is displayed. Choose a conversion proposal and create the file by choosing the (Continue) pushbutton. Check the File You can check the file syntax.

Note
If the file is in SAP record layout format, the sequence of the record layout structure is checked. If the file is in IDoc format, all the EDI inbound processing checks are run. To save objects not processed using a BAPI as an IDoc in the system, your input file must not contain any errors. Proceed as follows: 1. To do this, choose Check File. A check log with message texts and status details with long texts appears. 2. To display the long texts, choose the appropriate symbol. Display a File You can display existing files as follows: 1. Use the input help to select Object Type, Program Type, and Program/Method for loading the data. 2. In the File Type field, select a physical or logical file type. 3. Enter the name of your data transfer file in the File Name field. 4. Choose Display File. An overview of the file contents appears. The field values are formatted according to the settings defined by the user. For example, the date format 20000313 may be formatted as 13.03.2000. Familiarize yourself with the structures. Copy a File The data transfer file can be copied between application and presentation servers. This file can only be copied in the structure of the selected business object. The transfer file data must be transferred to the SAP system in a fixed length. Proceed as follows: 1. Choose Copy File. 2. Select the target (application or presentation server).

PUBLIC 2013 SAP AG or an SAP affiliate company. All rights reserved.

Page 6 of 21

3. You must decide how you want to copy the data. Without Conversion The data transfer file is copied without being changed. You normally select this option for copying between applications servers. Internal Format > External Format This option is only possible for copying a file from the application server to the presentation server. The data is converted into the presentation format and the individual fields are delimited by a tabulator. Normally, you would want to use your data in a table calculation program on the front-end. External Format > Internal Format This option can only be used for copying a file from the presentation server to the application server. During this copying process, the data is converted into the SAP format and copied to the required fixed length. This option is normally chosen if you want to copy your data from a spreadsheet program to an application server.

Note
When the data is copied, it is saved temporarily in the main memory. If you have a large dataset, the roll area could overflow. The copy process would then terminate. Therefore, use the copy function of the operating system if you have a large dataset.

Change a File You can fill the file with application data, change existing data, or add more data. To do this, choose Chang File. An overview of the file contents in the SAP format appears. You can change individual lines by selecting one and choosing Structure Change or by double-clicking on it. The detail display of the individual fields of the structure in the SAP format appears. You can display further details for fields by double-clicking on the field. For more information on changing transfer files, see Editing Transfer Files with the Editor. Split a File You can split a transfer file yourself according to the following criteria: Fixed predefined target files Predefinable number of lines per target file Predefinable number of objects per target file Combine Files You can combine several transfer files in one single file. Generate and Display Import Structures for External Programs If you want to connect external programs, you can generate and display import structures for the required target structures. You can download these structures to your PC. To do this, choose Extras Generate Import Structures or Display Import Structures in the Data Transfer - Tools screen. For more information, see the application help.

Editing Transfer Files with the Editor


You can use the data transfer editor to modify a data transfer file. This editor is particularly useful if you want to edit transfer data during the test, that is, before it is actually transferred. In a converted file, you can correct errors, for example.

Prerequisites
An initial data transfer file or a different file in the appropriate format is available.

Features
You can edit the transfer file at field or structure level. In particular, you can: Delete structure lines Duplicate structure lines Edit blocks of structures (that is, select, cut or copy, and paste) Edit fields in individual structures by entering field values The possible entries in the editor are usually supported by the input help.

Activities
1. In the Data Transfer Workbench, choose Goto DX Tools . The Data Transfer - Tools screen appears. 2. Choose an existing transfer file for an object type and the associated task type, program type, and program/method, and choose Change File.

PUBLIC 2013 SAP AG or an SAP affiliate company. All rights reserved.

Page 7 of 21

Assigning Fields
Prerequisites
You have analyzed the fields and structures, as well as the transfer file and your legacy data. In this step you should assign the fields in the legacy system to the fields in transfer file. There are two ways to assign the fields to each other: 1. Manual Assignments You can use a printout of the interface structure from step 2 to do this. 2. Assignment using a commercial tool (mapping tool) You can use a commercial tool to assign the fields in the legacy system and the fields in the target SAP structure to each other and to display them. Since the use of commercial mapping tools is linked to license fees and training costs, it is recommended that you use them if you have to convert several interfaces (> 20) to several legacy systems (> 2).

Note
You must fill all required fields from the online transaction as well as the transfer file. Fields that are not filled contain the NODATA character.

Procedure
1. Decide whether you want to assign the data manually or using a commercial mapping tool. 2. Establish which data in the transfer file fields is to be transferred.

Result
You have mapped the fields in your legacy system to the fields in the transfer structure.

Developing Your Own Programs, Function Modules, and BAPIs


You have to plan the data transfer run for each business object type, divide it into individual task types (EXT, PUR, CHK, MAP, LOA, SPL, and AUD), and find existing programs or even develop and register your own. For more information about loading data into the SAP system (task type LOA), see Data Transfer Techniques. You can then use these programs or ones you have created to execute tasks in the Data Transfer Workbench. When you execute these tasks in a run, values are entered in the parameters described below.

Prerequisites
You have analyzed the fields and structures as well as the data to be transferred and the transfer file in SAP format.

Procedure
Developing Programs There are no specifications for program development because the program is called at runtime with a variant that is specified in the task. Developing Function Modules If you create a function module (program type FUNC) to execute the task, it must contain the following parameters: Import Parameters

Syntax
01. PROJECT LIKE DXTASKS-PROJECT, SUBPROJECT LIKE DXTASKS-SUBPROJECT, RUNDEF LIKE DXTASKS-RUNDEF, TASK LIKE DXTASKS-TASK, RUNID LIKE DXTASKS-RUNID Table Parameters (import)

Syntax
01. I_FILES O_FILES Export Parameters LIKE DXFILEN, LIKE DXFILEN

PUBLIC 2013 SAP AG or an SAP affiliate company. All rights reserved.

Page 8 of 21

Syntax
01. RETURN LIKE DXRETURN

Note
The status of the task is transferred in the export parameter RETURN. The STATUS field must contain one of the values below: 1: Task ended without errors. The subsequent task will be executed. 2: Task ended with errors. The run is terminated. Once you have removed any errors, the run can be continued and the task is executed again. 3: Task ended with errors, no restart. Once the error has been removed, the next task is executed when the run is continued. Using fields MSGTY, MSGID, MSGNO, MSGV1, MSGV2, MSGV3, MSGV4, you can return an appropriate message that is stored in the log. If your function module itself stores messages in the application log, you can return this message ID in the field LOG_HANDLE.

Develop BAPIs If you want to enhance the BAPIs provided by SAP for data transfer by developing your own BAPIs, see the BAPI Programming Guide (CA-BFA). To use the BAPIs you develop for the Data Transfer Workbench, you have to generate BAPI-ALE interfaces.

Recommendation
If you want to provide application data for test purposes, you can create a report and include it in the Data Transfer Workbench tools (see Creating Example Files and Analyzing Structures under Creating a Data File). As well as fields for selecting objects, a parameter for the receiver of the IDocs is also mandatory. The Data Transfer Workbench uses this report to write the IDocs to a special file. The receiver is specified when the report is run. For this reason, this field must be defined in the report as follows: parameters: receiver like tbdlst-logsys no-display or select options: receiver for tbdlst-logsys no-display The report generates IDocs from SAP objects by determining all the data relevant for the objects and calling the generated ALE outbound function module to create IDocs. This generates outbound IDocs in the database. If the user has defined outbound partner profiles and a file port beforehand, the outbound IDocs are written to an outbound file. These are then converted to inbound IDocs. Unlike reports that generate IDocs in an ALE business process, this report must not execute receiver determination.

Registering Your Own Programs, Function Modules, and BAPIs


For certain object types, SAP already provides registered standard programs in the Data Transfer Workbench. For tasks, such as extracting data from non-SAP systems or cleaning data, you can also develop your own programs and function modules. Before you can use these for a task, you have to register them with the relevant object type. If you want to enhance the SAP-registered BAPIs for loading data into SAP systems, you have to create and register your own BAPIs.

Prerequisites
You have identified SAP business object types appropriate for your legacy data. You have created the programs, function modules, or BAPIs required for your data transfer project (see Developing Your Own Programs, Function Modules, and BAPIs).

Procedure
In the Data Transfer Workbench, choose Proceed as follows: Choose Create Registration. In the dialog box Create Registration, use the F4 input help to make your selection. Object type Select one of the object types. Task type and program type Several program types are assigned to each task type. Only programs of the following program types can be registered: Goto DX Program Library to get to the Data Transfer Programs Library screen.

PUBLIC 2013 SAP AG or an SAP affiliate company. All rights reserved.

Page 9 of 21

Task Type EXT

Program Type FUNC REPO

Description Extracts the data from the non-SAP system using a function module. Extracts the data from the non-SAP system using a report. Cleans the data using a function module. Cleans the data using a report. Maps the data using a function module. Maps the data using a report. Checks the data using a function module. Checks the data using a report. Loads the data into the SAP system using a BAPI. Loads the data into the SAP system using a function module. Loads the data into the SAP system using a report. Loads the data into the SAP system using an inbound ALE function module. Checks the data in the SAP system using a function module. Checks the data in the SAP system using a report. Miscellaneous functions using a function module. Miscellaneous functions using a report.

PUR

FUNC REPO

MAP

FUNC REPO

CHK

FUNC REPO

LOA

BAPI FUNC REPO IDOC

AUD

FUNC REPO

MSC

FUNC REPO

Enter your program or function module in the Program field. You can deregister programs that you have registered. If it is a BAPI (only in the case of task type LOA), use the input help to choose Object Type and Method in the dialog box. If available, enter the name of a program that generates test data in the Program field. If it is an IDoc, use the input help to choose Object Type and Function Module in the dialog box. If available, enter the name of a program that generates test data in the Program field. You can delete registrations. You can also assign a different method or program to a registered object type.

Result
Your programs, function modules, and BAPIs are now registered.

Data Transfer Conversion Assistant


During data transfer into the SAP System, data has to be extracted from the non-SAP System (source system) and made available in a file (source file). The data transfer is executed using a data transfer interface (program, BAPI, or function module), which requires the data in a file (target file). The structure of this target file (target structure) depends on the transfer object. The data or files from the source system do not usually have the required structure. One of the major tasks in data transfer is mapping (converting) the data from the source system to the required target system. The source fields have to be assigned to the target fields and the field contents may have to be adjusted (formatted). The data transfer conversion assistant supports you when establishing the conversion rules. The Data Transfer Workbench (DX Workbench) is used to execute the data transfer. The Legacy System Migration Workbench (LSMW) enables the source file to be converted into the target file. You have to specify conversion rules in the LSMW for this purpose. The main task is establishing the conversion rules and mapping the source structures to the target structures. The relationship between the source fields and the target fields can be 1 to 0, or 1 to 1, or 1 to n, and n to m. In Customizing, SAP Systems are configured to meet the requirements of the application and business processes. This configuration is reflected in the data, the transaction, and in the data transfer. The data required for the data transfer is therefore different in each system. You can familiarize yourself with these Customizing settings in the transaction itself. There you can determine which data is required to create the relevant application data. This information then has to be compared with the target structure of the data transfer program, BAPI, or function module. This enables you to determine which fields are required for the data transfer and which fields exist or have to be filled in the target structure.

Features
The conversion assistant enables you to record a transaction with a transaction recorder and to compare this recording with the target structure of the relevant data transfer program, BAPI, or function module. The result is a conversion proposal. This conversion proposal delivers all the field values entered in the transaction with the respective screen name, in a tree structure. All fields of the target structure that could be required for the data transfer are listed for each field of the transaction. The following criteria are checked for the creation of the conversion proposal: 1. Are the field names of the target structure and the fields of the transaction the same? 2. Are the data elements of the target structure and the fields of the transaction the same? 3. Are the short texts of the field description of the target structure and the fields of the transaction the same? 4. Are the domains of the target structure and the fields of the transaction the same? The conversion proposal can be corrected or supplemented manually. A file with the required target structure can then be created from a conversion proposal in the Data Transfer Workbench. You can then use this file with the relevant data transfer program, BAPI, or function module to test the data transfer. This enables the completeness of the filled fields or field values in the structure to be determined. The errors occurring in the test can be corrected in the conversion proposal

PUBLIC 2013 SAP AG or an SAP affiliate company. All rights reserved.

Page 10 of 21

and the test can be restarted. Restrictions This conversion proposal does not usually provide a 100% solution for the conversion rules, but rather provides support. The use of the conversion assistant does, however, facilitate the creation of the conversion rules considerably. More Information For details of the individual steps, see the following: Starting the Conversion Assistant Recording the Transaction Creating a Conversion Proposal Conversion Proposal Adjustment Changing a Conversion Proposal Manually Creation of Files with Test Data from the Conversion Proposal

Starting the Conversion Assistant


You want to create a conversion proposal.

Procedure
The conversion assistant is started from the Data Transfer Workbench: 1. In the Data Transfer Workbench ( Tools screen appears. 2. Choose the relevant task type, program type, and program/method for an object type. 3. In the Data Transfer - Tools screen, choose Goto Conversion Assistant . The Conversion assistant initial screen is displayed. Features You can create, change, display, or delete a conversion proposal from the Conversion proposal menu. A recording of a transaction can be created directly by choosing the Choose Goto Transaction Recorder (Create recording) pushbutton. to go to the transaction recorder. SAP Menu Tools Data Transfer Workbench or transaction SXDA), choose Goto DX Tools . The Data Transfer -

Result
1. You can now create a recording of a transaction. 2. You can then create a conversion proposal.

Recording the Transaction


You have tested the transaction and can create typical data originating from the external system, online.

Prerequisites
The recording of the transaction is required to create a conversion proposal with the conversion assistant. You are in the conversion assistant.

Features
You can create a recording of a transaction directly by choosing the Choose Goto Transaction Recorder (Create Recording) pushbutton. to go to the transaction recorder. Alternatively, you can create a recording there.

Procedure 1. Create a recording of a transaction by choosing the 2. Specify a name for the recording. 3. Enter the name of the transaction that you want to record. 4. Maintain the transaction code for the transaction. 5. Start the recording. 6. Execute the transaction and save the data. Result (Create Recording) pushbutton.

PUBLIC 2013 SAP AG or an SAP affiliate company. All rights reserved.

Page 11 of 21

You have created a recording of a transaction. For more information, see the documentation on the Transaction Recorder.

Creating a Conversion Proposal


Prerequisites
You have recorded the relevant transaction for the data transfer using the transaction recorder.

Procedure
1. To create a conversion proposal, specify a name for the conversion proposal. 2. You can then create the conversion proposal by choosing 3. Enter a description for the conversion proposal. The Recording dialog box appears. 4. Choose the recording that you want to compare with the target structure of the relevant data transfer program, BAPI, or function module. If you have chosen a BAPI as the data transfer method and there is more than one IDoc basis type, you have to choose the required IDoc basis type from a selection list. Conversion Proposal Create .

Result
The conversion assistant compares the recording with the chosen target structure. The conversion assistant creates a conversion proposal. The conversion proposal represents the field assignments in a hierarchical tree structure. The module pool name of the transaction, the screen number, and the screen field are displayed. The fields of the target structure that were determined by the conversion assistant are displayed directly beneath this. The other columns (short description of field, short description of field structure, and the associated data element of the field) contain more information about the transaction fields and the target structure. The following scenarios can occur when the target fields are determined: 1. No target field determined 2. One target field determined 3. More than one target field determined The following example shows part of the conversion proposal for customers.

The icons in the tree structure have the following meanings: Icons Meaning Main node for transaction (level 1) Module pool name for transaction (level 2) Screen number for transaction (level 3) Field name of a field in the screen of the transaction (level 4) The fields of the target structure that were determined are displayed beneath the field name of the field on the screen. The icons indicate the type (for example, field name) used to determined the field. The icons have the following meanings:

PUBLIC 2013 SAP AG or an SAP affiliate company. All rights reserved.

Page 12 of 21

Icons

Meaning The proposal based on the same domain The proposal based on the same field name The proposal based on the same data element The proposal based on the same field description

Only one icon is ever displayed. The order of priority is as follows: Field name Data element Field description Domain

More Information
Using a Conversion Proposal

Using a Conversion Proposal


Prerequisites
You have created a conversion proposal.

Procedure
Display Details 1. Double-click on the determined. Saving a Conversion Proposal 1. To save a conversion proposal, choose Conversion Proposal Save . icon (field name of the field in the screen of the transaction) to display the detailed information about the transaction field.

2. Double-click on the icon for the target field to display the detailed information for the field from the target structure and the way the field assignment was

Note
You have the opportunity to store this conversion proposal under a different name. You can also change the conversion proposal (adjust the conversion proposal) and store different versions of it.

Other Conversion Proposals If you have created conversion proposals with the same recording for a business object or the corresponding data transfer program, BAPI, or function module, you can display these and switch to a different conversion proposal. To switch to a different a conversion proposal, choose proposal from a list. Conversion Proposal Other Conversion Proposal in the menu. You can choose a conversion

Conversion Proposal Adjustment


Prerequisites
You have created a conversion proposal.

Activities
You are in change mode and the conversion proposal is displayed in a hierarchical tree. The conversion proposal does not always contain one field assignment of a transaction field to a field in the target structure. Each field assignment proposal has to be checked. The correct field assignment for the application is to be chosen. Example: Screen 0105 contains the field RF02D-BUKRS. The conversion assistant determines a field with the same name and the same short name for the field and the same data element for the two target structures (BKN00 and BKNZA). The only difference between the fields is the structure description. It is obvious from

PUBLIC 2013 SAP AG or an SAP affiliate company. All rights reserved.

Page 13 of 21

the data entered that the transaction field contains general customer data and, therefore, the correct field is the BKN00-BUKRS field.

To choose the correct field (for example, BKN00-BUKRS), proceed as follows: 1. Using (input field behind the icon), select the correct field assignment for the application. The field description or the structure description can be used for this decision. 2. Do this for all fields in the conversion proposal. 3. If target fields are incorrectly assigned to the transaction fields in the tree structure or if target fields have not been determined, you can change the conversion proposal manually. Result You have selected all relevant fields in the conversion proposal. After you have saved the conversion proposal, you can create a test file from the conversion proposal in the Data Transfer Workbench.

Changing a Conversion Proposal Manually


Prerequisites
You have created a conversion proposal.

Activities
If no field assignments or only incorrect field assignments are found for a field, you can manually assign fields from the target structure to the fields from the transaction. Deleting Fields from the Tree Structure Target fields that are incorrectly assigned to the transaction fields in the tree structure can be deleted as follows. 1. Select a line (by clicking on the icon for the target field). 2. Delete the assignment by choosing the (Delete Line) pushbutton.

Adding Fields from the Target Structure to the Tree Structure If the wrong target field was determined in the tree structure for the transaction field, you can add fields manually as follows: 1. In the tree structure, select the source field of the transaction for which you want to manually create a field assignment. 2. Choose the pushbutton for a selection list of all target structures. 3. You can assign fields from the target structure directly or with a search. To assign a field directly: Expand the required structure and select the relevant field in the target structure. Confirm the field assignment by choosing the Enter pushbutton. To assign a field using a search: Choose the (Search) pushbutton to search fields in the target structure. You can search by field name, short or

description of field, data element, and data type. The corresponding information from the transaction field is proposed by default, but you can change this. The search result contains all fields that meet at least one condition. Expand the required structure and select the relevant field in the target structure.

PUBLIC 2013 SAP AG or an SAP affiliate company. All rights reserved.

Page 14 of 21

Confirm the field assignment by choosing Result

or the Enter pushbutton.

You have adjusted the conversion proposal manually. The proposal in the Data Transfer Workbench.

icon indicates the fields that have been inserted manually.

You have selected all relevant fields in the conversion proposal. After you have saved the conversion proposal, you can create a test file from the conversion

Creation of Files with Test Data from the Conversion Proposal


You can create a file from the conversion proposal in the relevant target structure for a data transfer program, BAPI, or function module. In this way, you can test the data transfer, and check whether the field assignments in the conversion proposal are sufficient. If errors occur during the data transfer test, you can change the conversion proposal or adjust the file directly in the editor. Provided that you were able to transfer the data with test data correctly, you can use these field assignments or conversion rules to manually create the set of rules in the LSMW. The conversion proposal cannot be automatically transferred to the LSMW as a set of rules because the assignments in the LSMW are based on source structures/source fields (specification by the source system) whereas the conversion proposal is based on data that is entered manually. Prerequisite You have created a conversion proposal. Features In the tools in the Data Transfer Workbench, you can create a file with test data from a conversion proposal. This file contains the data from the corresponding recording. Procedure 1. In the Data Transfer Workbench, choose Goto DX Tools . The Data Transfer - Tools screen appears. 2. Choose a program type and program for an object type and the corresponding task type. 3. In the File Type field, select a physical or logical file type. 4. Enter the name of your data transfer file in the File Name field. 5. Create a file with test data from a conversion proposal. In the menu, choose File Create from assistant.

6. A list of the conversion proposals created for the chosen business object is displayed. Choose a conversion proposal and create the file by choosing the (Continue) pushbutton. Result You have created a file with test data. You can now use this to test a data transfer.

Data Transfer Using the Workbench


A project is used to group business objects together for transfer. The sub-project is used to divide a project up. Precisely one business object type is assigned to each sub-project and this business object type is transferred in this sub-project. In the run definition, you specify how the data of a sub-project is to be transferred, by creating tasks and specifying the files involved. You can use a task to specify which program is to be executed and with which attributes.

Example
In the task Load Data Using BAPI , you can specify which BAPI is called, which file the data to be loaded is read from, and how error handling is processed.

Prerequisites
You have decided which business objects your source data is to be transferred to and in what order. You have decided which technique is to be used to transfer the business objects. You have created the programs, function modules, or BAPIs required for the various tasks (cleaning up, extracting, and mapping the data). Customizing has been completed.

Procedure
Call the Data Transfer Workbench by choosing Tools . Perform the following steps:

PUBLIC 2013 SAP AG or an SAP affiliate company. All rights reserved.

Page 15 of 21

Perform the following steps: 1. Organizing Transfers in Projects 2. Executing Data Transfers in Runs

Result
The data from your source system is transferred into your system.

Organizing Transfers in Projects


Using the project management in the Data Transfer Workbench, you can clean and extract the transfer data, map it to the target structures, create a data transfer file in SAP format, and load the data into your SAP System.

Prerequisites
You know the data structures to transfer and the target structures. You have identified the programs, function modules, and BAPIs provided by SAP or you have developed and registered your own (see Developing Your Own Programs, Function Modules, and BAPIs and Registering Your Own Programs, Function Modules, and BAPIs).

Procedure
A data transfer project consists of the following objects: Subprojects Run definitions Tasks These objects are displayed in a hierarchy in the project management of the Data Transfer Workbench. The left frame contains the hierarchy of the project elements; the right frame contains the details of the selected object. You can change the size of the frames by dragging the borders with the mouse. You can create, change, display, copy, and delete projects, sub-projects, runs, and tasks. You can also transport whole projects into other systems. To create a complete project, choose Create Projects A project is used to group business objects together for transfer. For each business object type to be transferred, you have to create at least one sub-project and at least one run definition and one task : Proceed as follows: 1. On the Data Transfer Workbench initial screen, choose Create Project . 2. Enter a name and a description. Create Subprojects You have created a project. The sub-project is used to divide a project up. Precisely one business object type is assigned to each sub-project and this business object type is transferred in this sub-project. You can create several sub-projects for the same business object type within one project (for example, sub-projects document data transfer from plants 1, 2 and 3). Proceed as follows: 1. Choose Create Subproject. 2. Enter the subproject and a description. 3. Specify an object type. Create Run Definitions You have created a subproject. In the run definition, you specify how the data of a sub-project is to be transferred, by creating tasks and specifying the files involved. You can create more than one run definition for each subproject. Depending on the type, different methods can be used in the respective runs. You can transfer the data in parallel by creating several run definitions with different file names in one sub-project and then starting runs in parallel. Proceed as follows: 1. Choose Create Run Definition. 2. Enter a run definition and a description. Create a Task You have created a run definition. You can use a task to specify which program is to be executed and with which attributes. You have to select one task type (extract, map, load) for each object type you select. Program types are assigned to each task type (BAPI, function module, batch input...). This specifies how the task is executed. Object type-specific programs must be registered for data transfer beforehand. Programs that are not intended for a specific object type do not have to be registered. For certain object types, SAP already provides registered standard programs in the Data Transfer Workbench. You have to register all other programs that you want to use for data transfer (see Registering Your Own Programs, Function Modules, and BAPIs). Tools Data Transfer Workbench (transaction SXDA) and then follow these steps in the order specified:

PUBLIC 2013 SAP AG or an SAP affiliate company. All rights reserved.

Page 16 of 21

Task type EXT

Program Type FUNC REPO

Registration required? X X X X X X

Description Extracts the external data using a function module Extracts the external data using a report Cleans the data using a function module. Cleans the data using a report. Maps the data using a function module. Maps the data using a report. Converts the data using the DMC Workbench

PUR

FUNC REPO

MAP

FUNC REPO DMCW

CHK

FUNC REPO SYNT

X X

Checks the data using a function module. Checks the data using a report. Checks that data is in SAP format

LOA

BAPI BINP DINP FUNC REPO IDOC

X X X X X X X X X X

Loads the data using BAPI Loads the data using Batch Input Loads the data using Direct Input Loads the data using a function module Loads the data using a report

AUD

FUNC REPO

Checks the loaded data using a function module Checks the loaded data using a report Miscellaneous functions using a function module. Miscellaneous functions using a report. Splits a file in fixed, predefined target files

MSC

FUNC REPO

SPL Proceed as follows:

FINO

1. Choose Create Task . 2. Enter a task and a description, and choose the task type and program type. Use the input help (F4 )and the field help (F1). Depending on the program type (BAPI, DINP, BINP, ...), you can enter attributes that control the execution of this task. BAPI/IDoc For more information, see Data Transfer Techniques. Define the following attributes: Method Name of the BAPI from the BOR Package Size Number of objects forwarded in an LUW to the BAPI. The packet size affects the performance of the transfer. The bigger the packets, the less load placed on the database but the bigger the rollback area required on the database. Maximum Number of Errors If the threshold value for the number of objects not posted by BAPI is exceeded when a task is executed, the task is terminated. Parallel Loading in Server Group Sequential Loading Deletion Indicator: Delete files after run? Deletion indicator set After the input files have been completely read in and all the objects have been passed to the BAPI, the files are deleted. Deletion indicator not set After the input file has been completely read in and all the objects have been passed to the BAPI, the input file remains. When the run is continued, this input file is used again. If an error file is created, it is not used further.

Caution
Always set the deletion indicator when you are working in a production SAP system. Otherwise the objects may be transferred several times to your productive system when a run is restarted. You do not have to set the deletion indicator in a test system. You can store objects that are not transferred as follows: In Error Files If errors do occur, the task is assigned status 2. This means that the task is executed again when the run is continued. As an IDoc in the SAP system (see Status Monitor for ALE Messages) If errors do occur, the task is assigned status 3. If objects that could not be transferred are stored in the database, you can process them manually (see Status Monitor for ALE Messages). You then have to end the task. When the run is continued, the subsequent task is executed. Input Files Type and name of input files Type and name of error files Batch Input (BINP) For more information, see Data Transfer Techniques. Define the following attributes: Report

PUBLIC 2013 SAP AG or an SAP affiliate company. All rights reserved.

Page 17 of 21

Name of a program registered for this program type for generating batch input sessions. Variant When scheduling a run, the program is started with this variant in the background. Direct Input (DINP) For more information, see Data Transfer Techniques. Defining attributes Report Name of a registered program for this program type Variant When scheduling a run, the program is started with this variant in the background. You can only specify a variant with programs that are started directly. Report (REPO) Defining attributes Report Name of a registered program for this program type Variant When scheduling a run, the program is started with this variant in the background. Function Module (FUNC) You can select the following attributes: Function Module Name of a registered function module for this program type Input and Output Files These file names are passed to the function module. Syntax Check (SYNT) Define the following attributes: Program type of load program Program to load data File type of file to check Name of file to check Predefine Target Files (FINO) Define the following attributes: Program type of load program Program to load data File type and name of source file Type and name of target files Copy Project Elements You can reuse all the elements belonging to a data transfer project - from project objects, subproject objects, and run objects through to task objects. You can react quickly to changes and develop new solutions from elements belonging to earlier migration projects. To do this, proceed as follows: 1. Select a project, subproject, run, or task and then choose the copy icon. 2. Depending on the element you selected, you have to select the relevant target for the project, sub-project, or run using the input help or enter a destination for the task. 3. Choose Enter. Your element will be copied and will appear in the hierarchy. Change or Delete Project Elements You can change or delete the attributes of projects, sub-projects, run definitions, and tasks, provided that you have not yet started a run and no log exists. Once you have executed a run, you can only change the description. If you delete an element, any dependent elements are also deleted. You cannot delete elements if a run has not ended. Exporting Projects into Other Systems You can export projects, including all the dependent objects, from a source system into other systems and use them there. In the source system: 1. Select a project that you want to export. 2. Choose Project Export . 3. In the dialog box, choose a logical system (target system), file type, and file name. 4. Choose Enter. Your project is exported into a file on the application server. In the target system: 1. Select the highest level node. 2. Choose Import Project . 3. In the dialog box, choose the file type and file name. 4. Choose Enter. Your project will be imported from the file and will appear in the hierarchy. Transporting Projects You can also transport projects into other systems using the SAP transport functions. Note that the file names specified in the tasks are not transported because the paths usually changed when you switch systems.

Result
PUBLIC 2013 SAP AG or an SAP affiliate company. All rights reserved. Page 18 of 21

You have created a completely executable project. You can now execute data transfer in runs.

Executing Data Transfers in Runs


The actual data transfer from a file is carried out in a run. When the run is started, all the tasks of the run definition are carried out in sequence when the associated programs are called. You can also use the CCMS tools for monitoring the transfer.

Prerequisites
You have created an executable project.

Procedure
Test your project under realistic conditions in a test system, and assess hardware requirements, performance, memory requirements, and database settings. Only execute the data transfer once testing has been successful. You can execute any number of runs for one run definition. A run has a status and an application log. You can continue a run that was not completed. Executing a Run and Checking the Status When a run is started, all the tasks are executed in sequence. Start or schedule run To start a run, position the cursor on the required run definition and select Start Run. After running a task of program type REPO, BINP, or DINP, you must assign the status yourself. All other tasks assign their status automatically and are therefore also executed automatically in sequence, provided no errors occur. The runs stops if an error occurs. To process a run in the background, select Schedule Run. You have to specify a job name and choose a server name. You then have to choose a start date. Background processing is only useful if all the tasks of the run definition can run in the background. Check Status Status information is provided for each run definition started. Task cancelled, Task ended without errors, Task ended with errors, Task ended with errors, no restart, and Task ended manually . For more information, see the F1 help for the Status field. 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. Evaluate Logs A log is generated for each run started. Choose Display Log. All the actions of the project run are contained in the log. Each task executed in the run can generate messages in this log. The log of the project run is also in the application log. You can go directly to error processing from the log display by double-clicking on an error entry. Reprocessing Runs You can reprocess unsuccessful runs as follows: Continue Run To continue an incomplete run, correct the errors using the log, position the cursor on the run ID (for example, 003), and choose Continue Run. Depending on the status of the run, either the current task is restarted (status 2) or the subsequent task is started (status 3). Cancel Run If a run cannot be completed, you can terminate it by choosing Cancel Run. End Task You can set a task that has not been completed to completed by choosing End Task . When the run is continued, this task is skipped. Delete Run You can delete runs that have ended or were canceled by choosing the deletion icon.

Result
You have executed a run and, if it was completed successfully, you have transferred data to your SAP system. You can check this data in the SAP system with a function module or a report.

Data Transfer Techniques


To load data into your SAP System, you can use the standard techniques BAPIs, batch input or direct input : BAPIs as interfaces

PUBLIC 2013 SAP AG or an SAP affiliate company. All rights reserved.

Page 19 of 21

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 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. When using BAPIs as interfaces to the SAP System, the Workbench uses the same technology as used with permanent data transfer via ALE between SAP Systems or between SAP Systems and non-SAP systems. The data to be loaded must be in IDoc format (see Creating Example Files and Analyzing Structures). The IDoc numbers in the file must be unique. When the task is started, the IDocs from the specified input files are read and transferred to the BAPI. The following prerequisites must be satisfied: If parallel loading is used, a separate process is started on one of the application servers in the server group for each input file.

Note
If more than one application server is assigned to the server group, you have to make sure that the files can be accessed with the specified path from each of these servers. If you load the data sequentially, the input files are edited in sequence in the same process. If errors occur during loading (and the BAPI can therefore not process certain objects), the corresponding error message is recorded in the log of the run. If you store these objects as IDocs in the SAP System, you need to transfer the Idocs to the application again after the cause of the error has been removed. You can then terminate the task manually and continue the run with the subsequent task. If you write the objects with errors to files, you can continue the run after the cause of the error has been removed. The input files are then overwritten by the error files and the system reads from these new input files.

Caution
This means that the original input files are deleted if the run is continued, even if you did not choose the Delete input files after processing option. IDoc Loading using the program type IDoc is essentially the same as loading using BAPIs. The only difference is that ALE inbound processing and the Idoc type are not generated from a BAPI but instead have to be programmed by the relevant application itself. Batch input Batch input is a standard technique for transferring large volumes of data into the SAP System. The transaction flow is simulated and the data is transferred as if it were entered online. The advantage of this procedure is that all the transaction checks are performed, which guarantees data consistency. 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 SAP System. The data transfer program creates a batch input session that contains all the relevant data. 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: In the foreground In background processing During processing, with error display 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. Direct Input With direct input, data from the data transfer file undergoes the same checks as with the online transaction and is then transferred directly into the SAP System. The database is updated directly with the transferred data. For more information, see the relevant program documentation. There are two types of direct input programs: Direct input programs supported by transaction BMV0. There are two ways to trigger direct input: Start the program directly: Note that the system does not generate error logs and that it is not possible to restart the system if an error occurs. This is only appropriate for test purposes. Direct input in the background (transaction BMV0): In this case, you can restart processing if the program terminates or logical errors occur (material missing, for example). The ability to restart the system ensures that data cannot be posted twice to the database, as the program can be reset to where it terminated. Using the trace you can correct any errors that occurred. Direct input also has the advantage that it places little load on the system.

Note
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. Direct input programs that are not supported by transaction BMV0. Theses programs always provide error handling. Maintaining Attributes Defining attributes Define the following attributes, using the F4 input help and F1 field help: Report Name of a registered program for this program type variant You can only specify a variant with programs that are started directly.

PUBLIC 2013 SAP AG or an SAP affiliate company. All rights reserved.

Page 20 of 21

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 the Direct Input Monitor is interactive and runs with tasks of this kind cannot be started in the background.

Batch Input
Note
The Data Transfer Workbench offers you other techniques for data transfer in addition to batch input. For more information, see Data Transfer Techniques. Batch input is a standard technique for transferring large volumes of data into the SAP System. The transaction flow is simulated and the data is transferred as if it were entered online. The advantage of this procedure is that all the transaction checks are performed, which guarantees data consistency. The batch input process is divided into two phases: 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 SAP System. 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: In the foreground In background processing During processing, with error display 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 about batch input, see Batch Input Folders.

PUBLIC 2013 SAP AG or an SAP affiliate company. All rights reserved.

Page 21 of 21