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 use BAPI BAPI_MATERIAL_SAVEDATA

Former Member
0 Kudos

Hi,

I'm tryng to use the bapi BAPI_MATERIAL_SAVEDATA to create and change material.

Thanks to his forum, I created a simple program to understand how the BAPI works.

My problem is that the BAPI doesn't give me error message but doesn't create the material.

Any suggest?

REPORT Z_BAPI_MAT.

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

  • STRUCTURE DECLARATIONS *

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

TABLES: BAPIMATHEAD, "Headerdata

BAPI_MARA, "Clientdata

BAPI_MARAX, "Clientdatax

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

MEINS(003) TYPE C, "Base unit of measure

MATKL(009) TYPE C, "Material group

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.

DATA:BEGIN OF BAPI_MATRETURN2 OCCURS 0.

INCLUDE STRUCTURE BAPI_MATRETURN2.

DATA:END OF BAPI_MATRETURN2.

DATA:BEGIN OF BAPIRET3 OCCURS 0.

INCLUDE STRUCTURE BAPIRET2.

DATA:END OF BAPIRET3.

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

*

  • SELECTION SCREEN

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

*

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

PARAMETERS:P_FILE LIKE RLGRAP-FILENAME OBLIGATORY default 'c:\test.txt'.

SELECTION-SCREEN END OF BLOCK B1 .

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

  • TO UPLOAD THE DATA *

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

START-OF-SELECTION.

CALL FUNCTION 'WS_UPLOAD'

EXPORTING

  • CODEPAGE = ' '

FILENAME = p_file

FILETYPE = 'DAT'

TABLES

data_tab = IT_MATMASTER

.

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

  • 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'.

BAPI_MARA-MATL_GROUP = IT_MATMASTER-MATKL.

BAPI_MARA-BASE_UOM = IT_MATMASTER-MEINS.

BAPI_MARAX-MATL_GROUP = 'X'.

BAPI_MARAX-BASE_UOM = '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

FLAG_ONLINE = ' '

  • FLAG_CAD_CALL = ' '

IMPORTING

RETURN = IT_RETURN

TABLES

MATERIALDESCRIPTION = IT_MATERIALDESC

RETURNMESSAGES = BAPI_MATRETURN2

.

CALL FUNCTION 'BAPI_TRANSACTION_COMMIT'

EXPORTING

WAIT = 'X'

IMPORTING

RETURN = BAPIRET3

.

  • Output message

WRITE:/ IT_MATMASTER-matnr,'->',

IT_RETURN-TYPE,

20 IT_RETURN-ID,

42 IT_RETURN-NUMBER,

45 IT_RETURN-MESSAGE.

loop at BAPI_MATRETURN2.

write: / BAPI_MATRETURN2.

endloop.

loop at BAPIRET3.

write: / BAPIRET3.

endloop.

ENDLOOP.

7 REPLIES 7

Former Member
0 Kudos

hi,

Check these Links out

Regards,

Santosh

0 Kudos

Do you have some documentation?

0 Kudos

Are u lookin for the FM documentation .. It's a bit long .. Neways here it goes ..

You use this method to create new material master data or to change existing material master data. The data on a material can be transferred for each call.

When creating material master data, you must transfer the material number, the material type, and the industry sector to the method. You must also enter a material description and its language.

When changing material master data, you need enter only the material number.

In the header data, you must select at least one view for which data is to be created. Depending on the view selected, you must maintain other required parameters. If you do not enter values for all of the required parameters, the method is ended with an error message.

The corresponding fields in the tables (such as CLIENTDATA) must first be supplied with data by the calling program. An indicator must also be set for each of these fields so that the data is written to the database by the method. This requires the calling program to supply the corresponding field with the indicator in a checkbox table (for example, CLIENTDATAX). Checkbox tables exist for tables that do not contain any language-dependent texts (MAKT, MLTX), International Article Numbers (MEAN), or tax classifications (MLAN). Several data records for a material can be created in these tables.

