Application Development 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: 

LSMW FOR MATERIAL MASTER USING BAPI_MATERIAL_SAVEDATA -Adding Custom Fields

Former Member
0 Kudos

Hi Gurus,

I'm developing LSMW for Material Master Upload using BAPI method.

Object:BUS1001006

BAPI:BAPI_MATERIAL_SAVEDATA

MESSAGE TYPE: MATMAS_BAPI

BASIC TYPE : MATMAS_BAPI03.

There is a requirement to use/map a custom field. Upon research custom field can be added to the parameter EXTENSIONIN and EXTENSIONINX, but I have no Idea on how to do it with LSMW. Please advise what approach is needed.

Thanks and Regards,

Jay

2 REPLIES 2

Former Member
0 Kudos

Hi Gurus,

I got the following code below.

The custom field won't get updated.... Please advise on what should I do... I've checked different forums and still can't come up with the solution... Please advise..

REPORT ztest_extend_matmas1.

********************************************************

  • STRUCTURE

********************************************************

TABLES:

bapimathead, "Headerdata

bapi_mara, "Clientdata

bapi_marax, "Clientdatax

bapi_marc, "Plantdata

bapi_marcx, "Plantdatax

bapi_makt, "Material description

bapiparex, "Extensionstruktur

bapiparexx,

bapiret2. "Return messages

DATA:

bapi_te_mara LIKE bapi_te_mara,

bapi_te_marax LIKE bapi_te_marax,

v_file TYPE string.

********************************************************

  • INTERNAL TABLE

********************************************************

*to store the output data

DATA:BEGIN OF it_material_number OCCURS 0.

INCLUDE STRUCTURE bapimatinr.

DATA:END OF it_material_number.

*for materialtext

DATA:BEGIN OF it_materialdesc OCCURS 0.

INCLUDE STRUCTURE bapi_makt .

DATA:END OF it_materialdesc.

*für z-feld

DATA:BEGIN OF it_bapiparex OCCURS 0.

INCLUDE STRUCTURE bapiparex.

DATA:END OF it_bapiparex.

*für z-feldx

DATA:BEGIN OF it_bapiparexx OCCURS 0.

INCLUDE STRUCTURE bapiparexx.

DATA:END OF it_bapiparexx.

*to return messages

DATA:BEGIN OF it_return2 OCCURS 0.

INCLUDE STRUCTURE bapiret2.

DATA:END OF it_return2.

DATA:BEGIN OF it_return OCCURS 0.

INCLUDE STRUCTURE bapiret1.

DATA:END OF it_return.

DATA

lt_messages TYPE bapiret2_t.

********************************************************

  • PROCESSING

********************************************************

*bapimathead-material = it_material_number-material.

bapimathead-material = '100-2520'.

bapimathead-ind_sector = 'P'.

bapimathead-matl_type = 'AEM'.

bapimathead-basic_view = 'X'.

bapimathead-purchase_view = 'X'.

bapimathead-inp_fld_check = 'I'.

*bapimathead-BASIC_VIEW = 'X'.

*bapimathead-SALES_VIEW = 'X'.

*bapimathead-PURCHASE_VIEW = 'X'.

*bapimathead-MRP_VIEW = 'X'.

*bapimathead-FORECAST_VIEW = 'X'.

*bapimathead-WORK_SCHED_VIEW = 'X'.

*bapimathead-PRT_VIEW = 'X'.

*bapimathead-STORAGE_VIEW = 'X'.

*bapimathead-WAREHOUSE_VIEW = 'X'.

bapi_mara-matl_group = '0001'.

bapi_mara-old_mat_no = '100-251'.

bapi_mara-base_uom = 'ST'.

bapi_marax-matl_group = 'X'.

bapi_marax-old_mat_no = 'X'.

bapi_marax-base_uom = 'X'.

bapi_marc-plant = '1000'.

bapi_marcx-plant = '1000'.

it_materialdesc-langu = 'EN'.

it_materialdesc-matl_desc = 'DESC'.

APPEND it_materialdesc.

*bapi_te_mara-material = it_material_number-material.

bapimathead-material = '100-2520'.

*bapi_te_mara-zzforst = '4148'.

bapi_te_mara-material = '100-2520'.

bapi_te_mara-zzmar_field1 = '4148'.

*bapi_te_marax-material = it_material_number-material.

bapimathead-material = '100-2520'.

*bapi_te_marax-zzforst = 'X'.

bapi_te_marax-material = '100-2520'.

bapi_te_marax-zzmar_field1 = 'X'.

it_bapiparex-structure = 'BAPI_TE_MARA'.

it_bapiparex-valuepart1 = bapi_te_mara.

APPEND it_bapiparex.

it_bapiparexx-structure = 'BAPI_TE_MARAX'.

it_bapiparexx-valuepart1 = bapi_te_marax.

APPEND it_bapiparexx.

CALL FUNCTION 'BAPI_MATERIAL_SAVEDATA'

EXPORTING

headdata = bapimathead

clientdata = bapi_mara

clientdatax = bapi_marax

plantdata = bapi_marc

plantdatax = bapi_marcx

IMPORTING

return = it_return2

TABLES

materialdescription = it_materialdesc

extensionin = it_bapiparex

extensioninx = it_bapiparexx

returnmessages = lt_messages.

CALL FUNCTION 'BAPI_TRANSACTION_COMMIT'.

THanks and Regards,

Jay

Edited by: jhayyy on May 17, 2011 6:54 AM

0 Kudos

Hi,

Everything goes well....

Helpfull topic

posted by Dominique Delesse