<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:taxo="http://purl.org/rss/1.0/modules/taxonomy/" version="2.0">
  <channel>
    <title>topic Re: how to create material(mm01)  through function module or bapi in Application Development and Automation Discussions</title>
    <link>https://community.sap.com/t5/application-development-and-automation-discussions/how-to-create-material-mm01-through-function-module-or-bapi/m-p/3758321#M904177</link>
    <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi,&lt;/P&gt;&lt;P&gt;Here is the sample program to create the material&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;codeREPORT z34332_bdc_create_material .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;data: la_headdata type BAPIMATHEAD,&lt;/P&gt;&lt;P&gt;la_clientdata type BAPI_MARA,&lt;/P&gt;&lt;P&gt;la_CLIENTDATAX type BAPI_MARAX,&lt;/P&gt;&lt;P&gt;la_return type BAPIRET2.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;data: i_materialdescription type table of BAPI_MAKT,&lt;/P&gt;&lt;P&gt;wa_materialdescription like line of i_materialdescription.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;la_headdata-MATERIAL = '000000000000000004'.&lt;/P&gt;&lt;P&gt;la_headdata-IND_SECTOR = 'M'.&lt;/P&gt;&lt;P&gt;la_headdata-MATL_TYPE = 'FERT'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;la_clientdata-BASE_UOM = 'FT3'.&lt;/P&gt;&lt;P&gt;la_CLIENTDATAX-BASE_UOM = 'X'.&lt;/P&gt;&lt;P&gt;la_clientdata-MATL_GROUP = '01'.&lt;/P&gt;&lt;P&gt;la_CLIENTDATAX-MATL_GROUP = 'X'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;wa_materialdescription = 'TEST'.&lt;/P&gt;&lt;P&gt;append wa_materialdescription to i_materialdescription.&lt;/P&gt;&lt;P&gt;clear: wa_materialdescription.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;CALL FUNCTION 'BAPI_MATERIAL_SAVEDATA'&lt;/P&gt;&lt;P&gt;EXPORTING&lt;/P&gt;&lt;P&gt;headdata = la_headdata&lt;/P&gt;&lt;P&gt;CLIENTDATA = la_clientdata&lt;/P&gt;&lt;P&gt;CLIENTDATAX = la_CLIENTDATAX&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;PLANTDATA = &lt;/P&gt;&lt;P&gt;PLANTDATAX = &lt;/P&gt;&lt;P&gt;FORECASTPARAMETERS = &lt;/P&gt;&lt;P&gt;FORECASTPARAMETERSX = &lt;/P&gt;&lt;P&gt;PLANNINGDATA = &lt;/P&gt;&lt;P&gt;PLANNINGDATAX = &lt;/P&gt;&lt;P&gt;STORAGELOCATIONDATA = &lt;/P&gt;&lt;P&gt;STORAGELOCATIONDATAX = &lt;/P&gt;&lt;P&gt;VALUATIONDATA = &lt;/P&gt;&lt;P&gt;VALUATIONDATAX = &lt;/P&gt;&lt;P&gt;WAREHOUSENUMBERDATA = &lt;/P&gt;&lt;P&gt;WAREHOUSENUMBERDATAX = &lt;/P&gt;&lt;P&gt;SALESDATA = &lt;/P&gt;&lt;P&gt;SALESDATAX = &lt;/P&gt;&lt;P&gt;STORAGETYPEDATA = &lt;/P&gt;&lt;P&gt;STORAGETYPEDATAX = &lt;/P&gt;&lt;P&gt;FLAG_ONLINE = ' ' &lt;/P&gt;&lt;P&gt;FLAG_CAD_CALL = ' ' &lt;/P&gt;&lt;P&gt;IMPORTING&lt;/P&gt;&lt;P&gt;RETURN = la_return&lt;/P&gt;&lt;P&gt;TABLES&lt;/P&gt;&lt;P&gt;MATERIALDESCRIPTION = i_materialdescription&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;UNITSOFMEASURE = &lt;/P&gt;&lt;P&gt;UNITSOFMEASUREX = &lt;/P&gt;&lt;P&gt;INTERNATIONALARTNOS = &lt;/P&gt;&lt;P&gt;MATERIALLONGTEXT = &lt;/P&gt;&lt;P&gt;TAXCLASSIFICATIONS = &lt;/P&gt;&lt;P&gt;RETURNMESSAGES = &lt;/P&gt;&lt;P&gt;PRTDATA = &lt;/P&gt;&lt;P&gt;PRTDATAX = &lt;/P&gt;&lt;P&gt;EXTENSIONIN = &lt;/P&gt;&lt;P&gt;EXTENSIONINX = &lt;/P&gt;&lt;P&gt;.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;write: la_return-TYPE, ',', la_return-MESSAGE.&lt;/P&gt;&lt;P&gt;clear: la_headdata, la_return, la_clientdata, la_clientdatax.[/code]&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Regards,&lt;/P&gt;&lt;P&gt;Raj.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
    <pubDate>Tue, 29 Apr 2008 07:42:09 GMT</pubDate>
    <dc:creator>Former Member</dc:creator>
    <dc:date>2008-04-29T07:42:09Z</dc:date>
    <item>
      <title>how to create material(mm01)  through function module or bapi</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/how-to-create-material-mm01-through-function-module-or-bapi/m-p/3758318#M904174</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi,&lt;/P&gt;&lt;P&gt;    this is kiran iam sap fresher.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 29 Apr 2008 06:50:32 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/how-to-create-material-mm01-through-function-module-or-bapi/m-p/3758318#M904174</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2008-04-29T06:50:32Z</dc:date>
    </item>
    <item>
      <title>Re: how to create material(mm01)  through function module or bapi</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/how-to-create-material-mm01-through-function-module-or-bapi/m-p/3758319#M904175</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi,&lt;/P&gt;&lt;P&gt;  There is a Function module called MATERIAL_MAINTAIN_DARK, try using this.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Regards,&lt;/P&gt;&lt;P&gt;Aravind M&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 29 Apr 2008 06:56:04 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/how-to-create-material-mm01-through-function-module-or-bapi/m-p/3758319#M904175</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2008-04-29T06:56:04Z</dc:date>
    </item>
    <item>
      <title>Re: how to create material(mm01)  through function module or bapi</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/how-to-create-material-mm01-through-function-module-or-bapi/m-p/3758320#M904176</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi,&lt;/P&gt;&lt;P&gt;  you can use  'BAPI_MATERIAL_GET_ALL' &amp;amp;&lt;/P&gt;&lt;P&gt; 'BAPI_MATERIAL_SAVEDATA'&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ReGARDS&lt;/P&gt;&lt;P&gt;Kiran Sure&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 29 Apr 2008 07:11:26 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/how-to-create-material-mm01-through-function-module-or-bapi/m-p/3758320#M904176</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2008-04-29T07:11:26Z</dc:date>
    </item>
    <item>
      <title>Re: how to create material(mm01)  through function module or bapi</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/how-to-create-material-mm01-through-function-module-or-bapi/m-p/3758321#M904177</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi,&lt;/P&gt;&lt;P&gt;Here is the sample program to create the material&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;codeREPORT z34332_bdc_create_material .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;data: la_headdata type BAPIMATHEAD,&lt;/P&gt;&lt;P&gt;la_clientdata type BAPI_MARA,&lt;/P&gt;&lt;P&gt;la_CLIENTDATAX type BAPI_MARAX,&lt;/P&gt;&lt;P&gt;la_return type BAPIRET2.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;data: i_materialdescription type table of BAPI_MAKT,&lt;/P&gt;&lt;P&gt;wa_materialdescription like line of i_materialdescription.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;la_headdata-MATERIAL = '000000000000000004'.&lt;/P&gt;&lt;P&gt;la_headdata-IND_SECTOR = 'M'.&lt;/P&gt;&lt;P&gt;la_headdata-MATL_TYPE = 'FERT'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;la_clientdata-BASE_UOM = 'FT3'.&lt;/P&gt;&lt;P&gt;la_CLIENTDATAX-BASE_UOM = 'X'.&lt;/P&gt;&lt;P&gt;la_clientdata-MATL_GROUP = '01'.&lt;/P&gt;&lt;P&gt;la_CLIENTDATAX-MATL_GROUP = 'X'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;wa_materialdescription = 'TEST'.&lt;/P&gt;&lt;P&gt;append wa_materialdescription to i_materialdescription.&lt;/P&gt;&lt;P&gt;clear: wa_materialdescription.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;CALL FUNCTION 'BAPI_MATERIAL_SAVEDATA'&lt;/P&gt;&lt;P&gt;EXPORTING&lt;/P&gt;&lt;P&gt;headdata = la_headdata&lt;/P&gt;&lt;P&gt;CLIENTDATA = la_clientdata&lt;/P&gt;&lt;P&gt;CLIENTDATAX = la_CLIENTDATAX&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;PLANTDATA = &lt;/P&gt;&lt;P&gt;PLANTDATAX = &lt;/P&gt;&lt;P&gt;FORECASTPARAMETERS = &lt;/P&gt;&lt;P&gt;FORECASTPARAMETERSX = &lt;/P&gt;&lt;P&gt;PLANNINGDATA = &lt;/P&gt;&lt;P&gt;PLANNINGDATAX = &lt;/P&gt;&lt;P&gt;STORAGELOCATIONDATA = &lt;/P&gt;&lt;P&gt;STORAGELOCATIONDATAX = &lt;/P&gt;&lt;P&gt;VALUATIONDATA = &lt;/P&gt;&lt;P&gt;VALUATIONDATAX = &lt;/P&gt;&lt;P&gt;WAREHOUSENUMBERDATA = &lt;/P&gt;&lt;P&gt;WAREHOUSENUMBERDATAX = &lt;/P&gt;&lt;P&gt;SALESDATA = &lt;/P&gt;&lt;P&gt;SALESDATAX = &lt;/P&gt;&lt;P&gt;STORAGETYPEDATA = &lt;/P&gt;&lt;P&gt;STORAGETYPEDATAX = &lt;/P&gt;&lt;P&gt;FLAG_ONLINE = ' ' &lt;/P&gt;&lt;P&gt;FLAG_CAD_CALL = ' ' &lt;/P&gt;&lt;P&gt;IMPORTING&lt;/P&gt;&lt;P&gt;RETURN = la_return&lt;/P&gt;&lt;P&gt;TABLES&lt;/P&gt;&lt;P&gt;MATERIALDESCRIPTION = i_materialdescription&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;UNITSOFMEASURE = &lt;/P&gt;&lt;P&gt;UNITSOFMEASUREX = &lt;/P&gt;&lt;P&gt;INTERNATIONALARTNOS = &lt;/P&gt;&lt;P&gt;MATERIALLONGTEXT = &lt;/P&gt;&lt;P&gt;TAXCLASSIFICATIONS = &lt;/P&gt;&lt;P&gt;RETURNMESSAGES = &lt;/P&gt;&lt;P&gt;PRTDATA = &lt;/P&gt;&lt;P&gt;PRTDATAX = &lt;/P&gt;&lt;P&gt;EXTENSIONIN = &lt;/P&gt;&lt;P&gt;EXTENSIONINX = &lt;/P&gt;&lt;P&gt;.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;write: la_return-TYPE, ',', la_return-MESSAGE.&lt;/P&gt;&lt;P&gt;clear: la_headdata, la_return, la_clientdata, la_clientdatax.[/code]&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Regards,&lt;/P&gt;&lt;P&gt;Raj.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 29 Apr 2008 07:42:09 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/how-to-create-material-mm01-through-function-module-or-bapi/m-p/3758321#M904177</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2008-04-29T07:42:09Z</dc:date>
    </item>
    <item>
      <title>Re: how to create material(mm01)  through function module or bapi</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/how-to-create-material-mm01-through-function-module-or-bapi/m-p/3758322#M904178</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;There are different types of function modules in Bapis.We can use those function modules depending upon our requirement.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;I will tell the path how to find the function modules&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;1.go to BAPI Explorere using t.code BAPI.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;2.In that go to tab HIERARCHICAL .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;3.Go to logistic general ---&amp;gt; logistic basic data --&amp;gt; material group ,material,retail material,standard material .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;there you can find the different function modules using TOOLS tab.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;so that you can  create material .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Reward if it useful.&lt;/P&gt;&lt;P&gt;Thanks in advance.&lt;/P&gt;&lt;P&gt;Lakshmi&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 29 Apr 2008 08:28:06 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/how-to-create-material-mm01-through-function-module-or-bapi/m-p/3758322#M904178</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2008-04-29T08:28:06Z</dc:date>
    </item>
    <item>
      <title>Re: how to create material(mm01)  through function module or bapi</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/how-to-create-material-mm01-through-function-module-or-bapi/m-p/3758323#M904179</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;try this&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;PRE&gt;&lt;CODE&gt;*&amp;amp;---------------------------------------------------------------------*

