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: 

how to upload material master using BAPI

Former Member
0 Kudos

I have a flat file with 3 fields MATNR,MAKTX,MEINS and I want to create material master with 2 views basic data1 & basic data2 with three fields using BAPI

Can anyone tell me how to do this only using three fields and 2 views

and also i want to know what is the exact difference between session call transaction BAPI and LSWM methods.

Thank you,

Pradeep Reddy M.

2 REPLIES 2

Former Member
0 Kudos

Hi

BAPI_STANDARDMATERIAL_CREATE

BAPI_MATERIAL_SAVEDATA

Refer this thread

Regards

Raj

Former Member
0 Kudos

Hi Pradeep Reddy Miriyala,

This a example you can use, the views are related with each table only have to adapt to your case.

Best regards

Jaime Cordeiro

*&----


*

*& Report ZMM01_BAPI_01 *

*& *

*&----


*

*& *

*& *

*&----


*

REPORT ZMM01_BAPI_01 .

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

  • STRUCTURE DECLARATIONS *

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

TABLES: BAPIMATHEAD, "Headerdata

BAPI_MARA, "Clientdata

BAPI_MARAX, "Clientdatax

BAPI_MVKE, "SalesData

BAPI_MVKEX, "SalesDatax

BAPI_MARC, "Plantdata

BAPI_MARCX, "Plantdatax

BAPI_MBEW, "ValuationData

BAPI_MBEWX, "ValuationData

BAPI_MLGN, "Storage

BAPI_MLGNX, "StorageX

BAPI_MAKT, "Material description

*----

-


BAPI_MARM,

BAPI_MARMX,

bapi_mean,

BAPI_MLAN,

*----

-


BAPIRET2. "Return messages

DATA: BEGIN OF LSMW_MATERIAL_MASTER,

*----

-


> Initial Data

matnr(18),

mtart(4),

WERKS(4),

VKORG(4),

VTWEG(2),

LGNUM(3),"retirar

*----

-


> Basic Data 1

MAKTX(40),

MEINS(3),

MATKL(9),

BISMT(18),

SPART(2),

PRDHA(18),

BRGEW(17),

NTGEW(17),

GEWEI(3),

VOLUM(13),

VOLEH(3),

EAN11(18),

NUMTP(2),

*----

-


> Sales 1

DWERK(4),

TAXKM(1),

*----

-


> Sales 2

KTGRM(2),

PRODH(18),

MTPOS(4),

*----

-


> Sales: General/Plant

MTVFP(2),

TRAGR(4),

LADGR(4),

PRCTR(10),

*----

-


> Purchasing

  • Novas entradas

EKGRP(3),

KAUTB(1),

XCHPF1(1),

EKWSL(4),

WEBAZ(3),

INSMK1(1),

KORDB(1),

*----

-


> Foreign Trade

STAWN(17),

MTVER(4),

HERKL(3),

HERKR(3),

*----

-


> Purchase Order Text View

  • Identificar Campos

TextoEN(100),

TextoPT(100),

TextoPL(100),

TextoES(100),

*----

-


> MRP1

DISGR(4),

DISMM(2),

DISPO(3),

DISLS(2),

BSTMI(18),

BSTRF(13),

*----

-


> MRP2

BESKZ(1),

RGEKZ(1),

LGPRO(4),

LGFSB(4),

EPRIO(4),

WEBAZ1(3),

PLIFZ(3),

FHORI(3),

*----

-


> MRP3

PERKZ(1),

STRGR(2),

VRMOD(1),

VINT1(3),

VINT2(3),

*----

-


> MRP4

ALTSL(1),

FEVOR(3),

*----

-


> Work Sch

INSMK(1),

XCHPF(1),

UEETO(3),

*----

-


> Plant Storage 1

MHDRZ(4),

MHDHB(4),

*----

-


> Plant Storage 2

PRCTR1(10),

EPRIO1(4),

*----

-


> WM 1 S01 comum a todos

LTKZA_S01(3),

LTKZE_S01(3),

LGBKZ_S01(3),

**----

-


> WM 1 SHV

LTKZA_SHV(3),

LTKZE_SHV(3),

LGBKZ_SHV(3),

*----

-


> WM 1 SQW

LTKZA_SQW(3),

LTKZE_SQW(3),

LGBKZ_SQW(3),

*----

-


> WM 2

LHMG1(13),

LHME1(3),

LETY1(3),

LHMG2(13),

LHME2(3),

LETY2(3),