If a structure contains fields for units of measurement (such as structure CLIENTDATA, field BASE_UOM), language indicators (such as structure MATERIALDESCRIPTION, field LANGU), or country indicators (such as structure TAXCLASSIFICATIONS, field DEPCOUNTRY), there is always a field of the same name with the ending _ISO. This makes it possible to transfer either the internally used SAP code or a standardized ISO code for the units of measurement, language indicators, or country indicators. ISO codes are converted to an SAP code internally for further processing. The ISO code is used only if the SAP code is not transferred. If you use ISO codes, there must be a unique assignment of the ISO code to the SAP code in the following activities in Customizing for Global Parameters:

Check Units of Measurement

Define Countries

If you want to maintain long texts (basic data texts, internal comments, purchase order texts, material memos, or sales texts) or customer-defined fields for a material, some special conditions have to be observed. They are described in the documentation for parameters MATERIALLONGTEXT and EXTENSIONIN.

<b>But my advise is that you navigate through the FM doc through the SAP screen.Execute SE37 and click on FM documentation and then look into the parameters one by one.They are highlighted in BLUE color.</b>

<i>Reward helpful answers</i>

Cheers

Nishanth

former_member188685
Active Contributor
0 Kudos

Hi,

are you giving all the Parameters Properly, try to Debug it and check it. it may be because of commit problem. try to Check that, in Debug definitely you can Able to Create the Material.

or else you can use this Direct Input Program to create the Material.

REPORT  Z_MATERIAL_CREATION                     .

**STANDARD STRUCTURES FOR MATERIAL CREATION
TABLES:
  BGR00,
  BMM00,
  BMMH1.
**DATA Declarations
DATA:C_ZTEST(60) TYPE C ,
     C_X TYPE C ,
     C_N TYPE C ,
     V_FILE TYPE STRING.
**FILED SYMBOL TO PASS THE NODATA '/'
FIELD-SYMBOLS: <F> .
***STRUCTURE TO HOLD THE FLAT FILE DATA
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 it is required
    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
    BRGEW(017) TYPE C,  "Gross weight
    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
  END OF LSMW_MATERIAL_MASTER.

**INTERNAL TABLE TO HOLD THE MATERIAL MASTER DATA
DATA:
  BEGIN OF MATERIAL_MASTER OCCURS 0.
        INCLUDE STRUCTURE LSMW_MATERIAL_MASTER.

DATA:
  END OF MATERIAL_MASTER.


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



************************************************************************
* START-OF_SELECTION
************************************************************************
START-OF-SELECTION.
  V_FILE = P_FILE.
**UPLOADING THE DATA TO THE FLAT FILE
  CALL FUNCTION 'GUI_UPLOAD'
    EXPORTING
      FILENAME                      = V_FILE
     FILETYPE                      = 'ASC'
     HAS_FIELD_SEPARATOR           = 'X'
*     HEADER_LENGTH                 = 0
*     READ_BY_LINE                  = 'X'
*     DAT_MODE                      = ' '
*     CODEPAGE                      = ' '
*     IGNORE_CERR                   = ABAP_TRUE
*     REPLACEMENT                   = '#'
*   IMPORTING
*     FILELENGTH                    =
*     HEADER                        =
    TABLES
      DATA_TAB                      = MATERIAL_MASTER
   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.
    DELETE MATERIAL_MASTER INDEX 1.
  ENDIF.
**CONSTANTS
  C_ZTEST = 'Ztest.lsmw.conv'(001).
  C_X = 'X'(003).
  C_N ='N'(004).
IF NOT MATERIAL_MASTER IS INITIAL.

***POPULATING BGR00 STRUCTURE
  PERFORM CONVERT_0000.                                     " BGR00

***POPULATING BMM00 STRUCTURE
  PERFORM POPULATE_DATA CHANGING BMM00.

***POPULATING BMMH1 STRUCTURE
  PERFORM POPULATE_DATA CHANGING BMMH1.

**LOOPING THE DATA AND UPDATING THE STRUCTURES

  LOOP AT MATERIAL_MASTER.
    OPEN DATASET C_ZTEST FOR APPENDING IN  TEXT MODE ENCODING
    DEFAULT.

    PERFORM CONVERT_0002.                                   " BMM00
    PERFORM CONVERT_0003.                                   " BMMH1

    CLOSE DATASET  C_ZTEST.
  ENDLOOP.   "END OF MATERIAL_MASTER LOOP

