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: 

Gross Weight in MARA using BAPI_MATERIAL_SAVEDATA

Former Member
0 Kudos

Hi All,

I have a Program which uses BAPI_MATERIAL_SAVEDATA to create materials. My issues is to fill the Gross weight field on the Basic Data 1 Tab of MM01/MM03. I tried the UNITSOFMEASURE / UNITSOFMEASUREX parameters but they try to populate MARM-BRGEW and the field i need to fill is MARA-BRGEW.

How can i fill the Field Gross Weight on tab Basic Data 1.

Thanks in advance.

Message was edited by: abap Help

12 REPLIES 12

former_member188685
Active Contributor
0 Kudos

Hi,

Check this..sample code..

REPORT Z_BAPI_MAT.


**********************************************************************
*                STRUCTURE  DECLARATIONS                             *
**********************************************************************

TABLES: BAPIMATHEAD,  "Headerdata
        BAPI_MARA,    "Clientdata
        BAPI_MARAX,   "Clientdatax
        BAPI_MARC,    "Plantdata
        BAPI_MARCX,   "Plantdatax
        BAPI_MAKT,    "Material description
        BAPIRET2.     "Return messages

DATA:V_FILE TYPE STRING.


DATA:
  BEGIN OF LSMW_MATERIAL_MASTER,
    MATNR(018) TYPE C,  "Material number
    MTART(004) TYPE C,  "Material type
    MBRSH(001) TYPE C,  "Industry sector
    WERKS(004) TYPE C,  "Plant
    MAKTX(040) TYPE C,  "Material description
    DISMM(002) TYPE C,  "Extra Field Added In the Program as itsrequired
    MEINS(003) TYPE C,  "Base unit of measure
    MATKL(009) TYPE C,  "Material group
    SPART(002) TYPE C,  "Division
    LABOR(003) TYPE C,  "Lab/office
    PRDHA(018) TYPE C,  "Product hierarchy
    MSTAE(002) TYPE C,  "X-plant matl status
    MTPOS_MARA(004) TYPE C,  "Gen item cat group
   <b> BRGEW(017) TYPE C,  "Gross weight</b>    GEWEI(003) TYPE C,  "Weight unit
    NTGEW(017) TYPE C,  "Net weight
    GROES(032) TYPE C,  "Size/Dimensions
    MAGRV(004) TYPE C,  "Matl grp pack matls
    BISMT(018) TYPE C,  "Old material number
    WRKST(048) TYPE C,  "Basic material
    PROFL(003) TYPE C,  "DG indicator profile
    KZUMW(001) TYPE C,  "Environmentally rlvt
    BSTME(003) TYPE C,  "Order unit
    VABME(001) TYPE C,
    EKGRP(003) TYPE C,  "Purchasing group
    XCHPF(001) TYPE C,  "Batch management
    EKWSL(004) TYPE C,  "Purchasing key value
    WEBAZ(003) TYPE C,  "GR processing time
    MFRPN(040) TYPE C,  "Manufacturer part number
    MFRNR(010) TYPE C,  "Manufacturer number
    VPRSV(001) TYPE C,  "Price control indicator
    STPRS(015) TYPE C,  "Standard price
    BWPRH(014) TYPE C,  "Commercial price1
    BKLAS(004) TYPE C,  "Valuation class
  END OF LSMW_MATERIAL_MASTER.


**********************************************************************
*                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.

*to return messages
DATA:BEGIN OF IT_RETURN OCCURS 0.
     INCLUDE STRUCTURE BAPIRET2.
DATA:END OF IT_RETURN.

************************************************************************
*  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.

**********************************************************************
*                DATA POPULATIONS                                    *
**********************************************************************