LHMG3(13),

LHME3(3),

LETY3(3),

*----

-


> Accounting 1

BKLAS(4),

VPRSV(1),

VERPR(23),

PEINH(5),

END OF LSMW_MATERIAL_MASTER.

DATA:V_FILE TYPE STRING.

DATA:VolumUnitConv(3).

DATA:UnitConv(3).

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

  • INTERNAL TABLE DECLARATIONS *

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

*to store the input data

DATA:

BEGIN OF it_matmaster OCCURS 0.

INCLUDE STRUCTURE LSMW_MATERIAL_MASTER.

DATA:

END OF it_matmaster.

*for material description

DATA:BEGIN OF IT_MATERIALDESC OCCURS 0.

INCLUDE STRUCTURE BAPI_MAKT .

DATA:END OF IT_MATERIALDESC.

*FOR gross wt

data: begin of it_uom occurs 0.

include structure BAPI_MARM.

data:end of it_uom.

DATA: BEGIN OF IT_UOMX OCCURS 0.

INCLUDE STRUCTURE BAPI_MARMX.

DATA:END OF IT_UOMX.

data:begin of it_mean occurs 0.

include structure bapi_mean.

data:end of it_mean.

DATA: BEGIN OF it_MLAN OCCURS 0.

include STRUCTURE BAPI_MLAN.

DATA: END OF it_MLAN.

DATA:BEGIN OF IT_MLTX OCCURS 0.

INCLUDE STRUCTURE BAPI_MLTX.

DATA:END OF IT_MLTX.

*to return messages

DATA:BEGIN OF IT_RETURN OCCURS 0.

INCLUDE STRUCTURE BAPIRET2.

DATA:END OF IT_RETURN.

DATA : imat TYPE TABLE OF bapimatinr WITH HEADER LINE.

DATA: text LIKE bapi_mltx OCCURS 0 WITH HEADER LINE.

DATA: matnrAct(18),oldMart(4).

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

  • SELECTION SCREEN

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

SELECTION-SCREEN BEGIN OF BLOCK B1 WITH FRAME TITLE TEXT-002.

PARAMETERS:P_FILE LIKE RLGRAP-FILENAME OBLIGATORY.

SELECTION-SCREEN END OF BLOCK B1 .

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

  • AT SELECTION SCREEN

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

AT SELECTION-SCREEN ON VALUE-REQUEST FOR P_FILE.

CALL FUNCTION 'F4_FILENAME'

EXPORTING

PROGRAM_NAME = SYST-CPROG

DYNPRO_NUMBER = SYST-DYNNR

FIELD_NAME = 'P_FILE'

IMPORTING

FILE_NAME = P_FILE.

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

  • TO UPLOAD THE DATA *

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

START-OF-SELECTION.

V_FILE = P_FILE.

CALL FUNCTION 'GUI_UPLOAD'

EXPORTING

filename = V_FILE

FILETYPE = 'ASC'

HAS_FIELD_SEPARATOR = 'X'

  • HEADER_LENGTH = 0

  • READ_BY_LINE = 'X'

  • DAT_MODE = ' '

  • IMPORTING

  • FILELENGTH =

  • HEADER =

tables

data_tab = IT_MATMASTER

EXCEPTIONS

FILE_OPEN_ERROR = 1

FILE_READ_ERROR = 2

NO_BATCH = 3

GUI_REFUSE_FILETRANSFER = 4

INVALID_TYPE = 5

NO_AUTHORITY = 6

UNKNOWN_ERROR = 7

BAD_DATA_FORMAT = 8

HEADER_NOT_ALLOWED = 9

SEPARATOR_NOT_ALLOWED = 10

HEADER_TOO_LONG = 11

UNKNOWN_DP_ERROR = 12

ACCESS_DENIED = 13

DP_OUT_OF_MEMORY = 14

DISK_FULL = 15

DP_TIMEOUT = 16

OTHERS = 17

.

IF sy-subrc <> 0.

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

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

ENDIF.

check sy-subrc eq 0.

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

  • DATA POPULATIONS *

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

LOOP AT IT_MATMASTER.

IF IT_MATMASTER-MATNR EQ '' .

oldMart = IT_MATMASTER-Mtart.

CALL FUNCTION 'MATERIAL_NUMBER_GET_NEXT'

EXPORTING

MATERIALART = IT_MATMASTER-Mtart

IMPORTING