ENDIF.
*&--------------------------------------------------------------------*
*&      END-OF_SELECTION
*&--------------------------------------------------------------------*

END-OF-SELECTION.
  SUBMIT RMDATIND WITH %%%_R_P = C_X
                  WITH %%%_PHY = C_ZTEST
                  WITH SPERR = C_N.




*&--------------------------------------------------------------------*
*&      Form  convert_0000
*&--------------------------------------------------------------------*
*       text
*---------------------------------------------------------------------*
FORM CONVERT_0000.                                          " BGR00

  OPEN DATASET C_ZTEST FOR OUTPUT IN  TEXT MODE ENCODING DEFAULT
  .

 MOVE: '0' TO BGR00-STYPE,
         'ZTEST' TO BGR00-GROUP,
         SY-MANDT TO BGR00-MANDT,
         SY-UNAME TO BGR00-USNAM,
         'X' TO BGR00-XKEEP,
         '/' TO BGR00-NODATA.


  TRANSFER BGR00 TO C_ZTEST.
  CLOSE DATASET C_ZTEST.

ENDFORM.                    "convert_0001



*&--------------------------------------------------------------------*
*&      Form  convert_0002
*&--------------------------------------------------------------------*
*       text
*---------------------------------------------------------------------*
FORM CONVERT_0002.                                          " BMM00


* --- BMM00-STYPE
  BMM00-STYPE = '1'.

* --- BMM00-TCODE
  BMM00-TCODE = 'MM01'.

* --- BMM00-MATNR
  IF NOT MATERIAL_MASTER-MATNR IS INITIAL.
    BMM00-MATNR = MATERIAL_MASTER-MATNR.
  ELSE.
    BMM00-MATNR = '/'.
  ENDIF.
* --- BMM00-MBRSH
  IF NOT MATERIAL_MASTER-MBRSH IS INITIAL.
    BMM00-MBRSH = MATERIAL_MASTER-MBRSH.
  ELSE.
    BMM00-MBRSH = '/'.
  ENDIF.

* --- BMM00-MTART
  IF NOT MATERIAL_MASTER-MTART IS INITIAL.
    BMM00-MTART = MATERIAL_MASTER-MTART.
  ELSE.
    BMM00-MTART = '/'.
  ENDIF.


* --- BMM00-WERKS
  IF NOT MATERIAL_MASTER-WERKS IS INITIAL.
    BMM00-WERKS = MATERIAL_MASTER-WERKS.
  ELSE.
    BMM00-WERKS = '/'.
  ENDIF.


  BMM00-XEIB1 = 'X'.  " BMM00-xeib1 = '/'.

  BMM00-XEIE1 = 'X'.  " BMM00-xeie1 = '/'.

  BMM00-XEIK1 = 'X'.  " BMM00-xeik1 = '/'.

  TRANSFER BMM00 TO C_ZTEST.

ENDFORM.                    "convert_0002

*&--------------------------------------------------------------------*
*&      Form  convert_0003
*&--------------------------------------------------------------------*
*       text
*---------------------------------------------------------------------*
FORM CONVERT_0003.                                          " BMMH1


* --- BMMH1-STYPE
  BMMH1-STYPE = '2'.

* --- BMMH1-MEINS
  IF NOT MATERIAL_MASTER-MEINS IS INITIAL.
    BMMH1-MEINS = MATERIAL_MASTER-MEINS.
  ELSE.
    BMMH1-MEINS = '/'.
  ENDIF.


* --- BMMH1-MAKTX
  IF NOT MATERIAL_MASTER-MAKTX IS INITIAL.
    BMMH1-MAKTX = MATERIAL_MASTER-MAKTX.
  ELSE.
    BMMH1-MAKTX = '/'.
  ENDIF.


* --- BMMH1-MATKL
  IF NOT MATERIAL_MASTER-MATKL IS INITIAL.
    BMMH1-MATKL = MATERIAL_MASTER-MATKL.
  ELSE.
    BMMH1-MATKL = '/'.
  ENDIF.


* --- BMMH1-BISMT
  IF NOT MATERIAL_MASTER-BISMT IS INITIAL.
    BMMH1-BISMT = MATERIAL_MASTER-BISMT.
  ELSE.
    BMMH1-BISMT = '/'.
  ENDIF.