*&amp;amp; Report ZKAR_MATMAS_BAPI

*&amp;amp;---------------------------------------------------------------------*

*&amp;amp; This program demonstrates how easy it is to create Material master

*&amp;amp; data using BAPI_MATERIAL_SAVEDATA

*&amp;amp; The program also generates a report post-execution displaying errors

*&amp;amp; as well as successful uploads

*&amp;amp;---------------------------------------------------------------------*
REPORT ZKAR_MATMAS_BAPI.
*----------------------------------------------------------------------*

* TABLES

*----------------------------------------------------------------------*
*----------------------------------------------------------------------*

* FLAGS *

*----------------------------------------------------------------------*
DATA: F_STOP. " Flag used to stop processing
*----------------------------------------------------------------------*

* DATA DECLARATIONS *

*----------------------------------------------------------------------*
DATA : V_EMPTY TYPE I, " No. of empty records

V_TOTAL TYPE I. " Total no. of records.
*----------------------------------------------------------------------*

* STRUCTURES &amp;amp; INTERNAL TABLES

*----------------------------------------------------------------------*
*BAPI structures

*----------------------------------------------------------------------*

DATA: BAPI_HEAD LIKE BAPIMATHEAD, " Header Segment with Control Information

BAPI_MAKT LIKE BAPI_MAKT, " Material Description