MATERIALNR = matnrAct

  • RETURNCODE =

  • EXCEPTIONS

  • NO_INTERNAL_INTERVAL = 1

  • TYPE_NOT_FOUND = 2

  • OTHERS = 3

.

if sy-subrc = 0.

BAPIMATHEAD-MATERIAL = matnrAct.

endif.

ELSE.

BAPIMATHEAD-MATERIAL = it_matmaster-matnr.

ENDIF.

*----

-


Preenchimento dos dados do ecrã inicial

  • BAPIMATHEAD-MATERIAL = IT_MATMASTER-MATNR.

BAPIMATHEAD-IND_SECTOR = 'M'.

BAPIMATHEAD-MATL_TYPE = IT_MATMASTER-Mtart.

"declaration of views

BAPIMATHEAD-BASIC_VIEW = 'X'.

BAPIMATHEAD-MRP_VIEW = 'X'.

BAPIMATHEAD-STORAGE_VIEW = 'X'.

BAPIMATHEAD-WAREHOUSE_VIEW = 'X'.

BAPIMATHEAD-ACCOUNT_VIEW = 'X'.

If IT_MATMASTER-Mtart EQ '31'.

BAPIMATHEAD-SALES_VIEW = 'X'.

BAPIMATHEAD-WORK_SCHED_VIEW = 'X'.

ENDIF.

If IT_MATMASTER-Mtart EQ '51'.

BAPIMATHEAD-SALES_VIEW = 'X'.

BAPIMATHEAD-WORK_SCHED_VIEW = 'X'.

ENDIF.

If IT_MATMASTER-Mtart EQ '65'.

BAPIMATHEAD-PURCHASE_VIEW = 'X'.

ENDIF.

*----

-


Preenchimento de dados relativos a MARA

BAPI_MARA-BASE_UOM = IT_MATMASTER-MEINS.

BAPI_MARA-MATL_GROUP = IT_MATMASTER-MATKL.

BAPI_MARA-OLD_MAT_NO = IT_MATMASTER-BISMT.

BAPI_MARA-DIVISION = IT_MATMASTER-SPART.

BAPI_MARA-PROD_HIER = IT_MATMASTER-PRDHA.

BAPI_MARA-NET_WEIGHT = IT_MATMASTER-ntgew.

BAPI_MARA-UNIT_OF_WT = IT_MATMASTER-GEWEI.

BAPI_MARA-TRANS_GRP = IT_MATMASTER-tragr.

*----

-


> Novas Entradas

IF IT_MATMASTER-Mtart EQ '65'.

BAPI_MARA-BATCH_MGMT = IT_MATMASTER-XCHPF1.

BAPI_MARA-PUR_VALKEY = IT_MATMASTER-EKWSL.

BAPI_MARAX-PUR_VALKEY = 'X'.

ELSE.

BAPI_MARA-BATCH_MGMT = IT_MATMASTER-XCHPF.

ENDIF.

*----

-


> Novas Entradas

BAPI_MARA-MINREMLIFE = IT_MATMASTER-MHDRZ.

BAPI_MARA-SHELF_LIFE = IT_MATMASTER-MHDHB.

BAPI_MARAX-MATL_GROUP = 'X'.

BAPI_MARAX-OLD_MAT_NO = 'X'.

BAPI_MARAX-BASE_UOM = 'X'.

BAPI_MARAX-DIVISION = 'X'.

BAPI_MARAX-PROD_HIER = 'X'.

BAPI_MARAX-NET_WEIGHT = 'X'.

BAPI_MARAX-UNIT_OF_WT = 'X'.

BAPI_MARAX-TRANS_GRP = 'X'.

BAPI_MARAX-BATCH_MGMT = 'X'.

BAPI_MARAX-MINREMLIFE = 'X'.

BAPI_MARAX-SHELF_LIFE = 'X'.

*----

-


Preencimento de dados Relativos a MKVE

BAPI_MVKE-DELYG_PLNT = IT_MATMASTER-DWERK.

BAPI_MVKE-SALES_ORG = IT_MATMASTER-VKORG.

BAPI_MVKE-DISTR_CHAN = IT_MATMASTER-VTWEG.

BAPI_MVKE-PROD_HIER = IT_MATMASTER-PRODH.

BAPI_MVKE-ITEM_CAT = IT_MATMASTER-MTPOS.

BAPI_MVKE-ACCT_ASSGT = IT_MATMASTER-KTGRM.

BAPI_MVKEX-SALES_ORG = IT_MATMASTER-VKORG.

