LSMW Legacy System Migration Workbench

Legacy System Migration Workbench
1 2 3 4 5

PrepareMe TellMe ShowMe LetMe HelpMe

LSM Workbench
1 2 3 4 5

PrepareMe TellMe ShowMe LetMe HelpMe

What is Data migration? • In an SAP R/3 implementation the data from legacy system (non SAP R/3) needs to be transferred to the SAP system • Periodic data transfer between R/3 and other system (interfacing) is also required • Both of the above form a part of data migration .

To start with Data Migration first configuration should be fully completed Data migration is about 20% to 40% of the total implementation expenses.Significance of data migration • Data migration comes in the end of R/3 implementation. • • .

Data migration tools The tools for data migration are:• BDC (Batch Data Communication) • LSMW (Legacy System Migration Workbench) .

No such limit in LSMW. While BDC basically uses batch input sessions and CALL TRANSACTION method.Difference between BDC & LSMW • LSMW offers different technique for migrating data: Direct input. BAPI. Idoc. • Limit on number of records which can be uploaded in one session of BDC (999 records). • LSMW is more to do with configuration while BDC involves programming. . Batch input recording.

LSM Workbench 1 2 3 4 5 PrepareMe TellMe ShowMe LetMe HelpMe .

IDocs.Non-SAP systems ("Legacy Systems") to R/3 .Direct Input . • • .Batch Input .BAPI’s . The tool supports conversion of data The data can be imported into the R/3 system via .Once or Periodically.What is LSMW? • The LSM Workbench is an R/3-based tool that supports you when transferring data from .

LSMW The LSM Workbench is a tool that supports data transfer from non-SAP systems to R/3.Convert data (from source format to target format) .Import data (into the database of the R/3 application) .Import data (legacy data in spreadsheet tables and/or sequential files) . The main functions of the LSM Workbench are: .

. – Existing knowledge and coding should be used. – The developed ”mapping" and rules should be reusable and thus be used repeatedly in projects. No collection of individual programs on different platforms. – The quality and consistence of the data imported into R/3 should be more important than speed and performance of data migration.Principles of LSM Workbench • Basic Principles of LSM workbench:– Most of the functions should reside in R/3.

depends on the business object as well as on the availability of standard input programs Data consistency due to standard import techniques: Batch input Direct input BAPIs (Business Application Programming Interfaces) IDocs (Intermediate Documents) Structured way of working.Features of LSMW • Features:Integrated in R/3 and thus independent of individual platforms The import technique to be used in an individual case. because you have to finish every step before starting the next step .

Graphical representation .

