SAP R/3 форум ABAP консультантов
Russian ABAP Developer's Club

Home - FAQ - Search - Memberlist - Usergroups - Profile - Log in to check your private messages - Register - Log in - English
Blogs - Weblogs News

Step-by-Step Guide for Using LSMW to Update Customer Master



 
Post new topic   Reply to topic    Russian ABAP Developer's Club Forum Index -> Interfaces | Интерфейсы
View previous topic :: View next topic  
Author Message
admin
Администратор
Администратор



Joined: 01 Sep 2007
Posts: 1640

PostPosted: Sat Oct 06, 2007 12:37 am    Post subject: Step-by-Step Guide for Using LSMW to Update Customer Master Reply with quote

Step-by-Step Guide for Using LSMW to Update Customer Master Records
by Mitresh Kundalia.

Business Case:
As a part of reorganization and to better serve the customer needs, you are regrouping many of the customers. In SAP terms, you
are changing the Sales Office, Sales Group and Customer Groups for specific Customer Master Records. Typically, you would
maintain customer records with transaction XD02 to update 'Sales View'. You would enter Customer Key (Customer No, Sales
Organization, Distribution Channel, and Division) and update relevant fields on Sales View screen.

This document contains Step-by-step instructions to use LSMW to update Customer Master Records. It has two demonstration
examples - one using Batch Recording and another using standard SAP Object.

Note! The screenprints in this article are from IDES Release 4.6. They may differ slightly in other versions.

Demo Example 1
LSMW to Update Customer Master Records with Transaction Recording

Call 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 attributes
In 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 Change
Customer 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.


Figure 12 Field mapping and Conversion rules overview

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
Again this is an optional step to view how the source data is converted to internal SAP format (Figure 1Cool.


Figure 18 Display Converted Data

Step 13: Create batch input session
Once 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).

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.

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
([img]Figure 26[/img]).


Figure 26 Field Mapping and Conversion Rules

Save and go back to main screen.

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

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.

Mitresh Kundalia heads SAP practice division at Quality Systems & Software (www.QSandS.com). QS&S helps companies achieve
world-class performance by realizing their latent business and technological potential with emphasis on SAP systems. QS&S uses
Industry-wide best-practices and proven implementation tools to integrate complex business processes with the SAP system. With
an MBA degree in finance, Mitresh implements Financial and Logistics applications with specialization in Management reporting,
Profitability Analysis, Information systems and Business Information Warehouse. He can be reached by e-mail at [email protected].
Back to top
View user's profile Send private message
Display posts from previous:   
Post new topic   Reply to topic    Russian ABAP Developer's Club Forum Index -> Interfaces | Интерфейсы All times are GMT + 4 Hours
Page 1 of 1

 
Jump to:  
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum
You cannot attach files in this forum
You can download files in this forum


All product names are trademarks of their respective companies. SAPNET.RU websites are in no way affiliated with SAP AG.
SAP, SAP R/3, R/3 software, mySAP, ABAP, BAPI, xApps, SAP NetWeaver and any other are registered trademarks of SAP AG.
Every effort is made to ensure content integrity. Use information on this site at your own risk.