BAPI_MVKEX-DISTR_CHAN = IT_MATMASTER-VTWEG.

BAPI_MVKEX-PROD_HIER = 'X'.

BAPI_MVKEX-ITEM_CAT = 'X'.

BAPI_MVKEX-DELYG_PLNT = 'X'.

BAPI_MVKEX-ACCT_ASSGT = 'X'.

*----

-


Preencimento de dados Relativos a MARC

BAPI_MARC-PLANT = IT_MATMASTER-WERKS.

BAPI_MARC-AVAILCHECK = IT_MATMASTER-MTVFP.

BAPI_MARC-LOADINGGRP = IT_MATMASTER-LADGR.

BAPI_MARC-PROFIT_CTR = IT_MATMASTER-PRCTR.

IF NOT IT_MATMASTER-Mtart EQ '51'.

BAPI_MARC-COMM_CODE = IT_MATMASTER-STAWN.

BAPI_MARC-COUNTRYORI = IT_MATMASTER-HERKL.

BAPI_MARC-REGIONORIG = IT_MATMASTER-HERKR.

BAPI_MARCX-COMM_CODE = 'X'.

BAPI_MARCX-COUNTRYORI = 'X'.

BAPI_MARCX-REGIONORIG = 'X'.

ENDIF.

BAPI_MARC-MRP_GROUP = IT_MATMASTER-DISGR.

BAPI_MARC-MRP_TYPE = IT_MATMASTER-DISMM.

BAPI_MARC-MRP_CTRLER = IT_MATMASTER-DISPO.

BAPI_MARC-LOTSIZEKEY = IT_MATMASTER-DISLS.

BAPI_MARC-MINLOTSIZE = IT_MATMASTER-BSTMI.

BAPI_MARC-ROUND_VAL = IT_MATMASTER-BSTRF.

BAPI_MARC-PROC_TYPE = IT_MATMASTER-BESKZ.

BAPI_MARC-BACKFLUSH = IT_MATMASTER-RGEKZ .

BAPI_MARC-ISS_ST_LOC = IT_MATMASTER-LGPRO.

BAPI_MARC-DETERM_GRP = IT_MATMASTER-EPRIO.

BAPI_MARC-SM_KEY = IT_MATMASTER-FHORI.

BAPI_MARC-PERIOD_IND = IT_MATMASTER-PERKZ.

BAPI_MARC-PLAN_STRGP = IT_MATMASTER-STRGR.

BAPI_MARC-CONSUMMODE = IT_MATMASTER-VRMOD.

BAPI_MARC-BWD_CONS = IT_MATMASTER-VINT1.

BAPI_MARC-FWD_CONS = IT_MATMASTER-VINT2.

BAPI_MARC-ALT_BOM_ID = IT_MATMASTER-ALTSL.

BAPI_MARC-PRODUCTION_SCHEDULER = IT_MATMASTER-FEVOR.

IF NOT IT_MATMASTER-Mtart EQ '65'.

BAPI_MARC-IND_POST_TO_INSP_STOCK = IT_MATMASTER-INSMK.

BAPI_MARC-OVER_TOL = IT_MATMASTER-UEETO.

BAPI_MARCX-IND_POST_TO_INSP_STOCK = 'X'.

BAPI_MARCX-OVER_TOL = 'X'.

ENDIF.

*----

-


> Novas Entradas

IF IT_MATMASTER-Mtart EQ '65'.

BAPI_MARC-PUR_GROUP = IT_MATMASTER-EKGRP .

BAPI_MARC-AUTO_P_ORD = IT_MATMASTER-KAUTB .

BAPI_MARC-GR_PR_TIME = IT_MATMASTER-WEBAZ .

BAPI_MARC-IND_POST_TO_INSP_STOCK = IT_MATMASTER-INSMK1 .

BAPI_MARC-SOURCELIST = IT_MATMASTER-KORDB .

BAPI_MARC-EXPIMPGRP = IT_MATMASTER-MTVER .

BAPI_MARCX-PUR_GROUP = 'X'.

BAPI_MARCX-AUTO_P_ORD = 'X'.

BAPI_MARCX-GR_PR_TIME = 'X'.

BAPI_MARCX-IND_POST_TO_INSP_STOCK = 'X'.

BAPI_MARCX-SOURCELIST = 'X'.

BAPI_MARCX-EXPIMPGRP = 'X'.

ENDIF.

*----

-


> Novas Entradas

BAPI_MARCX-PLANT = IT_MATMASTER-WERKS.