LOOP AT  IT_MATMASTER.
  BAPIMATHEAD-MATERIAL = IT_MATMASTER-MATNR.
  BAPIMATHEAD-IND_SECTOR = IT_MATMASTER-Mbrsh.
  BAPIMATHEAD-MATL_TYPE = IT_MATMASTER-Mtart.
  BAPIMATHEAD-BASIC_VIEW = 'X'.
  BAPIMATHEAD-PURCHASE_VIEW = 'X'.
  BAPIMATHEAD-ACCOUNT_VIEW = 'X'.
  BAPI_MARA-MATL_GROUP = IT_MATMASTER-MATKL.
  BAPI_MARA-OLD_MAT_NO = IT_MATMASTER-BISMT.
  BAPI_MARA-BASE_UOM = IT_MATMASTER-MEINS.
  BAPI_MARA-BASIC_MATL = IT_MATMASTER-WRKST.
  BAPI_MARA-MFR_NO = IT_MATMASTER-MFRNR.
  BAPI_MARAX-MATL_GROUP = 'X'.
  BAPI_MARAX-OLD_MAT_NO = 'X'.
  BAPI_MARAX-BASE_UOM = 'X'.
  BAPI_MARAX-BASIC_MATL = 'X'.
  BAPI_MARAX-MFR_NO = 'X'.
  BAPI_MARC-PLANT = IT_MATMASTER-WERKS.
  BAPI_MARC-PUR_GROUP = IT_MATMASTER-EKGRP.
  BAPI_MARCX-PLANT = IT_MATMASTER-WERKS.
  BAPI_MARCX-PUR_GROUP = 'X'.
  IT_MATERIALDESC-LANGU = 'EN'.
  IT_MATERIALDESC-MATL_DESC = IT_MATMASTER-MAKTX.
  append IT_materialdesc.
  CALL FUNCTION 'BAPI_MATERIAL_SAVEDATA'
    EXPORTING
      headdata                   = BAPIMATHEAD
      CLIENTDATA                 = BAPI_MARA
      CLIENTDATAX                = BAPI_MARAx
     PLANTDATA                  = BAPI_MARc
     PLANTDATAX                 = BAPI_MARcx
*     FORECASTPARAMETERS         =
*     FORECASTPARAMETERSX        =
*     PLANNINGDATA               =
*     PLANNINGDATAX              =
*     STORAGELOCATIONDATA        =
*     STORAGELOCATIONDATAX       =
*     VALUATIONDATA              =
*     VALUATIONDATAX             =
*     WAREHOUSENUMBERDATA        =
*     WAREHOUSENUMBERDATAX       =
*     SALESDATA                  =
*     SALESDATAX                 =
*     STORAGETYPEDATA            =
*     STORAGETYPEDATAX           =
*     FLAG_ONLINE                = ' '
*     FLAG_CAD_CALL              = ' '
   IMPORTING
     RETURN                     = IT_RETURN
   TABLES
     MATERIALDESCRIPTION        = IT_MATERIALDESC
*     UNITSOFMEASURE             =
*     UNITSOFMEASUREX            =
*     INTERNATIONALARTNOS        =
*     MATERIALLONGTEXT           =
*     TAXCLASSIFICATIONS         =
*     RETURNMESSAGES             =
*     PRTDATA                    =
*     PRTDATAX                   =
*     EXTENSIONIN                =
*     EXTENSIONINX               =
            .
call function 'BAPI_TRANSACTION_COMMIT'.
 WRITE:/    IT_RETURN-TYPE,
        2   IT_RETURN-ID,
        22  IT_RETURN-NUMBER,
        25  IT_RETURN-MESSAGE.
*            IT_RETURN-LOG_NO,
*            IT_RETURN-LOG_MSG_NO,
*            IT_RETURN-MESSAGE_V1,
*            IT_RETURN-MESSAGE_V2,
*            IT_RETURN-MESSAGE_V3,
*            IT_RETURN-MESSAGE_V4,
*            IT_RETURN-PARAMETER,
*            IT_RETURN-ROW,
*            IT_RETURN-FIELD,
*            IT_RETURN-SYSTEM.

ENDLOOP.

Regards

vijay

0 Kudos

HI Vijay,

Thanks for the code.