BAPI_MARA1 LIKE BAPI_MARA, " Client Data

BAPI_MARAX LIKE BAPI_MARAX, " Checkbox Structure for BAPI_MARA

BAPI_MARC1 LIKE BAPI_MARC, " Plant View

BAPI_MARCX LIKE BAPI_MARCX, " Checkbox Structure for BAPI_MARC

BAPI_MBEW1 LIKE BAPI_MBEW, " Accounting View

BAPI_MBEWX LIKE BAPI_MBEWX, " Checkbox Structure for BAPI_MBEW

BAPI_RETURN LIKE BAPIRET2. " Return Parameter

*--- Internal table to hold excel file data

DATA: IT_INTERN TYPE ALSMEX_TABLINE OCCURS 0 WITH HEADER LINE.

*--- Internal table to hold Matetrial descriptions

DATA: BEGIN OF IT_MAKT OCCURS 100.

        INCLUDE STRUCTURE BAPI_MAKT.

DATA: END OF IT_MAKT.

*--- Internal to hold the records in the text file

DATA : BEGIN OF IT_DATA OCCURS 100,

            WERKS(4), " Plant

            MTART(4), " Material type

            MATNR(18), " Material number

            MATKL(9) , " Material group

            MBRSH(1), " Industry sector

            MEINS(3), " Base unit of measure

            GEWEI(3), " Weight Unit

            SPART(2), " Division

            EKGRP(3), " Purchasing group

            VPRSV(1), " Price control indicator

            STPRS(12), " Standard price

            PEINH(3), " Price unit

            SPRAS(2), " Language key

            MAKTX(40), " Material description

            END OF IT_DATA.

*----------------------------------------------------------------------*

* SELECTION SCREEN. *

*----------------------------------------------------------------------*

SELECTION-SCREEN BEGIN OF BLOCK SCR1 WITH FRAME TITLE TEXT-111.

PARAMETER : P_FILE TYPE RLGRAP-FILENAME OBLIGATORY DEFAULT " Input File

'C:\Material_master.XLS'.

PARAMETER : P_MAX(4) OBLIGATORY DEFAULT '100'. " no.of recs in a session

PARAMETERS: P_HEADER TYPE I DEFAULT 0. " Header Lines

PARAMETERS: P_BEGCOL TYPE I DEFAULT 1 NO-DISPLAY,

P_BEGROW TYPE I DEFAULT 1 NO-DISPLAY,

P_ENDCOL TYPE I DEFAULT 100 NO-DISPLAY,

P_ENDROW TYPE I DEFAULT 32000 NO-DISPLAY.

SELECTION-SCREEN END OF BLOCK SCR1.

*---------------------------------------------------------------------*

* AT SELECTION-SCREEN *

*---------------------------------------------------------------------*

AT SELECTION-SCREEN ON VALUE-REQUEST FOR P_FILE.

*--- Validating file

  PERFORM VALIDATE_FILE USING P_FILE.

*----------------------------------------------------------------------*

* START-OF-SELECTION

*----------------------------------------------------------------------*

START-OF-SELECTION.

*--- Perform to convert the Excel data into an internal table

  PERFORM CONVERT_XLS_ITAB.

  IF NOT IT_DATA[] IS INITIAL.

*--- Perform to delete Header lines

    PERFORM DELETE_HEADER_EMPTY_RECS.

  ENDIF.

*----------------------------------------------------------------------*

* END OF SELECTION. *

*----------------------------------------------------------------------*

END-OF-SELECTION.

*--- Perform to upload Material Master data

  PERFORM UPLOAD_MATMAS.

*----------------------------------------------------------------------*

* Form : validate_input_file

*----------------------------------------------------------------------*

* Description : To provide F4 help for file if read from PC

*----------------------------------------------------------------------*

FORM VALIDATE_FILE USING F_FILE TYPE RLGRAP-FILENAME.

  CALL FUNCTION 'KD_GET_FILENAME_ON_F4'
    CHANGING
      FILE_NAME     = F_FILE
    EXCEPTIONS
      MASK_TOO_LONG = 1
      OTHERS        = 2.

  IF SY-SUBRC &amp;lt;&amp;gt; 0.

    MESSAGE S010(ZLKPL_MSGCLASS). " 'Error in getting filename'.

  ENDIF.

ENDFORM. " validate_input_file

*&amp;amp;---------------------------------------------------------------------*

*&amp;amp; Form CONVER_XLS_ITAB

*&amp;amp;---------------------------------------------------------------------*

* text

*----------------------------------------------------------------------*

FORM CONVERT_XLS_ITAB.

  CALL FUNCTION 'ALSM_EXCEL_TO_INTERNAL_TABLE'
    EXPORTING
      FILENAME    = P_FILE
      I_BEGIN_COL = P_BEGCOL
      I_BEGIN_ROW = P_BEGROW
      I_END_COL   = P_ENDCOL
      I_END_ROW   = P_ENDROW
    TABLES
      INTERN      = IT_INTERN.

  IF SY-SUBRC &amp;lt;&amp;gt; 0.

* MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO

* WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.

  ENDIF.

*--- Perform to move the data into an internal data

  PERFORM MOVE_DATA.

ENDFORM. " CONVERT_XLS_ITAB

*&amp;amp;---------------------------------------------------------------------*

*&amp;amp; Form MOVE_DATA

*&amp;amp;---------------------------------------------------------------------*

* text

*----------------------------------------------------------------------*

FORM MOVE_DATA.

  DATA : LV_INDEX TYPE I.

  FIELD-SYMBOLS &amp;lt;FS&amp;gt;.

*--- Sorting the internal table

  SORT IT_INTERN BY ROW COL.

  CLEAR IT_INTERN.

  LOOP AT IT_INTERN.

    MOVE IT_INTERN-COL TO LV_INDEX.

*--- Assigning the each record to an internal table row

    ASSIGN COMPONENT LV_INDEX OF STRUCTURE IT_DATA TO &amp;lt;FS&amp;gt;.