BAPI_MARCX-AVAILCHECK = 'X'.

BAPI_MARCX-LOADINGGRP = 'X'.

BAPI_MARCX-PROFIT_CTR = 'X'.

BAPI_MARCX-MRP_GROUP = 'X'.

BAPI_MARCX-MRP_TYPE = 'X'.

BAPI_MARCX-MRP_CTRLER = 'X'.

BAPI_MARCX-LOTSIZEKEY = 'X'.

BAPI_MARCX-MINLOTSIZE = 'X'.

BAPI_MARCX-ROUND_VAL = 'X'.

BAPI_MARCX-PROC_TYPE = 'X'.

BAPI_MARCX-BACKFLUSH = 'X'.

BAPI_MARCX-ISS_ST_LOC = 'X'.

BAPI_MARCX-DETERM_GRP = 'X'.

BAPI_MARCX-SM_KEY = 'X'.

BAPI_MARCX-PERIOD_IND = 'X'.

BAPI_MARCX-PLAN_STRGP = 'X'.

BAPI_MARCX-CONSUMMODE = 'X'.

BAPI_MARCX-BWD_CONS = 'X'.

BAPI_MARCX-FWD_CONS = 'X'.

BAPI_MARCX-ALT_BOM_ID = 'X'.

BAPI_MARCX-PRODUCTION_SCHEDULER = 'X'.

*----

-


Preencimento de dados Relativos a MLGN

BAPI_MLGN-WHSE_NO = 'S01'.

BAPI_MLGN-WITHDRAWAL = IT_MATMASTER-LTKZA_S01.

BAPI_MLGN-PLACEMENT = IT_MATMASTER-LTKZE_S01.

BAPI_MLGN-STGESECTOR = IT_MATMASTER-LGBKZ_S01.

BAPI_MLGN-L_EQUIP_1 = IT_MATMASTER-LHMG1.

BAPI_MLGN-L_EQUIP_2 = IT_MATMASTER-LHMG2.

BAPI_MLGN-L_EQUIP_3 = IT_MATMASTER-LHMG3.

BAPI_MLGN-LEQ_UNIT_1 = IT_MATMASTER-LHME1.

BAPI_MLGN-LEQ_UNIT_2 = IT_MATMASTER-LHME2.

BAPI_MLGN-LEQ_UNIT_3 = IT_MATMASTER-LHME3.

BAPI_MLGN-UNITTYPE_1 = IT_MATMASTER-LETY1.

BAPI_MLGN-UNITTYPE_2 = IT_MATMASTER-LETY2.

BAPI_MLGN-UNITTYPE_3 = IT_MATMASTER-LETY3.

BAPI_MLGNX-WHSE_NO = 'S01'.

BAPI_MLGNX-WITHDRAWAL = 'X'.

BAPI_MLGNX-PLACEMENT = 'X'.

BAPI_MLGNX-STGESECTOR = 'X'.

BAPI_MLGNX-L_EQUIP_1 = 'X'.

BAPI_MLGNX-L_EQUIP_2 = 'X'.

BAPI_MLGNX-L_EQUIP_3 = 'X'.

BAPI_MLGNX-LEQ_UNIT_1 = 'X'.

BAPI_MLGNX-LEQ_UNIT_2 = 'X'.

BAPI_MLGNX-LEQ_UNIT_3 = 'X'.

BAPI_MLGNX-UNITTYPE_1 = 'X'.

BAPI_MLGNX-UNITTYPE_2 = 'X'.

BAPI_MLGNX-UNITTYPE_3 = 'X'.

*----

-


Preencimento de dados Relativos a MBEW

  • BAPI_MBEW,

  • BAPI_MBEWX,

BAPI_MBEW-VAL_CLASS = IT_MATMASTER-BKLAS.

BAPI_MBEW-PRICE_CTRL = IT_MATMASTER-VPRSV.

BAPI_MBEW-STD_PRICE = IT_MATMASTER-VERPR.

BAPI_MBEW-PRICE_UNIT = IT_MATMASTER-PEINH.

BAPI_MBEW-VAL_AREA = 'CLPS'."IT_MATMASTER-BWKEY.

BAPI_MBEWX-VAL_AREA = 'CLPS'."IT_MATMASTER-BWKEY.

BAPI_MBEWX-VAL_CLASS = 'X'.

BAPI_MBEWX-PRICE_CTRL = 'X'.

BAPI_MBEWX-STD_PRICE = 'X'.

