106
LSMW LSMW Legacy System Migration Legacy System Migration Workbench Workbench AB1007 – Conversion v1.0 AB1007 – Conversion v1.0

Step by Step LSMW Tutorial

Embed Size (px)

DESCRIPTION

Step by Step guide for Data Migration to SAP using LSMW. Also making sure you don't get it wrong in moving from your legacy system to SAP.

Citation preview

  • LSMW Legacy System Migration WorkbenchAB1007 Conversion v1.0

  • Legacy System Migration Workbench1PrepareMe2TellMe3ShowMe4LetMe5HelpMe

  • LSM Workbench1PrepareMe2TellMe3ShowMe4LetMe5HelpMe

  • 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

  • Significance of data migration Data migration comes in the end of R/3 implementation.

    To start with Data Migration first configuration should be fully completed

    Data migration is about 20% to 40% of the total implementation expenses.

  • Data migration toolsThe tools for data migration are:-

    BDC (Batch Data Communication)

    LSMW (Legacy System Migration Workbench)

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

    LSMW is more to do with configuration while BDC involves programming.

  • LSM Workbench1PrepareMe2TellMe3ShowMe4LetMe5HelpMe

  • What is LSMW?The LSM Workbench is an R/3-based tool that supports you when transferring data from - Non-SAP systems ("Legacy Systems") to R/3 - Once or Periodically.

    The tool supports conversion of data

    The data can be imported into the R/3 system via - Batch Input - Direct Input - BAPIs - IDocs.

  • LSMW The LSM Workbench is a tool that supports data transfer from non-SAP systems to R/3. The main functions of the LSM Workbench are:

    - Import data (legacy data in spreadsheet tables and/or sequential files)

    - Convert data (from source format to target format)

    - Import data (into the database of the R/3 application)

  • Principles of LSM WorkbenchBasic Principles of LSM workbench:-

    Most of the functions should reside in R/3. 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.

    Existing knowledge and coding should be used.

    The developed mapping" and rules should be reusable and thus be used repeatedly in projects.

  • Features of LSMW Features:-

    Integrated in R/3 and thus independent of individual platforms

    The import technique to be used in an individual case, 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, because you have to finish every step before starting the next step

  • Graphical representation

    SAP AG July 1999 *

    One or several files

    R/3 Standard

  • Pre-requisites for LSMWMake sure that SAP customizing is finished.

    Run the relevant transaction in the SAP system manually with test data from the legacy system and see which fields must be filled. There may be required fields that do not correspond to data fields in the legacy system. In such a case, one should better assign a fixed value or establish an optional field for data transfer.

    Map the fields in advance in written form: Assign the source fields to the target fields.

    Determine the form in which non-SAP data will be transferred into the SAP system (e.g. via "Move" or according to a rule).

  • Import methodsPreferred methods of input are described in order of preference:IDOCs

    Advantages: Fast to load, easy processing, low programming for standard IDOCsDisadvantages: Good knowledge of IDOC processing required, time consuming if changes have to be made to a created IDOC

    2. BAPIs

    Advantages: Fast to load, easy processing, logical interface for functional/end user based on the business processes involved.Disadvantages: Not always complete with all input fields of a transaction

  • Import Methods3. Standard/Direct Input

    Advantages: Well tested method, Fast to load, easy processing.Disadvantages: No enjoy transactions, not always complete with all input fields of a transaction.

    4. Batch Input

    Advantages: Easy modifiable, all fields are available, easy re-processing.Disadvantages: Comparatively slow, to use new screens or tabs a new recording has to be created, not easily usable for enjoy transactions, dependant on user settings, difference in foreground and background processing may occur.

  • LSM Workbench1PrepareMe2TellMe3ShowMe4LetMe5HelpMe

  • Getting Started Here is an example showing the way to use the conversion tool LSMW in SAP. 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, make sure that you are working in change mode. To activate this mode, click Change in the corresponding processing step. Only this mode provides all functions required for changing objects

  • Step 1 - Enter transaction LSMWEnter 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, type lsmw and press enter), since LSMW is an additional transaction, it is not available in the standard SAP menu.

  • Step 2 project, subproject, objectsAt the initial screen, you can create a new project, corresponding subprojects and objects via Edit -> Create new entry. Alternatively you can select from an existing project

    Project: An ID with a maximum of 10 characters to name your data transfer project. If you want to transfer data from several legacy systems, you may create a project e.g. 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

  • Step2 contd.. - At the initial screen, All Objects provides a list of all projects created already.

    - My Objects displays a list of all objects you created personally

    - All Project Objects displays all objects of the selected project as tree structure.

    - Project Documentation displays any documentation written for the individual pop-ups and processing steps. You can print the project documentation out, send it and save it in various file formats.

    - Select Documentation to enter your notes. After clicking, a popup is displayed in which you can write down your personal documentation.

  • By clicking the button execute or pressing the F8 key on your keyboard you go to the object, you selected.

    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, you can add change or delete comments.

    Initial Screen

  • Administration - list of existing projects In the initial screen, you can display the administration functions via the menu path Goto Administration. Here you can find a list of all existing projects.

    It enables you to create, process, display, delete, copy or rename projects, subprojects, objects and reusable rules.

    By double-clicking on an entry you can branch to the entry display.

    Project Subproject Object

  • 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

  • Maintain object attributes

    Choose if the data transfer is once or periodicChoose method for input of data.

    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, one needs to select the Business Object and the corresponding method.

  • Application Toolbar in Process steps

    User Menu: Here you can make an individual selection from the displayed processing steps. Pressing button Main steps automatically activates all processing steps mandatory for a data conversion.

    Numbers On or Off: You can activate or deactivate the numbering of the individual processing steps.

    Double click = Display or Double click = Change: Here, you can determine whether display mode or change mode is selected by double clicking.

    Object overview: Displays all object information for the selected object. Information includes object information, source structures, target structures, structure relations, source fields, target fields, field mapping.

    Action log: Displays a detailed overview for all processing steps already carried out. You can reset the action log via the menu path Extras -> Reset Action Log. This action is stored with a reference to the user and the date.

  • In the step Maintain Source Structures you define the structures of the object with name, description and the hierarchical relationships:

    Click on Change button. You can now define, change, reassign or delete structures. All these functions are available via pushbuttons.When you define more than one structure, a popup is displayed querying the relations between the structures: equal/subordinate?

    Note: For migration objects created via transaction recording, you may only define one structure per recording, since only one flat target structure per recording is available. Maintain Source structures

  • Maintain source fieldsIn 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 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

    Create Individual source fields - By clicking on the button Create source field you can specify the field name, field label, field length and field type

    During data read, you can specify whether date values are converted into the internal date format (YYYYMMDD) and amount fields are converted into the calculation format (1234.56)

    Selection Parameter can be set during Read/Convert data. If you select this indicator, the corresponding field is made available as selection parameter when reading or converting data.

    2. Maintain Source Fields in Table Form Clicking on the Table Maintenance button displays the fields in a tabular format.

  • Maintain source structure contd Different possible ways of defining and maintaining the source fields:

    3. Copy Source Fields from Other Sources : By selecting Copy Source Fields displays the following options:

    - Upload (Text separated with Tabs) The source field description is stored in a text file the columns of which are separated by tabs

    - Copy from Another Object Source field can be copied from source structure of another object

    - Copy from Data Repository Source field can be copied from a structure in SAP Data Repository

    - From Data File (Field Name in 1 Line) - 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.

  • Maintain structure relations In the step Maintain Structure Relations, the structural relationships between source and target structures are defined. The possible target structures are defined during the selection of the object type and the import technique

    To define structural relationships, position the cursor on the field target structures. Clicking create Relationship button opens a window that displays the existing source structures for selection

    If you want to change the relation, remove the existing relation first. In addition, you can use Check to check the structural relationships for errors

  • Maintain Field mapping & conversion rules In the step Maintain Field Mapping and Conversion Rules, you assign source fields to target fields and define how the field contents will be converted

    All fields of target structure, which you selected in the previous step, will be displayed.

    For each target field the following information is displayed: - Field description - Assigned source fields (if any) - Rule type (fixed value, translation etc.) - Coding

  • Maintain Field mapping & conversion rulesLayout determination

    The layout of the Maintain field mapping screen can be determined. i.e. we can decide whether the Global data, Technical fields should be displayed

  • Maintain Field mapping & conversion rules To assign a source field, 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. You can assign the fields by double-clicking on them as well

  • Maintain Field mapping & conversion rulesAfter assigning the source fields, you define the conversion rules. The default rule is Move. However, you can select various standard techniques via pushbutton:

    This deletes the coding assigned to the target field. In addition, source fields assigned to the target fields are removed as well.The target field is assigned a fixed valueThe data is transferred using ABAP command MoveA fixed value object (variable) named FV_ is assigned to the target field. This fixed value object is filled with an actual value in step Maintain Fixed Values, Translations, User-Defined Routines.The target field is assigned coding carrying out field contents conversion using a translation table

  • Maintain field mapping & conversion rules

    By clicking this button, after clicking once on a target field (in blue), LSMW displays the list of available source fields, 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), the source field is deleted from the target field By clicking this button, the display of this step can be changed. There are possibilities to show or hide several aspects of the field mapping

    By clicking this button, a syntax check is performed for the conversion program, generated from the field mapping

    These 3 buttons, which are available for every target field, display the help function (I), the possible entries (?) and the last one displays the documentation in LSMW

  • Maintain Fixed values, translationsIn the step Maintain Fixed Values, Translations, User-Defined Routines, you can process the reusable rules of a project, which are defined at project level, so they are the same for all objects

    Fixed value: Here you can specify the length, 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. The system adds in ur_ to the name that you suggest to use for this routine. It opens up an editor wherein you can enter your ABAP code

  • Process Step- Specify FileIn the step Specify Files, you describe all files to be used

    If your legacy data is on the PC: In change mode, position the cursor on the line Legacy data On the PC (Front-end). Select Add entry. A popup is displayed. Specify file path, file name and description and other properties

    If your legacy data is on the R/3 server: In change mode, position the cursor on the line Legacy data On the R/3 server (application server). Select Add entry. A popup is displayed. Specify file path, file name and description and other properties

    File for Imported data: Here, the file name is entered with file extension .lsmw.read.

    File for Converted data: Here, the file name is entered with file extension .lsmw.conv. This file will contain all your converted data after applying the conversion rules if any.

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

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

  • Process Step Display read dataIn 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 dataIn 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 dataIn 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.

  • Process StepAfter the step Display Converted Data the exact content of the next steps may differ, depending on the import technique that you have chosen in step 1. 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 processingCreate IDoc overviewStart IDoc post-processing

  • LSM Workbench1PrepareMe2TellMe3ShowMe4LetMe5HelpMe

  • Practical LSM WorkbenchExercise 1Create LSMW object and upload Vendor Master data to SAP

    Analyzing the test data (in attached XLS file) select the appropriate upload method

    Develop simple LSMW object - No major conversions required

    Sheet1

    Company CodePurch. organizAccount groupTitleNameSearch term 1/2CountryLanguageTelephoneRec. AccountCash mgmnt groupPayment termsOrder Currency

    000100010007M/SABC InternationalABCINEN922425556431000A10001USD

    Sheet2

    Sheet3

  • Practical LSM WorkbenchExercise 2Create LSMW object and upload Purchase Requisition data to SAP

    Analyzing the test data (in attached XLS file) select the appropriate upload method

    Develop simple LSMW object - No major conversions required

    Sheet1

    PR NumPR ItemMaterial numQuantityPlant

    100010T-F230102300

    100020T-F230112400

    100030T-F299121000

    100110T-F300101000

    100120T-F300112300

    100130T-F300122400

    100140T-F300132500

    100210T-F301101000

    100220T-F301112300

    100230T-F301122400

    100240T-F301132500

    Sheet2

    Sheet3

  • Using Direct Input method

  • Using Direct Input methodWe now look at an example to change Customer master record using the direct input method.

    Specifications: Object : 0050 - Customer Master Method : 0000 Program Name: RFBIDE00 Program Type :B

  • Using Direct Input methodStep 1: Enter transaction LSMW

    Step 2: Enter project, subproject and object

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

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

  • Using Direct Input methodStep 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 methodStep 6: Save and Click at Back

    Step 7:Maintain Source Structure

  • Using Direct Input methodStep 8 : Create source structure - XD02S

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

  • Using Direct Input methodStep 10: Maintain structure relations

    Step 11: Execute, structures for standard object 0050 are displayed.

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

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

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

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

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

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

  • Using Direct input methodStep18: Display the read data

  • Using Direct input methodStep 19: Create batch input session

  • Using Direct input methodStep 20: Execute the batch input session

  • Using Batch Input Method

  • Using Batch Input MethodThe Sessions method provides more flexibility since user can record any transaction required.

    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 MethodCreate Project, Subproject and Object in transaction LSMW

    Step Maintain Objects attributes, select Batch input recording. 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 MethodRecording.. During the recording the system calls the transaction code XD02 and prompts you to complete the Change.

    Select at least one area of processing .

  • Using Batch Input MethodRecordingDefault values

  • Using Batch Input MethodProcess recording - 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

    Rest of the steps remain the same as the Direct input method other than Maintain Field mapping and conversion rules

  • Using Batch Input MethodSessions methodDirect InputThe fields specified in the recording are displayed Fields part of the structure available with Standard Object 0050

  • Using BAPI in LSM Workbench

  • Using BAPI in LSM WorkbenchWe now go through a step by step process of realizing LSMW through a BAPI

    Details of BAPI used: - Business Object: BUS2012 - Method: CreateFromData

    Details of Message Type and Basic IDoc Type: - Message Type: PORDCR - Basic IDoc Type: PORDCR02

  • Using BAPI in LSM WorkbenchStep 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 WorkbenchStep 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 WorkbenchStep 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 WorkbenchStep 15 : Maintain source fields Enter the fields as shown below:

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

  • Using BAPI in LSM WorkbenchMaintain structure relations: - Select E1PORDCR in previous fig. and click on CREATE Relationship. Following screen appears:

    - Select HEADERDATA and hit ENTER. Do the same for other structures

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

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

  • 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 Workbench1PrepareMe2TellMe3ShowMe4LetMe5HelpMe

  • HelpMeObject Overview

    Complete overview of Data Migration object can be obtained from the Menu: Extras Object Overview

    Overview in List formatOverview in Table format

  • HelpMeObject Overview cont

    Overview in List format

  • HelpMeObject Overview cont

    Overview in Table format

  • HelpMeSettings for IDoc inbound processing

    This can be obtained from the initial LSMW screen Menu: Settings Idoc Inbound ProcessingSpecify the following:File/tRFC portPartner TypePartner 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 thedetails above.

  • HelpMeTo transport data migration objects

    This can be done in 2 ways:By generating a change request orBy import/export of a project from one system to another

    From the initial LSMW screen Menu: Extras See screen print below

  • Help Me

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

  • Help Me

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

    This In-house course was developed to meet the needs of SAP R/3 Consultants working at Capgemini. This course is designed to present a high level view of LSMW and to provide the Consultants with information about how to use this Functionality.

    Your comments at the conclusion of this training session are appreciated and will help us better tailor future courses to meet your training needs.