* --- BMMH1-LABOR
  IF NOT MATERIAL_MASTER-LABOR IS INITIAL.
    BMMH1-LABOR = MATERIAL_MASTER-LABOR.
  ELSE.
    BMMH1-LABOR = '/'.
  ENDIF.


* --- BMMH1-WRKST
  IF NOT MATERIAL_MASTER-WRKST IS INITIAL.
    BMMH1-WRKST = MATERIAL_MASTER-WRKST.
  ELSE.
    BMMH1-WRKST = '/'.
  ENDIF.



* --- BMMH1-BRGEW
  IF NOT MATERIAL_MASTER-BRGEW IS INITIAL.
    BMMH1-BRGEW = MATERIAL_MASTER-BRGEW.
  ELSE.
    BMMH1-BRGEW = '/'.
  ENDIF.


* --- BMMH1-NTGEW
  IF NOT MATERIAL_MASTER-NTGEW IS INITIAL.
    BMMH1-NTGEW = MATERIAL_MASTER-NTGEW.
  ELSE.
    BMMH1-NTGEW = '/'.
  ENDIF.


* --- BMMH1-GEWEI
  IF NOT MATERIAL_MASTER-GEWEI IS INITIAL.
    BMMH1-GEWEI = MATERIAL_MASTER-GEWEI.
  ELSE.
    BMMH1-GEWEI = '/'.
  ENDIF.



* --- BMMH1-GROES
  IF NOT MATERIAL_MASTER-GROES IS INITIAL.
    BMMH1-GROES = MATERIAL_MASTER-GROES.
  ELSE.
    BMMH1-GROES = '/'.
  ENDIF.


* --- BMMH1-SPART
  IF NOT MATERIAL_MASTER-SPART IS INITIAL.
    BMMH1-SPART = MATERIAL_MASTER-SPART.
  ELSE.
    BMMH1-SPART = '/'.
  ENDIF.


* --- BMMH1-BSTME
  IF NOT MATERIAL_MASTER-BSTME IS INITIAL.
    BMMH1-BSTME = MATERIAL_MASTER-BSTME.
  ELSE.
    BMMH1-BSTME = '/'.
  ENDIF.



* --- BMMH1-EKWSL
  IF NOT MATERIAL_MASTER-EKWSL IS INITIAL.
    BMMH1-EKWSL = MATERIAL_MASTER-EKWSL.
  ELSE.
    BMMH1-EKWSL = '/'.
  ENDIF.


* --- BMMH1-EKGRP
  IF NOT MATERIAL_MASTER-EKGRP IS INITIAL.
    BMMH1-EKGRP = MATERIAL_MASTER-EKGRP.
  ELSE.
    BMMH1-EKGRP = '/'.
  ENDIF.


* --- BMMH1-XCHPF
  IF NOT MATERIAL_MASTER-XCHPF IS INITIAL.
    BMMH1-XCHPF = MATERIAL_MASTER-XCHPF.
  ELSE.
    BMMH1-XCHPF = '/'.
  ENDIF.


* --- BMMH1-WEBAZ
  IF NOT MATERIAL_MASTER-WEBAZ IS INITIAL.
    BMMH1-WEBAZ = MATERIAL_MASTER-WEBAZ.
  ELSE.
    BMMH1-WEBAZ = '/'.
  ENDIF.

  IF NOT MATERIAL_MASTER-DISMM IS INITIAL.
    BMMH1-DISMM = MATERIAL_MASTER-DISMM.
  ELSE.
    BMMH1-DISMM = '/'.
  ENDIF.



* --- BMMH1-VPRSV
  IF NOT MATERIAL_MASTER-VPRSV IS INITIAL.
    BMMH1-VPRSV = MATERIAL_MASTER-VPRSV.
  ELSE.
    BMMH1-VPRSV = '/'.
  ENDIF.

  BMMH1-VERPR = '/'.
* --- BMMH1-STPRS
  IF NOT MATERIAL_MASTER-STPRS IS INITIAL.
    BMMH1-STPRS = MATERIAL_MASTER-STPRS.
  ELSE.
    BMMH1-STPRS = '/'.
  ENDIF.


