Wednesday, July 25, 2007

LSMW Step by Step

LSMW Step by Step

Demo Example 1

LSMW to Update Customer Master Records with Transaction RecordingCall Legacy System Migration Workbench by entering transaction code LSMW. Every conversion task is grouped together as Project / Subproject / Object structure. Create a Project called LSMW_DEMO and a Subproject as CUSTOMERS and Object as CUST_REC
as shown in Figure 1.

Figure 1 Conversion Task with Project, Subproject and Object

The main screen of LSMW provides wizard-like step-by-step tasks, as shown in Figure 2. To complete your data conversion, you need to execute these steps in sequence. Once a step is executed, the cursor is automatically positioned to the next step.

Note that these steps may look different depending upon your Personal menu settings. You could make step numbers visible by ‘Numbers on’ icon or hidden by ‘Numbers off’ icon. You can execute a step by double-clicking on the row. Toggle icon ‘Doubleclick=Display’ or ‘Doubleclick=Edit’, makes the step in ‘display’ mode or ‘change’ mode.

Figure 2 LSMW Wizard – initial screen

Step 1: Maintain Object attributesIn this example, you will be updating the customer master records with the help of recording a transaction (XD02). Choose radio button Batch Input Recording and click on the recording overview icon to record the R/3 transaction. Enter the Recording name as XD02_REC, the description as Customer Master Updates Recording, and the transaction code as XD02.

Figure 3 Object type ‘Transaction Recording’

The system calls the transaction code XD02 and prompts you to complete the ChangeCustomer transaction, as shown in Figure 4. Enter the key customer information (I entered customer number 1000, sales organization 1000, distribution channel 01, and division 00) and choose ‘Sales’ view within ‘Sales area data’. Make changes to these three fields (I entered, sales office 1010, sales group 110, and customer group 01) and save the transaction.

Figure 4 Transaction recording for Transaction Code ‘XD02’

Once the transaction is completed, R/3 records the flow of screens and fields and saves the information, as shown in Figure 5.


Figure 5 Transaction recording overview

Note that the fields are populated with default values. The values you entered when you recorded the transaction are set by default.

Note that if you have more fields in the recording than needed, you can remove them by clicking ‘Remove Screen field’ icon.

Observe that the transaction-recording process stores field names in a technical format. By pressing the F1 key on individual screen fields and then pressing the F9 key, the system displays technical names. You then can replace the technical names with descriptive names. Double-click on the field RF02D-KUNNR and enter the name as KUNNR and the description as Customer Account Number and remove the default value. (See Figure 6.)

Figure 6 Field attributes

Similarly, double-click on all other fields with default values and make appropriate changes. Once you have made changes, the recording overview screen looks like what you see in Figure 7.

Figure 7 Transaction Recording Overview – with screen field attributes

Save your changes. When you go back to the initial screen, you will see that the initial screen steps have changed. Since you want to import data via the BDC method, the Direct Input and IDoc-related steps are hidden, as they are not relevant.

Step 2. Maintain Source Structures
Give a name and a description to the source structure (Figure 8).

Figure 8 Source Structure

Step 3. Maintain Source Fields

In this step, you need to list what fields are present in the source structure. The easiest way is to click on ‘Table Maintenance’ icon to enter Fieldname, Type and Length for each field as shown in Figure 9. Figure 9 Source fields of source Structure

Note that your input file will have four fields as key fields and you need to update three fields in the system.

Step 4: Maintain Structure Relations

Execute a step to ‘Maintain Structure Relations’. (See Figure 10.) Since, there is only one Source and Target Structure, the relationship is defaulted automatically.

Figure 10 Structure Relation

Step 5: Maintain field mapping and conversion rules

Field RF02D-D0310 represents that you chose ‘Sales view’ for the customer Master screen accordingly its value should be set to X. Keep your cursor on field RF02D-D0310 and click on Constant rule icon to choose the constant value of ‘X’.

If your source file already has the field value, you choose rule ‘Source Field’.

Keep cursor on field ‘KUNNR’ and click on ‘Assign Source field’ icon to choose source field CUSTOMER from structure XD02S as shown in Figure 11.

Figure 11 Assign source fields

Similarly, assign ‘Source Field’ rules to the remaining fields.

Once all the fields are mapped, you should have an overview screen as shown in Figure 12.



Step 6: Maintain fixed values, translations, user-defined routinesYou can also maintain re-usable translations and user-defined routines, which can be used across conversion tasks. In this case, that step is not required.

Step 7: Specify filesIn this step, we define how the layout of the input file is. The input file is a [Tab] delimited with the first row as field names. It is present on my PC (local drive) as C:\XD02.txt. (See Figure 13.)

Figure 13 File attributes

Create an Excel file (Figure 14) with your data and save it as a Tab-delimited text file on your local drive (C:\) and name it XD02.txt.