However, i do not see where the Gross Weight is being populated. I see it declared but not populated.

Help me out in seeing where to check.

Sorry for the trouble...

Thanks again.

0 Kudos

Hello,

In my opinion Gross weight is not available in that BAPI parameters. Use instead FM MATERIAL_MAINTAIN_DARK. Actually BAPI_MATERIAL_SAVEDATA uses it also.

Br,

Hannu

0 Kudos

<deleted>

0 Kudos
REPORT Z_CHANGED_CODe .

*TO CREATE MATERIAL USING BAPI.

**********************************************************************
*                STRUCTURE  DECLARATIONS                             *
**********************************************************************

TABLES: BAPIMATHEAD,  "Headerdata
        BAPI_MARA,    "Clientdata
        BAPI_MARAX,   "Clientdatax
        BAPI_MARC,    "Plantdata
        BAPI_MARCX,   "Plantdatax
        BAPI_MAKT,    "Material description
        BAPI_MBEW,    "VALUATION DATA
        BAPI_MBEWX,
        BAPI_MARM,
        BAPI_MARMX,
        bapi_mean,
        BAPIRET2.     "Return messages

DATA:V_FILE TYPE STRING.   "input data file



DATA:
  BEGIN OF LSMW_MATERIAL_MASTER,
    MATNR(018) TYPE C,  "Material number
    MTART(004) TYPE C,  "Material type
    MBRSH(001) TYPE C,  "Industry sector
    WERKS(004) TYPE C,  "Plant
    MAKTX(040) TYPE C,  "Material description
    DISMM(002) TYPE C,  "Extra Field Added In the Program as itsrequired
    MEINS(003) TYPE C,  "Base unit of measure
    MATKL(009) TYPE C,  "Material group
    SPART(002) TYPE C,  "Division
    LABOR(003) TYPE C,  "Lab/office
    PRDHA(018) TYPE C,  "Product hierarchy
    MSTAE(002) TYPE C,  "X-plant matl status
    MTPOS_MARA(004) TYPE C,  "Gen item cat group
    <b>BRGEW(017) TYPE C,  "Gross weight
    GEWEI(003) TYPE C,  "Weight unit</b>    NTGEW(017) TYPE C,  "Net weight
    GROES(032) TYPE C,  "Size/Dimensions
    MAGRV(004) TYPE C,  "Matl grp pack matls
    BISMT(018) TYPE C,  "Old material number
    WRKST(048) TYPE C,  "Basic material
    PROFL(003) TYPE C,  "DG indicator profile
    KZUMW(001) TYPE C,  "Environmentally rlvt
    BSTME(003) TYPE C,  "Order unit
    VABME(001) TYPE C,
    EKGRP(003) TYPE C,  "Purchasing group
    XCHPF(001) TYPE C,  "Batch management
    EKWSL(004) TYPE C,  "Purchasing key value
    WEBAZ(003) TYPE C,  "GR processing time
    MFRPN(040) TYPE C,  "Manufacturer part number
    MFRNR(010) TYPE C,  "Manufacturer number
    VPRSV(001) TYPE C,  "Price control indicator
    STPRS(015) TYPE C,  "Standard price
    BWPRH(014) TYPE C,  "Commercial price1
    BKLAS(004) TYPE C,  "Valuation class
    bwkey(004) type c,

  END OF LSMW_MATERIAL_MASTER.


**********************************************************************
*                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_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.

************************************************************************
*  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.

*ELSE.
*DELETE IT_MATMASTER INDEX 1.
ENDIF.

**********************************************************************
*                DATA POPULATIONS                                    *
**********************************************************************


LOOP AT  IT_MATMASTER.
*HEADER DATA
  BAPIMATHEAD-MATERIAL = IT_MATMASTER-MATNR.
  BAPIMATHEAD-IND_SECTOR = IT_MATMASTER-Mbrsh.
  BAPIMATHEAD-MATL_TYPE = IT_MATMASTER-Mtart.
  BAPIMATHEAD-BASIC_VIEW = 'X'.
  BAPIMATHEAD-PURCHASE_VIEW = 'X'.
  BAPIMATHEAD-ACCOUNT_VIEW = 'X'.
