Site icon SAP Human Resources Experts And Solutions

Step-by-step SAP LSMW Developer Guide

<h2><a name&equals;"&lowbar;Toc515533081"><&sol;a>Basics<&sol;h2>&NewLine;<p>LSMW is a standard SAP tool to do any kind of mass data changes&period; It has a number of ways how to update the data in the system&colon;<&sol;p>&NewLine;<ul>&NewLine;<li>BAPI<&sol;li>&NewLine;<li>IDOC<&sol;li>&NewLine;<li>Batch Recording<&sol;li>&NewLine;<li>Direct Input<&sol;li>&NewLine;<&sol;ul>&NewLine;<p>BAPI is the fastest way&comma; but there is a limited number of BAPIs available to the customer&period;<&sol;p>&NewLine;<p>In 99&percnt; cases&comma; we use Batch Recording which works like macros in MS Excel&sol;Word&period; The system follows user’s steps&comma; recording screen by screen&period; Once done we map data file to these screens and data fields&period; Than system repeats the same steps like the user would be doing manually&period;<&sol;p>&NewLine;<h2><a name&equals;"&lowbar;Toc515533082"><&sol;a>Organizing LSMW projects<&sol;h2>&NewLine;<p>In LSMW transaction we have projects&comma; subprojects&comma; and objects&period;<&sol;p>&NewLine;<p><a href&equals;"https&colon;&sol;&sol;saphcmsolutions&period;com&sol;wp-content&sol;uploads&sol;2018&sol;12&sol;t&lowbar;lsmw&lowbar;1&period;png"><img class&equals;"alignnone size-full wp-image-1275" src&equals;"https&colon;&sol;&sol;saphcmsolutions&period;com&sol;wp-content&sol;uploads&sol;2018&sol;12&sol;t&lowbar;lsmw&lowbar;1&period;png" alt&equals;"" width&equals;"587" height&equals;"210" &sol;><&sol;a><&sol;p>&NewLine;<p>Ideally&comma; there should be one global project for routine updates&comma; one for data migration&period;<&sol;p>&NewLine;<p>The subproject is something meaningful&comma; like OM&comma; PA&comma; PT&comma; and PY for different HR areas&period; Or it could be one subproject for all infotypes&comma; no matter&period;<&sol;p>&NewLine;<p>An object usually represents what’s being changed&colon; infotype&comma; table or something else&period;<&sol;p>&NewLine;<p>To start we need to create all three entities&colon; project&comma; subproject&comma; object or choose them if they are already created&period;<&sol;p>&NewLine;<p><a href&equals;"https&colon;&sol;&sol;saphcmsolutions&period;com&sol;wp-content&sol;uploads&sol;2018&sol;12&sol;t&lowbar;lsmw&lowbar;2&period;png"><img class&equals;"alignnone size-full wp-image-1276" src&equals;"https&colon;&sol;&sol;saphcmsolutions&period;com&sol;wp-content&sol;uploads&sol;2018&sol;12&sol;t&lowbar;lsmw&lowbar;2&period;png" alt&equals;"" width&equals;"596" height&equals;"212" &sol;><&sol;a><&sol;p>&NewLine;<p>Here is the main LSMW window&period; Steps &OpenCurlyDoubleQuote;Define Object Attributes” to &OpenCurlyDoubleQuote;Assign Files” are settings&comma; other for execution for the end-user&period;<&sol;p>&NewLine;<p><a href&equals;"https&colon;&sol;&sol;saphcmsolutions&period;com&sol;wp-content&sol;uploads&sol;2018&sol;12&sol;t&lowbar;lsmw&lowbar;3&period;png"><img class&equals;"alignnone size-full wp-image-1277" src&equals;"https&colon;&sol;&sol;saphcmsolutions&period;com&sol;wp-content&sol;uploads&sol;2018&sol;12&sol;t&lowbar;lsmw&lowbar;3&period;png" alt&equals;"" width&equals;"890" height&equals;"531" &sol;><&sol;a><&sol;p>&NewLine;<p><&excl;--more--><&sol;p>&NewLine;<h2><a name&equals;"&lowbar;Toc515533083"><&sol;a>LSMW customizing steps<&sol;h2>&NewLine;<p>All steps should proceed one by one in the same order like on the screen&period;<&sol;p>&NewLine;<h3><a name&equals;"&lowbar;Toc515533084"><&sol;a>Define Object Attributes<&sol;h3>&NewLine;<p><a href&equals;"https&colon;&sol;&sol;saphcmsolutions&period;com&sol;wp-content&sol;uploads&sol;2018&sol;12&sol;t&lowbar;lsmw&lowbar;4&period;png"><img class&equals;"alignnone size-full wp-image-1278" src&equals;"https&colon;&sol;&sol;saphcmsolutions&period;com&sol;wp-content&sol;uploads&sol;2018&sol;12&sol;t&lowbar;lsmw&lowbar;4&period;png" alt&equals;"" width&equals;"571" height&equals;"639" &sol;><&sol;a><&sol;p>&NewLine;<p>Here we set the way how we want to load the data into the system&period; Again&comma; for 99&percnt; it is &OpenCurlyQuote;Batch Input Recording’&period; Usually&comma; we create a new recording for each new mass changes&period; To create a new recording click on &OpenCurlyQuote;Recordings&colon; Overview’ button to the right&period;<&sol;p>&NewLine;<p><a href&equals;"https&colon;&sol;&sol;saphcmsolutions&period;com&sol;wp-content&sol;uploads&sol;2018&sol;12&sol;t&lowbar;lsmw&lowbar;5&period;png"><img class&equals;"alignnone size-full wp-image-1279" src&equals;"https&colon;&sol;&sol;saphcmsolutions&period;com&sol;wp-content&sol;uploads&sol;2018&sol;12&sol;t&lowbar;lsmw&lowbar;5&period;png" alt&equals;"" width&equals;"665" height&equals;"368" &sol;><&sol;a><&sol;p>&NewLine;<p>Before we start recording we need to make sure we have all the data for all fields handy&period; When we record user activities system records all steps&period; If we click on the list to choose a value for some field it will also be recorded&period; We don’t want the system to record these screens with help values&period;<&sol;p>&NewLine;<p>Click Create&period; It’s a good practice to give prefix for recordings like here R stands for Recording&period;<&sol;p>&NewLine;<p><a href&equals;"https&colon;&sol;&sol;saphcmsolutions&period;com&sol;wp-content&sol;uploads&sol;2018&sol;12&sol;t&lowbar;lsmw&lowbar;6&period;png"><img class&equals;"alignnone size-full wp-image-1280" src&equals;"https&colon;&sol;&sol;saphcmsolutions&period;com&sol;wp-content&sol;uploads&sol;2018&sol;12&sol;t&lowbar;lsmw&lowbar;6&period;png" alt&equals;"" width&equals;"597" height&equals;"145" &sol;><&sol;a><&sol;p>&NewLine;<p>For OM module &lpar;infotypes 1000 – 1999&rpar; we PP02 transaction&period;<&sol;p>&NewLine;<p><a href&equals;"https&colon;&sol;&sol;saphcmsolutions&period;com&sol;wp-content&sol;uploads&sol;2018&sol;12&sol;t&lowbar;lsmw&lowbar;7&period;png"><img class&equals;"alignnone size-full wp-image-1281" src&equals;"https&colon;&sol;&sol;saphcmsolutions&period;com&sol;wp-content&sol;uploads&sol;2018&sol;12&sol;t&lowbar;lsmw&lowbar;7&period;png" alt&equals;"" width&equals;"381" height&equals;"124" &sol;><&sol;a><&sol;p>&NewLine;<p>Pay attention we enter all data without using any help values or lists&period;<&sol;p>&NewLine;<p><a href&equals;"https&colon;&sol;&sol;saphcmsolutions&period;com&sol;wp-content&sol;uploads&sol;2018&sol;12&sol;t&lowbar;lsmw&lowbar;8&period;png"><img class&equals;"alignnone size-full wp-image-1282" src&equals;"https&colon;&sol;&sol;saphcmsolutions&period;com&sol;wp-content&sol;uploads&sol;2018&sol;12&sol;t&lowbar;lsmw&lowbar;8&period;png" alt&equals;"" width&equals;"534" height&equals;"387" &sol;><&sol;a><&sol;p>&NewLine;<p>Click Create&period;<&sol;p>&NewLine;<p><a href&equals;"https&colon;&sol;&sol;saphcmsolutions&period;com&sol;wp-content&sol;uploads&sol;2018&sol;12&sol;t&lowbar;lsmw&lowbar;9&period;png"><img class&equals;"alignnone size-full wp-image-1283" src&equals;"https&colon;&sol;&sol;saphcmsolutions&period;com&sol;wp-content&sol;uploads&sol;2018&sol;12&sol;t&lowbar;lsmw&lowbar;9&period;png" alt&equals;"" width&equals;"607" height&equals;"252" &sol;><&sol;a><&sol;p>&NewLine;<p>Click Save&period; Then exit transaction&period;<&sol;p>&NewLine;<p>The system brings us back to the recording&period; Click &OpenCurlyQuote;Default All’ button to fill field names automatically&period; We will use these names in mapping rules&period;<&sol;p>&NewLine;<p><a href&equals;"https&colon;&sol;&sol;saphcmsolutions&period;com&sol;wp-content&sol;uploads&sol;2018&sol;12&sol;t&lowbar;lsmw&lowbar;10&period;png"><img class&equals;"alignnone size-full wp-image-1284" src&equals;"https&colon;&sol;&sol;saphcmsolutions&period;com&sol;wp-content&sol;uploads&sol;2018&sol;12&sol;t&lowbar;lsmw&lowbar;10&period;png" alt&equals;"" width&equals;"898" height&equals;"709" &sol;><&sol;a><&sol;p>&NewLine;<p>Save and go back to the main screen with &OpenCurlyQuote;Change Object Attributes’&period; Select our recording from the list&period;<&sol;p>&NewLine;<p><a href&equals;"https&colon;&sol;&sol;saphcmsolutions&period;com&sol;wp-content&sol;uploads&sol;2018&sol;12&sol;t&lowbar;lsmw&lowbar;11&period;png"><img class&equals;"alignnone size-full wp-image-1285" src&equals;"https&colon;&sol;&sol;saphcmsolutions&period;com&sol;wp-content&sol;uploads&sol;2018&sol;12&sol;t&lowbar;lsmw&lowbar;11&period;png" alt&equals;"" width&equals;"565" height&equals;"411" &sol;><&sol;a><&sol;p>&NewLine;<p>Save and go back to the main menu&period;<&sol;p>&NewLine;<p>&nbsp&semi;<&sol;p>&NewLine;<h3><a name&equals;"&lowbar;Toc515533085"><&sol;a>Define Source Structures<&sol;h3>&NewLine;<p>Source structure reflects data from a file&period; If we have a hierarchy in a file or have several files to load at once&comma; we create on structure per each data entity or file&period; It’s a good practice to use a prefix in naming&comma; like here ZS – Z stands for customer object&comma; S – structure&period;<&sol;p>&NewLine;<p><a href&equals;"https&colon;&sol;&sol;saphcmsolutions&period;com&sol;wp-content&sol;uploads&sol;2018&sol;12&sol;t&lowbar;lsmw&lowbar;12&period;png"><img class&equals;"alignnone size-full wp-image-1286" src&equals;"https&colon;&sol;&sol;saphcmsolutions&period;com&sol;wp-content&sol;uploads&sol;2018&sol;12&sol;t&lowbar;lsmw&lowbar;12&period;png" alt&equals;"" width&equals;"656" height&equals;"299" &sol;><&sol;a><&sol;p>&NewLine;<p>Save and go back&period;<&sol;p>&NewLine;<h3><a name&equals;"&lowbar;Toc515533086"><&sol;a>Define Source Fields<&sol;h3>&NewLine;<p>Source fields created for each structure&period; It’s a good practice to<&sol;p>&NewLine;<ul>&NewLine;<li>Keep the real file fields order the same in the source structure<&sol;li>&NewLine;<li>Use SAP dictionary names in structure<&sol;li>&NewLine;<&sol;ul>&NewLine;<p><a href&equals;"https&colon;&sol;&sol;saphcmsolutions&period;com&sol;wp-content&sol;uploads&sol;2018&sol;12&sol;t&lowbar;lsmw&lowbar;13&period;png"><img class&equals;"alignnone size-full wp-image-1288" src&equals;"https&colon;&sol;&sol;saphcmsolutions&period;com&sol;wp-content&sol;uploads&sol;2018&sol;12&sol;t&lowbar;lsmw&lowbar;13&period;png" alt&equals;"" width&equals;"728" height&equals;"172" &sol;><&sol;a><&sol;p>&NewLine;<p>Choose structure and click on table icon&period; It’s more convenient to enter all fields on one screen&period;<&sol;p>&NewLine;<p>Enter all fields you want to load from file&period; If you have fields with constant values they can be omitted and defined on later steps as constants&period;<&sol;p>&NewLine;<p><a href&equals;"https&colon;&sol;&sol;saphcmsolutions&period;com&sol;wp-content&sol;uploads&sol;2018&sol;12&sol;t&lowbar;lsmw&lowbar;14&period;png"><img class&equals;"alignnone size-full wp-image-1289" src&equals;"https&colon;&sol;&sol;saphcmsolutions&period;com&sol;wp-content&sol;uploads&sol;2018&sol;12&sol;t&lowbar;lsmw&lowbar;14&period;png" alt&equals;"" width&equals;"646" height&equals;"209" &sol;><&sol;a><&sol;p>&NewLine;<p>Save and return to the main menu&period;<&sol;p>&NewLine;<h3><a name&equals;"&lowbar;Toc515533087"><&sol;a>Define Structure Relations<&sol;h3>&NewLine;<p>Here we need to define relations between our recordings and structures&period; If it’s one recording and structure system proposes relation&period; All we need is to save and return&period;<&sol;p>&NewLine;<p><a href&equals;"https&colon;&sol;&sol;saphcmsolutions&period;com&sol;wp-content&sol;uploads&sol;2018&sol;12&sol;t&lowbar;lsmw&lowbar;15&period;png"><img class&equals;"alignnone size-full wp-image-1290" src&equals;"https&colon;&sol;&sol;saphcmsolutions&period;com&sol;wp-content&sol;uploads&sol;2018&sol;12&sol;t&lowbar;lsmw&lowbar;15&period;png" alt&equals;"" width&equals;"831" height&equals;"179" &sol;><&sol;a><&sol;p>&NewLine;<h3><a name&equals;"&lowbar;Toc515533088"><&sol;a>Define Field Mapping and Conversion Rules<&sol;h3>&NewLine;<p>This is the most complicated step&period; Here we define how our data from a file &lpar;source structure&rpar; maps to recording fields&period; On the screen&comma; we see all recorded fields from the first step&period; For each field&comma; we need to assign some value&period; There are some options&colon;<&sol;p>&NewLine;<table>&NewLine;<tbody>&NewLine;<tr>&NewLine;<td width&equals;"204"><strong>Button in toolbar<&sol;strong><&sol;td>&NewLine;<td width&equals;"420"><strong>Meaning<&sol;strong><&sol;td>&NewLine;<&sol;tr>&NewLine;<tr>&NewLine;<td width&equals;"204">Source field<&sol;td>&NewLine;<td width&equals;"420">Takes data from the file &lpar;source structure&rpar;<&sol;td>&NewLine;<&sol;tr>&NewLine;<tr>&NewLine;<td width&equals;"204">Rule<&sol;td>&NewLine;<td width&equals;"420">Converts data with some predefined conversion rules or custom ABAP code<&sol;td>&NewLine;<&sol;tr>&NewLine;<tr>&NewLine;<td width&equals;"204">Initial<&sol;td>&NewLine;<td width&equals;"420">Leave value as is from the infotype logic<&sol;td>&NewLine;<&sol;tr>&NewLine;<tr>&NewLine;<td width&equals;"204">Constant<&sol;td>&NewLine;<td width&equals;"420">Constant value<&sol;td>&NewLine;<&sol;tr>&NewLine;<tr>&NewLine;<td width&equals;"204">Move<&sol;td>&NewLine;<td width&equals;"420">Copy a field or part of it<&sol;td>&NewLine;<&sol;tr>&NewLine;<tr>&NewLine;<td width&equals;"204">Fixed value<&sol;td>&NewLine;<td width&equals;"420">Fixed value from some predefined list<&sol;td>&NewLine;<&sol;tr>&NewLine;<tr>&NewLine;<td width&equals;"204">Translation<&sol;td>&NewLine;<td width&equals;"420">Conversion through mapping &OpenCurlyDoubleQuote;if this value&comma; choose that value”<&sol;td>&NewLine;<&sol;tr>&NewLine;<&sol;tbody>&NewLine;<&sol;table>&NewLine;<h3><a href&equals;"https&colon;&sol;&sol;saphcmsolutions&period;com&sol;wp-content&sol;uploads&sol;2018&sol;12&sol;t&lowbar;lsmw&lowbar;16&period;png"><img class&equals;"alignnone size-full wp-image-1291" src&equals;"https&colon;&sol;&sol;saphcmsolutions&period;com&sol;wp-content&sol;uploads&sol;2018&sol;12&sol;t&lowbar;lsmw&lowbar;16&period;png" alt&equals;"" width&equals;"789" height&equals;"726" &sol;><&sol;a><&sol;h3>&NewLine;<h3><a name&equals;"&lowbar;Toc515533089"><&sol;a>Define Fixed Values&comma; Translations&comma; User-Defined Routines<&sol;h3>&NewLine;<p>Here we can define fixed values&comma; translations or ABAP procedures which are used in the previous step&period; For simple tasks in 99&percnt;&comma; this is not needed&period;<&sol;p>&NewLine;<h3><a name&equals;"&lowbar;Toc515533090"><&sol;a>Specify Files<&sol;h3>&NewLine;<p>Here we create a file reference&period;<&sol;p>&NewLine;<p><a href&equals;"https&colon;&sol;&sol;saphcmsolutions&period;com&sol;wp-content&sol;uploads&sol;2018&sol;12&sol;t&lowbar;lsmw&lowbar;17&period;png"><img class&equals;"alignnone size-full wp-image-1292" src&equals;"https&colon;&sol;&sol;saphcmsolutions&period;com&sol;wp-content&sol;uploads&sol;2018&sol;12&sol;t&lowbar;lsmw&lowbar;17&period;png" alt&equals;"" width&equals;"1138" height&equals;"731" &sol;><&sol;a><&sol;p>&NewLine;<p>Click on Legacy Data on the PC and click Create&period; It means the file will be downloaded from your PC&comma; not SAP server&period;<&sol;p>&NewLine;<p>File – full path to file&period;<&sol;p>&NewLine;<p>Name – technical name&period; Use prefix&comma; like ZF&period;<&sol;p>&NewLine;<p>Depending on file choose correct delimiter&period;<&sol;p>&NewLine;<p>It’s a good practice to have field names in the very first row in the file and follow the order from the source structure&period; So&comma; tick both check boxes under &OpenCurlyQuote;File Structure’ frame&period;<&sol;p>&NewLine;<p>The file would look like this&period;<&sol;p>&NewLine;<p><a href&equals;"https&colon;&sol;&sol;saphcmsolutions&period;com&sol;wp-content&sol;uploads&sol;2018&sol;12&sol;t&lowbar;lsmw&lowbar;18&period;png"><img class&equals;"alignnone size-full wp-image-1293" src&equals;"https&colon;&sol;&sol;saphcmsolutions&period;com&sol;wp-content&sol;uploads&sol;2018&sol;12&sol;t&lowbar;lsmw&lowbar;18&period;png" alt&equals;"" width&equals;"708" height&equals;"110" &sol;><&sol;a><&sol;p>&NewLine;<p>Save and exit&period;<&sol;p>&NewLine;<h3><a name&equals;"&lowbar;Toc515533091"><&sol;a>Assign Files<&sol;h3>&NewLine;<p>Here we assign file reference to the source structure&period; Usually&comma; it’s one file to one structure&period;<&sol;p>&NewLine;<p><a href&equals;"https&colon;&sol;&sol;saphcmsolutions&period;com&sol;wp-content&sol;uploads&sol;2018&sol;12&sol;t&lowbar;lsmw&lowbar;19&period;png"><img class&equals;"alignnone size-full wp-image-1294" src&equals;"https&colon;&sol;&sol;saphcmsolutions&period;com&sol;wp-content&sol;uploads&sol;2018&sol;12&sol;t&lowbar;lsmw&lowbar;19&period;png" alt&equals;"" width&equals;"436" height&equals;"189" &sol;><&sol;a><&sol;p>&NewLine;<p>Save and exit&period;<&sol;p>&NewLine;<h3><a name&equals;"&lowbar;Toc515533092"><&sol;a>Read Data<&sol;h3>&NewLine;<p>Here the system reads the file and converts to internal format on the server&period;<&sol;p>&NewLine;<p><a href&equals;"https&colon;&sol;&sol;saphcmsolutions&period;com&sol;wp-content&sol;uploads&sol;2018&sol;12&sol;t&lowbar;lsmw&lowbar;20&period;png"><img class&equals;"alignnone size-full wp-image-1295" src&equals;"https&colon;&sol;&sol;saphcmsolutions&period;com&sol;wp-content&sol;uploads&sol;2018&sol;12&sol;t&lowbar;lsmw&lowbar;20&period;png" alt&equals;"" width&equals;"566" height&equals;"187" &sol;><&sol;a><&sol;p>&NewLine;<p>If the file is large and we want to test our LSMW project&comma; delimit a number of records to read and process&period;<&sol;p>&NewLine;<p><a href&equals;"https&colon;&sol;&sol;saphcmsolutions&period;com&sol;wp-content&sol;uploads&sol;2018&sol;12&sol;t&lowbar;lsmw&lowbar;21&period;png"><img class&equals;"alignnone size-full wp-image-1296" src&equals;"https&colon;&sol;&sol;saphcmsolutions&period;com&sol;wp-content&sol;uploads&sol;2018&sol;12&sol;t&lowbar;lsmw&lowbar;21&period;png" alt&equals;"" width&equals;"889" height&equals;"500" &sol;><&sol;a><&sol;p>&NewLine;<h3><a name&equals;"&lowbar;Toc515533093"><&sol;a>Display Read Data<&sol;h3>&NewLine;<p>Here we can double check ourselves if the file was organized correct and data placed into right fields&period;<&sol;p>&NewLine;<p><a href&equals;"https&colon;&sol;&sol;saphcmsolutions&period;com&sol;wp-content&sol;uploads&sol;2018&sol;12&sol;t&lowbar;lsmw&lowbar;22&period;png"><img class&equals;"alignnone size-full wp-image-1297" src&equals;"https&colon;&sol;&sol;saphcmsolutions&period;com&sol;wp-content&sol;uploads&sol;2018&sol;12&sol;t&lowbar;lsmw&lowbar;22&period;png" alt&equals;"" width&equals;"655" height&equals;"185" &sol;><&sol;a><&sol;p>&NewLine;<p>If you click on the data record&comma; it shows record content parsed into source structure&period;<&sol;p>&NewLine;<p><a href&equals;"https&colon;&sol;&sol;saphcmsolutions&period;com&sol;wp-content&sol;uploads&sol;2018&sol;12&sol;t&lowbar;lsmw&lowbar;23&period;png"><img class&equals;"alignnone size-full wp-image-1298" src&equals;"https&colon;&sol;&sol;saphcmsolutions&period;com&sol;wp-content&sol;uploads&sol;2018&sol;12&sol;t&lowbar;lsmw&lowbar;23&period;png" alt&equals;"" width&equals;"372" height&equals;"220" &sol;><&sol;a><&sol;p>&NewLine;<h3><a name&equals;"&lowbar;Toc515533094"><&sol;a>Convert Data<&sol;h3>&NewLine;<p>The system converts data from the source structure to the recording structure including all kind of mapping we’ve done on &OpenCurlyQuote;Define Field Mapping and Conversion Rules’ step&period;<&sol;p>&NewLine;<p><a href&equals;"https&colon;&sol;&sol;saphcmsolutions&period;com&sol;wp-content&sol;uploads&sol;2018&sol;12&sol;t&lowbar;lsmw&lowbar;24&period;png"><img class&equals;"alignnone size-full wp-image-1299" src&equals;"https&colon;&sol;&sol;saphcmsolutions&period;com&sol;wp-content&sol;uploads&sol;2018&sol;12&sol;t&lowbar;lsmw&lowbar;24&period;png" alt&equals;"" width&equals;"903" height&equals;"423" &sol;><&sol;a><&sol;p>&NewLine;<h3><a name&equals;"&lowbar;Toc515533095"><&sol;a>Display Converted Data<&sol;h3>&NewLine;<p>The same as display read data step but shows already converted data&period; This data will be entered during simulation &lpar;batch input&rpar;&period;<&sol;p>&NewLine;<p><a href&equals;"https&colon;&sol;&sol;saphcmsolutions&period;com&sol;wp-content&sol;uploads&sol;2018&sol;12&sol;t&lowbar;lsmw&lowbar;25&period;png"><img class&equals;"alignnone size-full wp-image-1300" src&equals;"https&colon;&sol;&sol;saphcmsolutions&period;com&sol;wp-content&sol;uploads&sol;2018&sol;12&sol;t&lowbar;lsmw&lowbar;25&period;png" alt&equals;"" width&equals;"377" height&equals;"359" &sol;><&sol;a><&sol;p>&NewLine;<h3><a name&equals;"&lowbar;Toc515533096"><&sol;a>Create Batch Input Session<&sol;h3>&NewLine;<p><a href&equals;"https&colon;&sol;&sol;saphcmsolutions&period;com&sol;wp-content&sol;uploads&sol;2018&sol;12&sol;t&lowbar;lsmw&lowbar;26&period;png"><img class&equals;"alignnone size-full wp-image-1301" src&equals;"https&colon;&sol;&sol;saphcmsolutions&period;com&sol;wp-content&sol;uploads&sol;2018&sol;12&sol;t&lowbar;lsmw&lowbar;26&period;png" alt&equals;"" width&equals;"589" height&equals;"207" &sol;><&sol;a><&sol;p>&NewLine;<p>If you want to keep all recordings for your records&comma; tick &OpenCurlyQuote;Keep batch input folders’&period; Otherwise&comma; the system deletes all successful recordings&period; Only failed will remain in the system until they are processed&period;<&sol;p>&NewLine;<h3><a name&equals;"&lowbar;Toc515533097"><&sol;a>Run Batch Input Session<&sol;h3>&NewLine;<p>SAP opens a SM35 transaction with Batch Input sessions&period;<&sol;p>&NewLine;<p><a href&equals;"https&colon;&sol;&sol;saphcmsolutions&period;com&sol;wp-content&sol;uploads&sol;2018&sol;12&sol;t&lowbar;lsmw&lowbar;27&period;png"><img class&equals;"alignnone size-full wp-image-1302" src&equals;"https&colon;&sol;&sol;saphcmsolutions&period;com&sol;wp-content&sol;uploads&sol;2018&sol;12&sol;t&lowbar;lsmw&lowbar;27&period;png" alt&equals;"" width&equals;"1029" height&equals;"259" &sol;><&sol;a><&sol;p>&NewLine;<p>Select the recording and click &OpenCurlyQuote;Process’&period;<&sol;p>&NewLine;<p><a href&equals;"https&colon;&sol;&sol;saphcmsolutions&period;com&sol;wp-content&sol;uploads&sol;2018&sol;12&sol;t&lowbar;lsmw&lowbar;28&period;png"><img class&equals;"alignnone size-full wp-image-1303" src&equals;"https&colon;&sol;&sol;saphcmsolutions&period;com&sol;wp-content&sol;uploads&sol;2018&sol;12&sol;t&lowbar;lsmw&lowbar;28&period;png" alt&equals;"" width&equals;"491" height&equals;"255" &sol;><&sol;a><&sol;p>&NewLine;<p>For 1 record to test it’s recommended to use &OpenCurlyQuote;Process&sol;foreground’ as the system shows every step on the screen with the data filled in&period;<&sol;p>&NewLine;<p>Display error only is to run the process in the foreground and stop only on errors&comma; so that user could react somehow&period;<&sol;p>&NewLine;<p>In case of a large volume&comma; it’s better to run in the background&period; It’s the fastest way&period;<&sol;p>&NewLine;<p>If the record was not processed it would show errors in the log&period;<&sol;p>&NewLine;<p><a href&equals;"https&colon;&sol;&sol;saphcmsolutions&period;com&sol;wp-content&sol;uploads&sol;2018&sol;12&sol;t&lowbar;lsmw&lowbar;29&period;png"><img class&equals;"alignnone size-full wp-image-1304" src&equals;"https&colon;&sol;&sol;saphcmsolutions&period;com&sol;wp-content&sol;uploads&sol;2018&sol;12&sol;t&lowbar;lsmw&lowbar;29&period;png" alt&equals;"" width&equals;"794" height&equals;"236" &sol;><&sol;a><&sol;p>&NewLine;<p>If we double-click on the recording there is a tab with a log&period; Once errors fixed &lpar;most common the employee or OM object is locked by another user&rpar; you can restart recording process&period; It will run ONLY for incorrect records&period;<&sol;p>&NewLine;<p>Once all errors are fixed and recording is processed it will disappear from the list&period;<&sol;p>&NewLine;<p>It means no more error occurred and we can verify the data&period;<&sol;p>&NewLine;<p><a href&equals;"https&colon;&sol;&sol;saphcmsolutions&period;com&sol;wp-content&sol;uploads&sol;2018&sol;12&sol;t&lowbar;lsmw&lowbar;30&period;png"><img class&equals;"alignnone size-full wp-image-1305" src&equals;"https&colon;&sol;&sol;saphcmsolutions&period;com&sol;wp-content&sol;uploads&sol;2018&sol;12&sol;t&lowbar;lsmw&lowbar;30&period;png" alt&equals;"" width&equals;"887" height&equals;"273" &sol;><&sol;a><&sol;p>&NewLine;<h2><a name&equals;"&lowbar;Toc515533098"><&sol;a>Business scenario specific details<&sol;h2>&NewLine;<p>There are some scenario specific recommendations&period;<&sol;p>&NewLine;<h3><a name&equals;"&lowbar;Toc515533099"><&sol;a>Flat PA infotypes &lpar;like 0&comma; 1&comma; 2&comma; etc&period;&rpar;<&sol;h3>&NewLine;<p>It’s the same like was explained above&period; To upload these infotypes use PA30 transaction&period;<&sol;p>&NewLine;<h3><a name&equals;"&lowbar;Toc515533100"><&sol;a>Table PA infotypes &lpar;8&comma; 27&rpar;<&sol;h3>&NewLine;<p>These infotypes have tables&comma; so the loading is a little different&period; Before loading we need to ensure we know max number of rows in the uploading data&period; If&comma; let’s say&comma; there are max 3 rows &lpar;one per wage type or cost center&rpar;&comma; than in our recording we need to fill three rows&comma; so the system would provide three fields for wage types&comma; rates&comma; etc&period; If we fill only the first row&comma; we’ll have just one field&comma; and records with 2-3 rows will be skipped&period;<&sol;p>&NewLine;<h3><a name&equals;"&lowbar;Toc515533101"><&sol;a>PA Actions &lpar;PA40&rpar;<&sol;h3>&NewLine;<p>You need to make sure there is no actions in PA40 transaction which need you to scroll the screen&period; If so you need to change user group parameter in SU3 to UGR &equals; 10 to show only US actions&period; If this is completely impossible&comma; actions could be loaded in PA30 in infotype 0000&period;<&sol;p>&NewLine;<h3><a name&equals;"&lowbar;Toc515533102"><&sol;a>System tables update &lpar;like T510&comma; T710 for rates increase&rpar;<&sol;h3>&NewLine;<p>When saving data in these system tables it asks for a transport request&period; Moreover it asks only the first time&period; So the transport request screen will appear during LSMW recording and not again&period; LSMW will try to find data for that screen and won’t find it throwing an error&period; To avoid this create couple entries manually&comma; save them in the transport request&period; Then don’t exit the session&comma; open LSMW&comma; make a recording and data upload within one session&period; Systems stores transport request in the session memory and doesn’t ask for it until you exit&period; So all LSMW activities will be performed without requiring transport request as it was entered during first manual data entries&period;<&sol;p>&NewLine;<h3><a name&equals;"&lowbar;Toc515533103"><&sol;a>Flat OM infotype<&sol;h3>&NewLine;<p>Proceed as described above&period;<&sol;p>&NewLine;<h3><a name&equals;"&lowbar;Toc515533104"><&sol;a>Table OM infotype<&sol;h3>&NewLine;<p>Proceed as described in Table PA infotype section&period;<&sol;p>&NewLine;<h2>Advanced techniques<&sol;h2>&NewLine;<p><a href&equals;"https&colon;&sol;&sol;saphcmsolutions&period;com&sol;sap-lsmw-translation-rules&sol;">SAP LSMW Translation Rules<&sol;a><&sol;p>&NewLine;<p><a href&equals;"https&colon;&sol;&sol;saphcmsolutions&period;com&sol;advanced-lsmw&sol;">Advanced LSMW use examples<&sol;a><&sol;p>&NewLine;<p><a href&equals;"https&colon;&sol;&sol;saphcmsolutions&period;com&sol;lsmw-file-read-error-codes&sol;">LSMW errors when you work with files<&sol;a><&sol;p>&NewLine;<p><a href&equals;"https&colon;&sol;&sol;saphcmsolutions&period;com&sol;load-several-files-lsmw&sol;">How to load multiple files in SAP LSMW<&sol;a><&sol;p>&NewLine;<p><a href&equals;"https&colon;&sol;&sol;saphcmsolutions&period;com&sol;easy-way-to-mass-change-any-field-in-sap&sol;">Easy way to mass change any field in SAP<&sol;a><&sol;p>&NewLine;<p><a href&equals;"https&colon;&sol;&sol;saphcmsolutions&period;com&sol;how-to-run-any-functional-module-with-input-data-from-text-file&sol;">How to run any functional module with input data from text file<&sol;a><&sol;p>&NewLine;<p>&nbsp&semi;<&sol;p>&NewLine;

Exit mobile version