LSMW to Update Customer Master Records with Standard Object
Note! The screenprints in this article are from IDES Release 4.6. They may differ slightly in other versions.
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 Figure20.
Figure 20 LSMW Object with Standard SAP Object
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.
Step 2. Maintain Source Structures
Give a name and a description to the source structure (Figure8).
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.
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
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 Figure22.
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’ (Figure23) to enter value ‘XD02’ transaction code.
Get More Information about SAP ABAP Transaction Codes Used in Configuration of LSMW.
-- 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 6: Maintain fixed values, translations, user-defined routines
You 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 files
In 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 data
This 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 data
When 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
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).
Note! Browsing thru these 14 steps, you may get a feeling that this is a very lengthy and time-consuming activity. However, for the purposes of demonstration, I have made it detailed. Although it looks lengthy, actually it takes hardly few hours from start-to-finish! After playing around with few simple LSMW scripts, you will find it so easy to change and create more complex ones.