*CLIENTDATA
  BAPI_MARA-MATL_GROUP = IT_MATMASTER-MATKL.
  BAPI_MARA-DIVISION = IT_MATMASTER-SPART.
  BAPI_MARA-DSN_OFFICE = IT_MATMASTER-LABOR.
  BAPI_MARA-PROD_HIER = IT_MATMASTER-PRDHA.
  BAPI_MARA-PUR_STATUS = IT_MATMASTER-MSTAE.
  BAPI_MARA-ITEM_CAT = IT_MATMASTER-MTPOS_MARA.
  BAPI_MARA-NET_WEIGHT = IT_MATMASTER-NTGEW.
*  BAPI_MARA-PO_UNIT = 'KG'.
*  BAPI_MARA-UNIT_OF_WT_ISO = 'KG'.
  BAPI_MARA-UNIT_OF_WT = 'KG'.
*  BAPI_MARA-PACK_VO_UN = 'KG'.
*  BAPI_MARA-BASE_UOM_ISO = 'KG'.
  bapi_mara-size_dim = it_matmaster-groes.
  BAPI_MARA-MAT_GRP_SM = IT_MATMASTER-MAGRV.
  BAPI_MARA-OLD_MAT_NO = IT_MATMASTER-BISMT.
  BAPI_MARA-BASE_UOM = IT_MATMASTER-MEINS.
  BAPI_MARA-BASIC_MATL = IT_MATMASTER-WRKST.
  BAPI_MARA-HAZMATPROF = IT_MATMASTER-PROFL.
  BAPI_MARA-ENVT_RLVT = IT_MATMASTER-KZUMW.
  BAPI_MARA-PO_UNIT = IT_MATMASTER-BSTME.
  BAPI_MARA-VAR_ORD_UN = IT_MATMASTER-VABME.
  BAPI_MARA-PUR_VALKEY = IT_MATMASTER-EKWSL.
  BAPI_MARA-MANU_MAT = IT_MATMASTER-MFRPN.
  BAPI_MARA-MFR_NO = IT_MATMASTER-MFRNR.
  BAPI_MARAX-MATL_GROUP = 'X'.
  BAPI_MARAX-DIVISION = 'X'.
  BAPI_MARAX-DSN_OFFICE = 'X'.
  BAPI_MARAX-PROD_HIER = 'X'.
  BAPI_MARAX-PUR_STATUS = 'X'.
  BAPI_MARAX-ITEM_CAT = 'X'.
  BAPI_MARAX-NET_WEIGHT = 'X'.
  BAPI_MARAX-UNIT_OF_WT = 'X'.
*  BAPI_MARAX-UNIT_OF_WT_ISO = 'X'.
  bapi_maraX-size_dim = 'X'.
  BAPI_MARAX-MAT_GRP_SM = 'X'.
  BAPI_MARAX-OLD_MAT_NO = 'X'.
  BAPI_MARAX-BASE_UOM = 'X'.
  BAPI_MARAX-BASE_UOM_ISO = 'X'.
  BAPI_MARAX-BASIC_MATL = 'X'.
  BAPI_MARAX-MFR_NO = 'X'.
  BAPI_MARAX-HAZMATPROF = 'X'.
  BAPI_MARAX-ENVT_RLVT = 'X'.
  BAPI_MARAX-PO_UNIT = 'X'.
*  BAPI_MARAX-PACK_VO_UN = 'X'.
  BAPI_MARAX-VAR_ORD_UN = 'X'.
  BAPI_MARAX-PUR_VALKEY = 'X'.
  BAPI_MARAX-MANU_MAT = 'X'.
  BAPI_MARAX-MFR_NO = 'X'.