* --- BMMH1-BWPRH
  IF NOT MATERIAL_MASTER-BWPRH IS INITIAL.
    BMMH1-BWPRH = MATERIAL_MASTER-BWPRH.
  ELSE.
    BMMH1-BWPRH = '/'.
  ENDIF.



* --- BMMH1-PRDHA
  IF NOT MATERIAL_MASTER-PRDHA IS INITIAL.
    BMMH1-PRDHA = MATERIAL_MASTER-PRDHA.
  ELSE.
    BMMH1-PRDHA = '/'.
  ENDIF.

* --- BMMH1-VABME
  IF NOT MATERIAL_MASTER-VABME IS INITIAL.
    BMMH1-VABME = MATERIAL_MASTER-VABME.
  ELSE.
    BMMH1-VABME = '/'.
  ENDIF.


* --- BMMH1-MAGRV
  IF NOT MATERIAL_MASTER-MAGRV IS INITIAL.
    BMMH1-MAGRV = MATERIAL_MASTER-MAGRV.
  ELSE.
    BMMH1-MAGRV = '/'.
  ENDIF.


* --- BMMH1-KZUMW
  IF NOT MATERIAL_MASTER-KZUMW IS INITIAL.
    BMMH1-KZUMW = MATERIAL_MASTER-KZUMW.
  ELSE.
    BMMH1-KZUMW = '/'.
  ENDIF.

* --- BMMH1-MFRNR
  IF NOT MATERIAL_MASTER-MFRNR IS INITIAL.
    BMMH1-MFRNR = MATERIAL_MASTER-MFRNR.
  ELSE.
    BMMH1-MFRNR = '/'.
  ENDIF.


* --- BMMH1-MFRPN
  IF NOT MATERIAL_MASTER-MFRPN IS INITIAL.
    BMMH1-MFRPN = MATERIAL_MASTER-MFRPN.
  ELSE.
    BMMH1-MFRPN = '/'.
  ENDIF.
*
*  BMMH1-MPROF = '/'.
* --- BMMH1-MSTAE
  IF NOT MATERIAL_MASTER-MSTAE IS INITIAL.
    BMMH1-MSTAE = MATERIAL_MASTER-MSTAE.
  ELSE.
    BMMH1-MSTAE = '/'.
  ENDIF.


* --- BMMH1-PROFL
  IF NOT MATERIAL_MASTER-PROFL IS INITIAL.
    BMMH1-PROFL = MATERIAL_MASTER-PROFL.
  ELSE.
    BMMH1-PROFL = '/'.
  ENDIF.


* --- BMMH1-MTPOS_MARA
  IF NOT MATERIAL_MASTER-MTPOS_MARA IS INITIAL.
    BMMH1-MTPOS_MARA = MATERIAL_MASTER-MTPOS_MARA.
  ELSE.
    BMMH1-MTPOS_MARA = '/'.
  ENDIF.


  TRANSFER BMMH1 TO C_ZTEST.


ENDFORM.                    "convert_0003
*&---------------------------------------------------------------------*
*&      Form  POPULATE_DATA
*&---------------------------------------------------------------------*
*       text
*----------------------------------------------------------------------*
*      <--P_BLF text
*----------------------------------------------------------------------*
FORM POPULATE_DATA  CHANGING P_BLF.
  DATA: L_NUM TYPE I.
  DO.
    L_NUM = L_NUM + 1.
    ASSIGN COMPONENT L_NUM OF STRUCTURE P_BLF TO <F>.
    IF SY-SUBRC <> 0.
      EXIT.
    ENDIF.
    MOVE BGR00-NODATA TO <F>.
  ENDDO.


ENDFORM.                    " POPULATE_DATA

Regards

vijay

Former Member
0 Kudos

Problem solved... I used CONVERSION_EXIT_MATN1_INPUT to convert material number.

Former Member
0 Kudos

Anyone know if exists a FM that fill the BAPI_MATERIAL_SAVEDATA structure for a material alredy present on SAP?

Thanks

Salvatore

0 Kudos

Guess you can make use of

BAPI_MATERIAL_GET_DETAIL or

BAPI_MATERIAL_GET_ALL to get the required info for an existing material.

Reward helpful answers

Cheers

Nishanth