via "Move" or according to a rule).Pre-requisites for LSMW • • Make sure that SAP customizing is finished. Map the fields in advance in written form: Assign the source fields to the target fields. Run the relevant transaction in the SAP system manually with test data from the legacy system and see which fields must be filled.g. In such a case. Determine the form in which non-SAP data will be transferred into the SAP system (e. one should better assign a fixed value or establish an optional field for data transfer. • • . There may be required fields that do not correspond to data fields in the legacy system.

logical interface for functional/end user based on the business processes involved. IDOC’s Advantages: Fast to load.Import methods… Preferred methods of input are described in order of preference: 1. easy processing. low programming for standard IDOC’s Disadvantages: Good knowledge of IDOC processing required. Disadvantages: Not always complete with all input fields of a transaction . BAPI’s Advantages: Fast to load. easy processing. time consuming if changes have to be made to a created IDOC 2.

Disadvantages: No enjoy transactions. difference in foreground and background processing may occur. easy reprocessing. all fields are available. . to use new screens or tabs a new recording has to be created. Batch Input Advantages: Easy modifiable. not always complete with all input fields of a transaction. Fast to load.Import Methods… 3. not easily usable for enjoy transactions. easy processing. Standard/Direct Input Advantages: Well tested method. dependant on user settings. Disadvantages: Comparatively slow. 4.

LSM Workbench 1 2 3 4 5 PrepareMe TellMe ShowMe LetMe HelpMe .

It starts in the start-up screen of LSMW transaction and ends with a screen on which the results of the conversion are displayed If you want to create or change objects. click Change in the corresponding processing step. To activate this mode. make sure that you are working in change mode.Getting Started Here is an example showing the way to use the conversion tool LSMW in SAP. Only this mode provides all functions required for changing objects .

.Enter transaction LSMW Enter the transaction code (LSMW) or add this transaction to your favourites (right-click with your mouse on the Favourites map in the start menu and choose Insert transaction. it is not available in the standard SAP menu. since LSMW is an additional transaction. type lsmw and press enter).Step 1 .

Alternatively you can select from an existing project • Project: An ID with a maximum of 10 characters to name your data transfer project.Step 2 – project. corresponding subprojects and objects via Edit -> Create new entry. for every legacy system • Subproject: An ID with a maximum of 10 characters that is used as further structuring attribute • Object: An ID with a maximum of 10 characters to name the business object .g. subproject. you may create a project e. you can create a new project. objects At the initial screen. If you want to transfer data from several legacy systems.

. . send it and save it in various file formats. . .‘Project Documentation’ displays any documentation written for the individual pop-ups and processing steps.‘My Objects’ displays a list of all objects you created personally . You can print the project documentation out. .Step2 contd.Select ‘Documentation’ to enter your notes.At the initial screen.‘All Project Objects’ displays all objects of the selected project as tree structure. ‘All Objects’ provides a list of all projects created already. a popup is displayed in which you can write down your personal documentation. After clicking..

By clicking the button create a new object for the selected project and subproject with the name entered in the object field is created. By positioning the cursor on an entry and clicking on the button documentation.Initial Screen By clicking the button execute or pressing the F8 key on your keyboard you go to the object. you can add change or delete comments. . you selected.

list of existing projects Project Subproject Object In the initial screen. you can display the administration functions via the menu path Goto Administration. It enables you to create. By double-clicking on an entry you can branch to the entry display. process. copy or rename projects. display.Administration . objects and reusable rules. subprojects. delete. Here you can find a list of all existing projects. .

Step 3 – Execute Once the project and subproject along with the object are determined we execute to find the list of steps to be performed for data transfer .

Process steps .

Process steps • • • • The number of process steps is dynamic and shall depend on factors like input method By clicking the ‘User menu’ button one can select – deselect the Process steps To proceed through the processing steps one needs to start from the first one and execute each of them A step can be skipped by selecting the next available processing steps’ radio button .

. If Batch input recording is selected one can enter further recordings by clicking at the arrow In the method to input data from a BAPI.Maintain object attributes Choose if the data transfer is once or periodic Choose method for input of data. one needs to select the Business Object and the corresponding method.

field mapping. Pressing button ‘Main steps’ automatically activates all processing steps mandatory for a data conversion. This action is stored with a reference to the user and the date. . Information includes object information. structure relations. source fields. Double click = Display or Double click = Change: Here. target fields. you can determine whether display mode or change mode is selected by double clicking. target structures. You can reset the action log via the menu path Extras -> Reset Action Log. source structures. Action log: Displays a detailed overview for all processing steps already carried out.Application Toolbar in Process steps User Menu: Here you can make an individual selection from the displayed processing steps. Object overview: Displays all object information for the selected object. Numbers On or Off: You can activate or deactivate the numbering of the individual processing steps.

.Maintain Source structures In the step ‘Maintain Source Structures’ you define the structures of the object with name. You can now define. All these functions are available via pushbuttons. since only one flat target structure per recording is available. description and the hierarchical relationships: Click on Change button. reassign or delete structures. When you define more than one structure. you may only define one structure per recording. change. a popup is displayed querying the relations between the structures: equal/subordinate? Note: For migration objects created via transaction recording.

Maintain source fields In the step ‘Maintain Source Fields’. . fields are created and maintained for the source structure defined in the preceding step Use source fieldnames with the same names as the target fieldnames as much as possible. because it allows you to use the ‘auto-field mapping’ function in step 5 ‘Maintain field mapping and conversion rules’.

Maintain Source Fields in Table Form – Clicking on the ‘Table Maintenance’ button displays the fields in a tabular format. . If you select this indicator. the corresponding field is made available as selection parameter when reading or converting data.Maintain source fields Different possible ways of defining and maintaining the source fields: Make sure that you are in change mode and the cursor is positioned on a source structure or an existing source field 1. field length and field type During data read.56) ‘Selection Parameter’ can be set during Read/Convert data. 2.By clicking on the button ‘Create source field’ you can specify the field name. you can specify whether date values are converted into the internal date format (YYYYMMDD) and amount fields are converted into the calculation format (1234. Create Individual source fields . field label.

Source fields can be copied from a data file which should be stored on the PC in the form of text separated by tabs and contain the fields in the first line.Copy from Another Object – Source field can be copied from source structure of another object . .Upload (Text separated with Tabs) – The source field description is stored in a text file the columns of which are separated by tabs .Maintain source structure… contd Different possible ways of defining and maintaining the source fields: • 3.Copy from Data Repository – Source field can be copied from a structure in SAP Data Repository . Copy Source Fields from Other Sources : By selecting ‘Copy Source Fields’ displays the following options: .From Data File (Field Name in 1 Line) .

you can use Check to check the structural relationships for errors . remove the existing relation first. Clicking create Relationship button opens a window that displays the existing source structures for selection  If you want to change the relation.Maintain structure relations  In the step ‘Maintain Structure Relations’. The possible target structures are defined during the selection of the object type and the import technique  To define structural relationships. the structural relationships between source and target structures are defined. In addition. position the cursor on the field target structures.

will be displayed.) .Field description . which you selected in the previous step.Rule type (fixed value.Assigned source fields (if any) .Coding .Maintain Field mapping & conversion rules • In the step ‘Maintain Field Mapping and Conversion Rules’. translation etc. • For each target field the following information is displayed: . you assign source fields to target fields and define how the field contents will be converted • All fields of target structure.

Maintain Field mapping & conversion rules Layout determination  The layout of the ‘Maintain field mapping’ screen can be determined. i. we can decide whether the ‘Global data’.e. ‘Technical fields’ should be displayed .

You can assign the fields by double-clicking on them as well . position the cursor on a target field in the tree structure and select Assign source field. This displays a list of all available source fields for selection.Maintain Field mapping & conversion rules  To assign a source field.

you can select various standard techniques via pushbutton: The target field is assigned coding carrying out field contents conversion using a translation table This deletes the coding assigned to the target field. you define the conversion rules. In addition. The target field is assigned a fixed value The data is transferred using ABAP command ‘Move’ A ‘fixed value object’ (variable) named FV_<fixed value> is assigned to the target field. However. User-Defined Routines’. .Maintain Field mapping & conversion rules  After assigning the source fields. The default rule is ‘Move’. This fixed value object is filled with an actual value in step ‘Maintain Fixed Values. Translations. source fields assigned to the target fields are removed as well.

after clicking once on a target field (in blue). a syntax check is performed for the conversion program. the source field is deleted from the target field By clicking this button.Maintain field mapping & conversion rules By clicking this button. generated from the field mapping These 3 buttons. There are possibilities to show or hide several aspects of the field mapping By clicking this button. by choosing one the standard rule ‘move’ is used to link the 2 fields By clicking this button. after clicking once on a target field (in blue). which are available for every target field. display the help function (‘I’). LSMW displays the list of available source fields. the display of this step can be changed. the possible entries (?) and the last one displays the documentation in LSMW .

type flag for lowercase/uppercase and value in addition to the name of the field. Translation: Here you can enter information on the source field and the target field. If you are creating a new translation you have to save data first before you can change it User Defined Routines: This routine can be re-used in other objects of the project.Maintain Fixed values. which are defined at project level. Translations. It opens up an editor wherein you can enter your ABAP code . so they are the same for all objects Fixed value: Here you can specify the length. translations… In the step ‘Maintain Fixed Values. you can process the reusable rules of a project. The system adds in ‘ur_’ to the name that you suggest to use for this routine. User-Defined Routines’.

Specify File In the step ‘Specify Files’. Select Add entry. Select Add entry. File for Converted data: Here.lsmw.read’.Process Step. the file name is entered with file extension ’. A popup is displayed. you describe all files to be used If your legacy data is on the PC: In change mode.conv’. A popup is displayed. This file will contain all your converted data after applying the conversion rules if any. Specify file path. the file name is entered with file extension ’. position the cursor on the line ‘Legacy data On the PC (Front-end)’. .lsmw. file name and description and other properties If your legacy data is on the R/3 server: In change mode. Specify file path. file name and description and other properties File for Imported data: Here. position the cursor on the line ‘ Legacy data On the R/3 server (application server)’.

. If you click on the Assign File button.Process Step – Assign File In the step ‘Assign Files’. LSMW displays the list of available source files. the source file is deleted from the target structure. If you click on the Delete Assignment button. after clicking once on a target structure (in yellow). after clicking once on a target structure (in yellow). you can assign the file name in step 7 declared as source file to the target structure defined in step 2 .

because in that step the program stops after finishing the range. So for tests it is easier to read all data and convert only a certain range.Process step – read data In the step ’Read Data’. the whole file is being read. as linked to the target structures in . only the amount of transactions written is influenced. . the file specified in previous step is. Even though you can select a range of transaction numbers.

Process Step – Display read data

In the step ‘Display Read Data’, you can display the read data, choosing to show all read data or an interval as shown above. The data are shown as the source structures, in case more source structures are being used in one transaction, the hierarchy of the transaction is displayed by the use of a different colour legend. By clicking on one of the lines, you proceed to the field level of the line, where you can check the read data as shown below.

Process Step – Convert data

In the step ‘Convert Data’, works like the step ‘read data’, but uses the conversion program instead of the read program. You can define a range of transactions to be converted, at the end of this range the conversion program stops running. Note: It is recommended that when you load big amount of data in production, load the first 10 records so that you can check and change when necessary.

Process Step - Display converted data

In the step ‘Display Converted Data’, you can display the converted data, choosing to show all converted data or an interval as shown above. The data are shown as the target structures, in case more target structures are being used in one transaction, the hierarchy of the transaction is displayed by the use of a different colour legend. By clicking on one of the lines, you proceed to the field level of the line, where you can check the converted data as shown below.

depending on the import technique that you have chosen in step 1.Process Step After the step ‘Display Converted Data’ the exact content of the next steps may differ. The steps displayed by the program for the different import techniques are: Standard batch input or recording: Generate batch input session Run batch input session Standard direct input: Start direct input session BAPI or IDoc: Start IDoc creation          Start IDoc processing Create IDoc overview Start IDoc post-processing   .

LSM Workbench 1 2 3 4 5 PrepareMe TellMe ShowMe LetMe HelpMe .

No major conversions required 2. Analyzing the test data (in attached XLS file) select the appropriate upload method Develop simple LSMW object . .Practical LSM Workbench Exercise 1 Create LSMW object and upload Vendor Master data to SAP 1.

Analyzing the test data (in attached XLS file) select the appropriate upload method Develop simple LSMW object .Practical LSM Workbench Exercise 2 Create LSMW object and upload Purchase Requisition data to SAP 1. .No major conversions required 2.

Using Direct Input method .

Customer Master Method : 0000 Program Name: RFBIDE00 Program Type :B . • Specifications: Object : 0050 .Using Direct Input method • We now look at an example to change Customer master record using the direct input method.

subproject and object .Using Direct Input method • Step 1: Enter transaction LSMW • Step 2: Enter project.

Using Direct input method Step 3: Enter the descriptions for Project. Subproject and Object as prompted .

Using Direct Input method • Step 4: Click on execute. The process steps are displayed (the process steps displayed depend on the input method chosen) .

Using Direct Input method • Step 5 : Select the 1st Process Step “Maintain Object Attributes” and select “Execute” and select ‘Standard Batch/ Direct input’. Enter the data as shown .

Using Direct Input method • Step 6: Save and Click at Back • Step 7:Maintain Source Structure .

Using Direct Input method • Step 8 : Create source structure .XD02S .

. to specify the fields.Using Direct Input method • Step 9 : Maintain Source Fields Click at the table maintenance icon.

Using Direct Input method • Step 10: Maintain structure relations • Step 11: Execute. . structures for standard object ‘0050’ are displayed.

Using Direct Input method • Step 12: Place cursor at the target structure and click at create relationship icon .

.Using Direct Input method • Step 13 .Place cursor at the field ‘TCODE’ in ‘BNK00’ and click at ‘Rule’ Then choose ‘Constant’ and enter ‘XD02’.Maintain Field mapping and conversion rules .

BNKVV and all the other structures assigned ‘XD02S’ in source relation . The above is applicable for BNK00.Using Direct Input method • Step 14: Place cursor at the fields and click at the ‘Source Field’ icon to map with the respective field in the source.

FLAT_FILE .Using Direct input method • Step 15 : Specify Files Enlist files wherefrom legacy data would be extracted.

Using Direct input method • Step 16: Assign files The structure XD02S is correlated with the specified file. .

Using Direct input method • Step 17: Read data from legacy files. .

Using Direct input method • Step18: Display the read data .

Using Direct input method • Step 19: Create batch input session .

Using Direct input method • Step 20: Execute the batch input session .

Using Batch Input Method .

• In the following slides we observe the differences between the Sessions and the ‘Direct Input method’ for the same scenario – Change customer Master data. .Using Batch Input Method • The Sessions method provides more flexibility since user can record any transaction required.

Subproject and Object in transaction LSMW Step – ‘Maintain Objects attributes’. Enter the recording name if a recording already exists else create a new one by clicking at the icon ‘Recording overview’ Recording overview key .Using Batch Input Method • • Create Project. select ‘Batch input recording’.

Using Batch Input Method • Recording. Select at least one area of processing .. During the recording the system calls the transaction code XD02 and prompts you to complete the Change. .

Using Batch Input Method • Recording Default values .

.Replace the default values in the previous slide with Field names.Double click on each of the lines to effect the change.Using Batch Input Method • Process recording . .

Using Batch Input Method • Rest of the steps remain the same as the ‘Direct input method’ other than ‘ Maintain Field mapping and conversion rules’ .

Using Batch Input Method • Sessions method • Direct Input The fields specified in the recording are displayed Fields part of the structure available with Standard Object 0050 .

Using BAPI in LSM Workbench .

Basic IDoc Type: PORDCR02 .Business Object: BUS2012 .Method: CreateFromData • Details of Message Type and Basic IDoc Type: .Using BAPI in LSM Workbench • We now go through a step by step process of realizing LSMW through a BAPI • Details of BAPI used: .Message Type: PORDCR .

Using BAPI in LSM Workbench • Step 1 : Go to transaction LSMW • Step 2 : Enter project. subproject and object and click on Create .

Using BAPI in LSM Workbench Step 3: Enter the descriptions for Project. Subproject and Object as prompted .

Using BAPI in LSM Workbench Step 4: Now select Settings  IDoc Inbound Processing .

Using BAPI in LSM Workbench Step 5 :“IDoc Inbound Processing” screen appears. . Enter the required details as shown below: Step 6 :Click on “Activate IDoc Inbound Processing”.

Using BAPI in LSM Workbench • Step 7 : Click on “Yes” when prompted for “Activate IDoc Inbound?” • Step 8 : Hit on “Back” to return to the main screen .

Using BAPI in LSM Workbench • Step 9: Click on Continue (F8). Following Screen appears .

Using BAPI in LSM Workbench Step 10: Select the Step 1 “Maintain Object Attributes” and select “Execute” .

Using BAPI in LSM Workbench Step 11 : Select the radio button “Business Object Method” and enter the following details: Business Object: BUS2012 Method: CreateFromData .

Using BAPI in LSM Workbench Step 12: Save and click on BACK button. Following information message is displayed Step 13: Maintain Source Structure .

Using BAPI in LSM Workbench Step 14:Create source structure ‘HEADERDATA’ and a lower level structure ‘ITEMDATA’ Save and go back to main screen .

Using BAPI in LSM Workbench • Step 15 : Maintain source fields Enter the fields as shown below: .

Using BAPI in LSM Workbench Step 16:Maintain Structure Relations .

and click on CREATE Relationship. Following screen appears: .Select HEADERDATA and hit ENTER. Do the same for other structures .Select ‘E1PORDCR’ in previous fig.Using BAPI in LSM Workbench Maintain structure relations: .

Maintain field mapping as shown:- .Using BAPI in LSM Workbench • Step 17 :Maintain Field mapping and conversion rules.

Maintain the same structure of the test file as defined before .Using BAPI in LSM Workbench Step 18 : Specify File Provide the link for the test file.

Using BAPI in LSM Workbench
Step 19: Select ‘Assign Files’ & execute

Step 20: Read Data Step 21: Display read data

Using BAPI in LSM Workbench
Step 22: Return to main screen and select ‘Convert Data’ followed by ‘Display Convert Data’

Using BAPI in LSM Workbench
Step 23: Return to main screen and select “Start IDoc generation”

Using BAPI in LSM Workbench Step 24 : Process Idoc through the step ‘Start Idoc Processing’ on main screen .

Using BAPI in LSM Workbench Step 25: Click on ‘Create Idoc Overview’ on the main screen. Here the data record and status record of the Idoc can be viewed .

LSM Workbench 1 2 3 4 5 PrepareMe TellMe ShowMe LetMe HelpMe .

HelpMe Object Overview Complete overview of Data Migration object can be obtained from the Menu: Extras  Object Overview • Overview in List format • Overview in Table format .

HelpMe Object Overview cont… • Overview in List format .

HelpMe Object Overview cont… • Overview in Table format .

.HelpMe Settings for IDoc inbound processing This can be obtained from the initial LSMW screen Menu: Settings  Idoc Inbound Processing Specify the following: • File/tRFC port • Partner Type • Partner Number These can be maintained by clicking on the respective buttons on the right. Click on the Activate IDoc Inbound Processing button after entering all the details above.

HelpMe To transport data migration objects This can be done in 2 ways: • By generating a change request or • By import/export of a project from one system to another From the initial LSMW screen Menu: Extras  See screen print below .

double-click on the corresponding field to branch to the Change source field dialog box. Repeat the recording process. If they are missing.Help Me Problems Recording Fields cannot be seen in the field mapping after a recording has been created. Solutions Check to see whether the field names have been maintained correctly in the recording process. Confirm by choosing Continue. Fill in the corresponding fields. choose Maintain source fields. . From the list of steps. Check the names of the source fields.

record function. choose the transfer to be created after conversion. Error message during/after import See the object attributes to determine which import program was used.Help Me Problems Solutions The source file contains data in one In step Maintain field mapping and data record out of which to records are conversion rules. . and search for documentation and notes on this import method directly.

Sign up to vote on this title
UsefulNot useful