*PLANT DATA

  BAPI_MARC-PLANT = IT_MATMASTER-WERKS.
  BAPI_MARC-PUR_GROUP = IT_MATMASTER-EKGRP.
  BAPI_MARC-BATCH_MGMT = IT_MATMASTER-XCHPF.
  BAPI_MARC-GR_PR_TIME = IT_MATMASTER-WEBAZ.
  BAPI_MARCX-PLANT = IT_MATMASTER-WERKS.
  BAPI_MARCX-PUR_GROUP = 'X'.
  BAPI_MARCX-BATCH_MGMT = 'X'.
  BAPI_MARCX-GR_PR_TIME = 'X'.

*VALUATION DATA
  BAPI_MBEW-PRICE_CTRL = IT_MATMASTER-VPRSV.
  BAPI_MBEW-STD_PRICE = IT_MATMASTER-STPRS.
  BAPI_MBEW-COMMPRICE1 = IT_MATMASTER-BWPRH.
  BAPI_MBEW-VAL_AREA = IT_MATMASTER-BWKEY.
  BAPI_MBEW-VAL_CLASS = IT_MATMASTER-BKLAS.
  BAPI_MBEWX-PRICE_CTRL = 'X'.
  BAPI_MBEWX-STD_PRICE = 'X'.
  BAPI_MBEWX-COMMPRICE1 = 'X'.
  BAPI_MBEWX-VAL_AREA = IT_MATMASTER-BWKEY.
  BAPI_MBEWX-VAL_CLASS = 'X'.
  IT_MATERIALDESC-LANGU = 'EN'.
  IT_MATERIALDESC-MATL_DESC = IT_MATMASTER-MAKTX.
  append IT_materialdesc.
<b>  IT_UOM-GROSS_WT = IT_MATMASTER-BRGEW.
  IT_UOM-ALT_UNIT = 'KG'.
  IT_UOM-ALT_UNIT_ISO = 'KG'.
    IT_UOM-UNIT_OF_WT = IT_MATMASTER-GEWEI.
    APPEND IT_UOM.
  IT_UOMX-GROSS_WT = 'X'.
  IT_UOMX-ALT_UNIT = 'KG'.
  IT_UOMX-ALT_UNIT_ISO = 'KG'.
  IT_UOMX-UNIT_OF_WT = 'X'.


  APPEND IT_UOMX.</b>

  it_mean-unit = 'KD3'.
  append it_mean.

  it_mltx-langu = 'E'.
  it_mltx-text_name = it_matmaster-matnr.
  APPEND IT_MLTX.
  CALL FUNCTION 'BAPI_MATERIAL_SAVEDATA'
    EXPORTING
      headdata                   = BAPIMATHEAD
      CLIENTDATA                 = BAPI_MARA
      CLIENTDATAX                = BAPI_MARAx
     PLANTDATA                  =  BAPI_MARc
     PLANTDATAX                 =  BAPI_MARcx
*     FORECASTPARAMETERS         =
*     FORECASTPARAMETERSX        =
*     PLANNINGDATA               =
*     PLANNINGDATAX              =
*     STORAGELOCATIONDATA        =
*     STORAGELOCATIONDATAX       =
     VALUATIONDATA              = BAPI_MBEW
     VALUATIONDATAX             = BAPI_MBEWX
*     WAREHOUSENUMBERDATA        =
*     WAREHOUSENUMBERDATAX       =
*     SALESDATA                  =
*     SALESDATAX                 =
*     STORAGETYPEDATA            =
*     STORAGETYPEDATAX           =
*     FLAG_ONLINE                = ' '
*     FLAG_CAD_CALL              = ' '
   IMPORTING
     RETURN                     = IT_RETURN
   TABLES
     MATERIALDESCRIPTION        = IT_MATERIALDESC
     UNITSOFMEASURE             = IT_UOM
     UNITSOFMEASUREX            = IT_UOMX
     INTERNATIONALARTNOS        = it_mean
*     MATERIALLONGTEXT           = IT_MLTX
*     TAXCLASSIFICATIONS         =
*     RETURNMESSAGES             =
*     PRTDATA                    =
*     PRTDATAX                   =
*     EXTENSIONIN                =
*     EXTENSIONINX               =
            .

read table it_return with key TYPE = 'S'.
if sy-subrc = 0.
  CALL FUNCTION 'BAPI_TRANSACTION_COMMIT'
*   EXPORTING
*     WAIT          =
*   IMPORTING
*     RETURN        =
            .
*else.
*
*CALL FUNCTION 'BAPI_TRANSACTION_ROLLBACK'
** IMPORTING
**   RETURN        =
*          .
*
endif.

 WRITE:/    IT_RETURN-TYPE,
        2   IT_RETURN-ID,
        22  IT_RETURN-NUMBER,
        25  IT_RETURN-MESSAGE.
*            IT_RETURN-LOG_NO,
*            IT_RETURN-LOG_MSG_NO,
*            IT_RETURN-MESSAGE_V1,
*            IT_RETURN-MESSAGE_V2,
*            IT_RETURN-MESSAGE_V3,
*            IT_RETURN-MESSAGE_V4,
*            IT_RETURN-PARAMETER,
*            IT_RETURN-ROW,
*            IT_RETURN-FIELD,
*            IT_RETURN-SYSTEM.



ENDLOOP.

check the above code , i modified the logic,.now you can see in this BRGEW to UOM data.

Regards

vijay

0 Kudos

Awesome..!

Thanks a heap.

I guess the BAPI internally maps MARM to MARA.

Very Helpful.

0 Kudos

Yes. it will take it UOM tables that we pass it to BAPI.

Good Luck.

Regards

vijay

0 Kudos

Hi,

Is it possible to use FM MATERIAL_MAINTAIN_DARK from remote?

I'm developing application in Java and want to pass somehow GROSS_WEIGHT to MARA. There is no appropriate field in BAPI_MATERIAL_SAVEDATA. I've already passed GROSS_WEIGHT to MARM, but it is not what I expect.

Do you have any source code? Any example how to use this FM?

BR,

Rafal

0 Kudos

Hi,

Do you know what is the name of the field for gross weight in MARA, so that I'll be able to pass data to this field from remote (in my case Java and Jco)?

I'll be very grateful for help.

Looking forward any answer.

BR,

Rafal

0 Kudos

Long time has passed since this solution was posted... But I'm facing the same problem...

And this solution (populating the fields in MARM and MARMX) isn't successful.

It's the unique field I don't success to populate...

Is there some other trick, or detail, I miss ?

Thanks for your help.


0 Kudos

This is i really simplified program which worked for setting the gross weight.

REPORT  ZGROSS.

data: headdata like bapimathead,

       uom      like table of bapi_marm  with header line,

       uomx     like table of bapi_marmx with header line.

parameters: p_matnr  like mara-matnr,   " Material

             p_uom    like mara-meins,   " Material UoM

             p_weight like marm-brgew,   " Gross weight

             p_w_unit like marm-gewei.   " Gross Weight Unit

start-of-selection.

clear: headdata,

        uom[],

        uomx[].

   headdata-material   = p_matnr.

   headdata-basic_view = 'X'.

   uom-alt_unit  = p_uom.

   uomx-alt_unit = p_uom.   " This is often forgot to fill

   uom-gross_wt  = p_weight.

   uomx-gross_wt = 'X'.

   uom-unit_of_wt  = p_w_unit.

   uomx-unit_of_wt = 'X'.

   append uom.

   append uomx.

   CALL FUNCTION 'BAPI_MATERIAL_SAVEDATA'

     EXPORTING

       headdata                   = headdata

     TABLES

       UNITSOFMEASURE             = uom

       UNITSOFMEASUREX            = uomx.

0 Kudos

Thank you, Olav !

The fact is that I was blinded by the name of the structure "unitofmeasureX" ... And I was putting "X" in all fields of this structure...

Now, it's working fine, thank you !