*--- Asigning the field value to a field symbol

    MOVE IT_INTERN-VALUE TO &amp;lt;FS&amp;gt;.

    AT END OF ROW.

      APPEND IT_DATA.

      CLEAR IT_DATA.

    ENDAT.

  ENDLOOP.

ENDFORM. " MOVE_DATA

*&amp;amp;---------------------------------------------------------------------*

*&amp;amp; Form DELETE_HEADER_EMPTY_RECS

*&amp;amp;---------------------------------------------------------------------*

* To delete the Header and empty records

*----------------------------------------------------------------------*

FORM DELETE_HEADER_EMPTY_RECS.

  DATA: LV_TABIX LIKE SY-TABIX.

  IF NOT P_HEADER IS INITIAL.

    LOOP AT IT_DATA.

      IF P_HEADER &amp;gt; 0 AND NOT IT_DATA IS INITIAL.

        DELETE IT_DATA FROM 1 TO P_HEADER.

* P_HEADER = 0.

        EXIT.

      ENDIF.

    ENDLOOP.

  ENDIF.

  CLEAR IT_DATA.

*--- To delete the empty lines from internal table

  LOOP AT IT_DATA.

    LV_TABIX = SY-TABIX.

    IF IT_DATA IS INITIAL.

      V_EMPTY = V_EMPTY + 1.

      DELETE IT_DATA INDEX LV_TABIX..

    ENDIF.

  ENDLOOP.

  CLEAR IT_DATA.

*--- Total no of recs in file

  DESCRIBE TABLE IT_DATA LINES V_TOTAL.

  IF V_TOTAL = 0.

    MESSAGE I013(ZLKPL_MSGCLASS). " No records in the file

    F_STOP = 'X'.

    STOP.

  ENDIF.

ENDFORM. " DELETE_HEADER_EMPTY_RECS

*&amp;amp;---------------------------------------------------------------------*

*&amp;amp; Form UPLOAD_MATMAS

*&amp;amp;---------------------------------------------------------------------*

* to upload Material Master data

*----------------------------------------------------------------------*

FORM UPLOAD_MATMAS .

  LOOP AT IT_DATA.

* Header
    UNPACK IT_DATA-MATNR TO IT_DATA-MATNR.
    BAPI_HEAD-MATERIAL = IT_DATA-MATNR.

    BAPI_HEAD-IND_SECTOR = IT_DATA-MBRSH.

    BAPI_HEAD-MATL_TYPE = IT_DATA-MTART.

    BAPI_HEAD-BASIC_VIEW = 'X'.

    BAPI_HEAD-PURCHASE_VIEW = 'X'.

    BAPI_HEAD-ACCOUNT_VIEW = 'X'.

* Material Description

    REFRESH IT_MAKT.

    IT_MAKT-LANGU = IT_DATA-SPRAS.

    IT_MAKT-MATL_DESC = IT_DATA-MAKTX.

    APPEND IT_MAKT.

* Client Data - Basic

    BAPI_MARA1-MATL_GROUP = IT_DATA-MATKL.

    BAPI_MARA1-BASE_UOM = IT_DATA-MEINS.

    BAPI_MARA1-UNIT_OF_WT = IT_DATA-GEWEI.

    BAPI_MARA1-DIVISION = IT_DATA-SPART.

    BAPI_MARAX-MATL_GROUP = 'X'.

    BAPI_MARAX-BASE_UOM = 'X'.

    BAPI_MARAX-UNIT_OF_WT = 'X'.

    BAPI_MARAX-DIVISION = 'X'.

* Plant - Purchasing

    BAPI_MARC1-PLANT = IT_DATA-WERKS.

    BAPI_MARC1-PUR_GROUP = IT_DATA-EKGRP.

    BAPI_MARCX-PLANT = IT_DATA-WERKS.

    BAPI_MARCX-PUR_GROUP = 'X'.

* Accounting

    BAPI_MBEW1-VAL_AREA = IT_DATA-WERKS.

    BAPI_MBEW1-PRICE_CTRL = IT_DATA-VPRSV.

    BAPI_MBEW1-STD_PRICE = IT_DATA-STPRS.

    BAPI_MBEW1-PRICE_UNIT = IT_DATA-PEINH.

    BAPI_MBEWX-VAL_AREA = IT_DATA-WERKS.

    BAPI_MBEWX-PRICE_CTRL = 'X'.

    BAPI_MBEWX-STD_PRICE = 'X'.

    BAPI_MBEWX-PRICE_UNIT = 'X'.

*--- BAPI to create material

    CALL FUNCTION 'BAPI_MATERIAL_SAVEDATA'

    EXPORTING

    HEADDATA = BAPI_HEAD

    CLIENTDATA = BAPI_MARA1

    CLIENTDATAX = BAPI_MARAX

    PLANTDATA = BAPI_MARC1

    PLANTDATAX = BAPI_MARCX

* FORECASTPARAMETERS =

* FORECASTPARAMETERSX =

* PLANNINGDATA =

* PLANNINGDATAX =

* STORAGELOCATIONDATA =

* STORAGELOCATIONDATAX =

* VALUATIONDATA = BAPI_MBEW1

* VALUATIONDATAX = BAPI_MBEWX

* WAREHOUSENUMBERDATA =

* WAREHOUSENUMBERDATAX =

* SALESDATA = BAPI_MVKE1

* SALESDATAX = BAPI_MVKEX

* STORAGETYPEDATA =

* STORAGETYPEDATAX =

    IMPORTING

    RETURN = BAPI_RETURN

    TABLES

    MATERIALDESCRIPTION = IT_MAKT

* UNITSOFMEASURE =

* UNITSOFMEASUREX =

* INTERNATIONALARTNOS =

* MATERIALLONGTEXT =

* TAXCLASSIFICATIONS =

* RETURNMESSAGES =

* PRTDATA =

* PRTDATAX =

* EXTENSIONIN =

* EXTENSIONINX =

    .

    IF BAPI_RETURN-TYPE = 'E'.

      WRITE:/ 'Error:' ,BAPI_RETURN-MESSAGE ,'for material:' ,IT_DATA-MATNR.

    ELSEIF BAPI_RETURN-TYPE = 'S'.

      WRITE: 'Successfully created material' ,IT_DATA-MATNR.

    ENDIF.

  ENDLOOP.

ENDFORM. " UPLOAD_MATMAS&lt;/CODE&gt;&lt;/PRE&gt;&lt;P&gt;&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 29 Apr 2008 08:29:29 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/how-to-create-material-mm01-through-function-module-or-bapi/m-p/3758323#M904179</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2008-04-29T08:29:29Z</dc:date>
    </item>
    <item>
      <title>Re: how to create material(mm01)  through function module or bapi</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/how-to-create-material-mm01-through-function-module-or-bapi/m-p/3758324#M904180</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;You can use the any of the following Bapi regarding material.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;BAPI_MATERIAL_DISPLAY          Display Material                                                          &lt;/P&gt;&lt;P&gt; &lt;/P&gt;&lt;P&gt;BAPI_MATERIAL_EDIT             Change Material                                                           &lt;/P&gt;&lt;P&gt; &lt;/P&gt;&lt;P&gt;BAPI_RETAILMATERIAL_CREATE     Create Material                                                           &lt;/P&gt;&lt;P&gt; &lt;/P&gt;&lt;P&gt;BAPI_RETAILMATERIAL_DELETE     Discontinue Material                                                      &lt;/P&gt;&lt;P&gt; &lt;/P&gt;&lt;P&gt;BAPI_STANDARDMATERIAL_CREATE   Create/Extend Material                                                    &lt;/P&gt;&lt;P&gt; &lt;/P&gt;&lt;P&gt;Thanks&lt;/P&gt;&lt;P&gt;Sarada&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 29 Apr 2008 08:35:44 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/how-to-create-material-mm01-through-function-module-or-bapi/m-p/3758324#M904180</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2008-04-29T08:35:44Z</dc:date>
    </item>
  </channel>
</rss>