BAPI_MBEWX-PRICE_UNIT = 'X'.

  • ---------------------------------------------------> Material Descrition

IT_MATERIALDESC-LANGU = sy-langu. "'EN'.

IT_MATERIALDESC-MATL_DESC = IT_MATMASTER-MAKTX.

APPEND IT_materialdesc.

*----

-


Gross Weight, Volume and EAN

*Volume é preciso uma rotina de conversão

*----


*

  • *

*----


*

CALL FUNCTION 'CONVERSION_EXIT_CUNIT_INPUT'

EXPORTING

INPUT = IT_MATMASTER-VOLEH

  • LANGUAGE = SY-LANGU

IMPORTING

OUTPUT = VolumUnitConv

EXCEPTIONS

UNIT_NOT_FOUND = 1

OTHERS = 2

.

IF SY-SUBRC <> 0.

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

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

ENDIF.

CALL FUNCTION 'CONVERSION_EXIT_CUNIT_INPUT'

EXPORTING

INPUT = IT_MATMASTER-MEINS

  • LANGUAGE = SY-LANGU

IMPORTING

OUTPUT = UnitConv

EXCEPTIONS

UNIT_NOT_FOUND = 1

OTHERS = 2

.

IF SY-SUBRC <> 0.

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

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

ENDIF.

*----


*

  • *

*----


*

IT_UOM-GROSS_WT = IT_MATMASTER-BRGEW.

IT_UOM-ALT_UNIT = UnitConv.

  • IT_UOM-ALT_UNIT_ISO = IT_MATMASTER-GEWEI.

IT_UOM-UNIT_OF_WT = IT_MATMASTER-GEWEI.

IT_UOM-EAN_UPC = IT_MATMASTER-EAN11.

IT_UOM-EAN_CAT = IT_MATMASTER-NUMTP.

IT_UOM-VOLUME = IT_MATMASTER-VOLUM.

IT_UOM-VOLUMEUNIT = VolumUnitConv.

  • IT_UOM-VOLUMEUNIT_ISO = IT_MATMASTER-VOLEH.

APPEND IT_UOM.

IT_UOMX-ALT_UNIT = IT_MATMASTER-MEINS.

  • IT_UOMX-ALT_UNIT_ISO = IT_MATMASTER-GEWEI.

IT_UOMX-GROSS_WT = 'X'.

IT_UOMX-UNIT_OF_WT = 'X'.

IT_UOMX-EAN_UPC = 'X'.

IT_UOMX-EAN_CAT = 'X'.

*Volume

IT_UOMX-VOLUME = 'X'.

IT_UOMX-VOLUMEUNIT = 'X'.

  • IT_UOMX-VOLUMEUNIT_ISO = 'X'.

APPEND IT_UOMX.

CALL FUNCTION 'BAPI_MATERIAL_SAVEDATA'

EXPORTING

headdata = BAPIMATHEAD

CLIENTDATA = BAPI_MARA

CLIENTDATAX = BAPI_MARAx

PLANTDATA = BAPI_MARc

PLANTDATAX = BAPI_MARcx

VALUATIONDATA = BAPI_MBEW

VALUATIONDATAX = BAPI_MBEWX

WAREHOUSENUMBERDATA = BAPI_MLGN

WAREHOUSENUMBERDATAX = BAPI_MLGNX

SALESDATA = BAPI_MVKE

SALESDATAX = BAPI_MVKEX

IMPORTING

RETURN = IT_RETURN

TABLES

MATERIALDESCRIPTION = IT_MATERIALDESC

UNITSOFMEASURE = IT_UOM

UNITSOFMEASUREX = IT_UOMX

MATERIALLONGTEXT = text

TAXCLASSIFICATIONS = it_MLAN.

if it_return-type eq 'S'.

CALL FUNCTION 'BAPI_TRANSACTION_COMMIT'.

endif.

  • WAIT UP TO 10 SECONDS.

WRITE : / IT_RETURN-MESSAGE.

*

CLEAR: IT_MATERIALDESC[],

IT_UOM[],

IT_UOMX[],

it_MLAN[],

IT_RETURN,

text,

BAPIMATHEAD,

BAPI_MARA,

BAPI_MARAx,

BAPI_MARc,

BAPI_MARcx,

BAPI_MBEW,

BAPI_MBEWX,

BAPI_MLGN,

BAPI_MLGNX,

BAPI_MVKE,

BAPI_MVKEX

.

ENDLOOP.