Figure 14 Source data in Excel file (saved as Tab delimited file)

Step 8: Assign files

Execute step ‘Assign Files’ (Figure 15) and the system automatically defaults the filename to the source structure.

Figure 15 Assign file to Source Structure

Step 9: Read data

In this step, LSMW reads the data (Figure 16) from the source file (from your PC’s local drive). You have the option to read only selected rows and convert data values to Internal format.

Figure 16 Read Data

Step 10: Display read data

This step (Figure 17) is optional. If required, you can review the field contents for the rows of data read.

Figure 17 Display Read Data

Step 11: Convert dataThis is the step that actually converts the source data (in source format) to a target format. Based on the conversion rules defined, source fields are mapped to target fields.

Step 12: Display Converted dataAgain this is an optional step to view how the source data is converted to internal SAP format (Figure 18).

Figure 18 Display Converted Data

Step 13: Create batch input sessionOnce the source data is converted in an internal format, you can create a batch session to process updates (Figure 19).


Figure 19 Create Batch Input Session
Step 14: Run Batch Input Session
You can execute the BDC session by Run Batch input session. Executing a batch input session is a standard SM35 transaction for managing BDC sessions. Once you have successfully executed the batch input session, the customer master records are updated in the system. You can confirm this by viewing the customer master records (XD03).

Demo Example 2

LSMW to Update Customer Master Records with Standard Object
As an alternative to using ‘Transaction Recording’, you could also use a standard SAP object to update Customer Master Records. Business Object ‘0050’ is already pre-defined in the system with standard Batch Input Interface Program ‘RFBIDE00’.
Create an Object CUST_OBJ within Project as LSMW_DEMO and Subproject as CUSTOMERS as shown in Figure 20.

Figure 20 LSMW Object with Standard SAP Object

Note! For the Demo example 2, I will list only those steps that are different from the first demo example.

Step 1: Maintain Object attributes
You will be updating the customer master records with the help of Standard Batch Input; therefore, choose radio-button Standard Batch/Direct Input as shown in Figure 21. Enter Object ‘0050’ for Customer Master records and default method ‘0000’ and click on Save.

Figure 21 Standard Batch/Direct Input Object Attributes

Step 4: Maintain Structure Relations

Sales view of Customer Master is stored in table KNVV. Accordingly, you need to update structure BKNVV. However, in addition, the Standard Object ‘0050’ also requires updates to BGR00, BKN00 and BKNA1 structures. (If you do not maintain Structure relations for mandatory entries, you might get a message such as ‘Target structure BKNA1 needs a relation to a source structure’.)

Even though you don’t want to update any fields in these structures, you need to create a relationship with source structures. In all, you need to create relationship for four target structures.

Create relationship between source structures XD02S with these target structures with icon ‘Create Relationship’ Keep Cursor on these four target structures and click on icon ‘Create Relation’ and structure relations are maintained as shown in Figure 22


Figure 22 Structure Relation

Step 5: Maintain field mapping and conversion rules

Keep your cursor on ‘TCODE’ field and click on ‘Insert Rule’ icon


Figure 23 LSMW Conversion Rules

Choose radio button ‘Constant’ (Figure 23) to enter value ‘XD02’ transaction code.

Keep your cursor on field ‘KUNNR’ and click on ‘Assign source field’ icon

Choose source field ‘Customer’ from source structure ‘XD02S’. (See Figure 24.)

Figure 24 Assign Source fields--

Similarly, choose source fields for Sales Organization, Distribution Channel, and Division. (See Figure 25.)


Figure 25 Field Mapping and Conversion Rules

-- Scroll down to structure BKNVV fields and assign source fields to three fields Sales Office, Sales Group, and Customer Group (Figure 26).


Figure 26 Field Mapping and Conversion Rules

Save and go back to main screen.

Step 12: Display Converted dataWhen you convert data, LSMW automatically converts into the appropriate structure layouts, as required by Standard program (RFBIDE00). (See Figure 27).


Figure 27 Converted data into multiple structures
Note that if you had only one record in source file, the converted file has four records.
Earlier, creating this input file, so that the standard interface program can read it, was a big nightmare, the primary reason being that it could have multiple record layouts. Even for a simple conversion with one input record, you would have to create this complex file with many record layouts. The advantage of LSMW is that it prepares these multi-layout files automatically.
Step 13: Create batch input session
Once source data is converted in internal format, you can create a BDC session to process the updates (Figures 28 and 29).

Figure 28 Create BDC Session

Figure 29 BDC Session ‘CUST_OBJ’ created
Summary
Once BDC session is processed successfully, SAP updates the customer master records with relevant changes. Review these specific customers (transaction code XD03) and confirm that the changes are correctly reflected in the master records.

No comments: