Application Development and Automation Discussions
Join the discussions or start your own on all things application development, including tools and APIs, programming models, and keeping your skills sharp.
cancel
Showing results for 
Search instead for 
Did you mean: 
Read only

lsmw

Former Member
0 Likes
394

how to fix errors in lsmw

how to fix errors in lsmw

2 REPLIES 2
Read only

Former Member
0 Likes
365

Hi Pavan,

u can fix the errors in the mapping step u can fix errors for writing logic in each mapping or else if u want u can write whole logic , by clicking display variant in the top of the mapping screen after clicking that icon

u find one pop up screen in that choose bottom three check boxes and enter , then u find some functions like

__GLOBAL_DATA__

__BEGIN_OF_PROCESSING__

__BEGIN_OF_TRANSACTION__

__END_OF_RECORD__

__END_OF_TRANSACTION__

__END_OF_PROCESSING__

__FORM_ROUTINES__

in this u can declare any thing and write logic as per ur requirement ..

in this way we can fix the errors..

plz let me know if u have any issues in LSMW

Thanks

Naveen khan

Read only

Former Member
0 Likes
365

Hi,

SAP generated messages can't be handled in LSMW. We can check/Analyze the logs by T.Code: SLG1.

In case they are errors that you can/ want to capture before proceeding to the session. you can capture it in the end_of_record area for each record and move it to an internal table which can then be downloaded in the end_of_processing.

Example : You have a loaded material master with the legacy material number in BISMT field in MARA. Let's say you now want to load your inventory. In the LSMW for the inventory load you can do a select and get teh SAP material number for the legacy material number provided to you. In this select if you do not find the SAP material number for one material(may be it errored out during material master load for instance) you can move this record to an internal table and in the processing block when all such errrors have been collected in the internal table then you can download it to your presentation server so you can report it to your business users to fix. This is my preferred method of loading data. Sure it will error out int eh batch session as a valid SAP material number is not provided but then you can never fix it automatically. you will have to process tem in the foreground or in errors mode and this invoves a lot of time and developers intervention. In my way developers intervention is limited. A report is generated and then business will fix the data and the delta loades will have to be loaded.

Here's the sample code :

Material Number

BINS-MATNR ()

RLBES-MATNR = BINS-MATNR.

clear RLBES-MATNR.

select single matnr into RLBES-MATNR from MARA

where BISMT = BINS-MATNR.

IF SY-SUBRC <> 0.

RLBES-matnr = BINS-MATNR.

MOVE-CORRESPONDING BINS TO err_file.

MOVE 'Material not created' TO err_file-error.

APPEND err_file.

WRITE : 'NO MATERIAL'.

skip_record.

endif.

  • __END_OF_PROCESSING__

FUNCTION 'GUI_DOWNLOAD'

EXPORTING

FILENAME = error_file_name

TABLES

DATA_TAB = err_file.

IF SY-SUBRC <> 0.

  • MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO

  • WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.

ENDIF.

This example used GUI_DOWNLOAD . Ofcourse this is now not recommended so you can use the latest FMs for download.

Regards

Sudheer