Application Development and Automation 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: 
Read only

Creating Material Using BAPI

Former Member
0 Likes
1,053

Hi Friends,

I want to create a material using BAPI, can anyone give me some sample program or can any one give me links which earlier posted this problem.

Points for sure for sample program.

thanks and regards

Vijaya

7 REPLIES 7
Read only

Former Member
0 Likes
881

Hi,

You can use these:

BAPI_RETAILMATERIAL_CREATE

BAPI_STANDARDMATERIAL_CREATE

or

RFC_CREATE_MATERIAL_MASTER

Hope this will solve your problem.

Award Points if it solves your purpose.

-Gaurang

Read only

Former Member
0 Likes
881

Hi,

Here is the sample program to create the material

REPORT  z34332_bdc_create_material              .
 
data: la_headdata type BAPIMATHEAD,
      la_clientdata type BAPI_MARA,
      la_CLIENTDATAX type BAPI_MARAX,
      la_return type BAPIRET2.
 
data: i_materialdescription type table of BAPI_MAKT,
      wa_materialdescription like line of i_materialdescription.
 
la_headdata-MATERIAL = '000000000000000004'.
la_headdata-IND_SECTOR = 'M'.
la_headdata-MATL_TYPE = 'FERT'.
 
la_clientdata-BASE_UOM = 'FT3'.
la_CLIENTDATAX-BASE_UOM = 'X'.
la_clientdata-MATL_GROUP = '01'.
la_CLIENTDATAX-MATL_GROUP = 'X'.
 
wa_materialdescription = 'TEST'.
append wa_materialdescription to i_materialdescription.
clear: wa_materialdescription.
 
CALL FUNCTION 'BAPI_MATERIAL_SAVEDATA'
  EXPORTING
    headdata                   = la_headdata
   CLIENTDATA                 = la_clientdata
   CLIENTDATAX                = la_CLIENTDATAX
*   PLANTDATA                  =
*   PLANTDATAX                 =
*   FORECASTPARAMETERS         =
*   FORECASTPARAMETERSX        =
*   PLANNINGDATA               =
*   PLANNINGDATAX              =
*   STORAGELOCATIONDATA        =
*   STORAGELOCATIONDATAX       =
*   VALUATIONDATA              =
*   VALUATIONDATAX             =
*   WAREHOUSENUMBERDATA        =
*   WAREHOUSENUMBERDATAX       =
*   SALESDATA                  =
*   SALESDATAX                 =
*   STORAGETYPEDATA            =
*   STORAGETYPEDATAX           =
*   FLAG_ONLINE                = ' '
*   FLAG_CAD_CALL              = ' '
 IMPORTING
   RETURN                     = la_return
 TABLES
   MATERIALDESCRIPTION        = i_materialdescription
*   UNITSOFMEASURE             =
*   UNITSOFMEASUREX            =
*   INTERNATIONALARTNOS        =
*   MATERIALLONGTEXT           =
*   TAXCLASSIFICATIONS         =
*   RETURNMESSAGES             =
*   PRTDATA                    =
*   PRTDATAX                   =
*   EXTENSIONIN                =
*   EXTENSIONINX               =
          .
 
write: la_return-TYPE, ',', la_return-MESSAGE.
clear: la_headdata, la_return, la_clientdata, la_clientdatax.

Regards

Sudheer

Read only

0 Likes
881

Hi Sudheer

Thanks very much for your help, points awarded

Read only

Former Member
0 Likes
881

hi,

u can use these set of BAPIs.

BAPI_CUSTOMER_CHANGEFROMDATA Only for ONLINE store!!! Customer: Change Customer

BAPI_CUSTOMER_CHANGEFROMDATA1 Only for ONLINE Store!!!

Check Personal Data of a Customer

BAPI_CUSTOMER_CREATEFROMDATA Only for ONLINE Store!!!

Customer: Create Customer

BAPI_CUSTOMER_CREATEFROMDATA1 Only for ONLINE Store!!! BAPI Create Cstmr for BO Cstmr (KNA1) -

this is also one of the BAPI

'BAPI_CUSTOMER_CREATE'

the transactions for customer creation and display are ..

XD01 CREATE CUSTOMER

XD02 MODIFY CUSTOMER

XD03 DISPLAY CUSTOMER

Regards

Nilesh

Read only

former_member189631
Active Contributor
0 Likes
881

Hi Vijaya,

  • You can use this Bapi to create material,

BAPI_MATERIAL_SAVEDATA - Create/Save Material MaterData.

  • To display Material,

BAPI_MATERIAL_DISPLAY

BAPI_MATERIAL_GET_DETAIL

  • To change material Data,

BAPI_MATERIAL_EDIT

  • To delete a Material,

BAPI_MATERIAL_DELETE.

Regards,

<b>Ramganesan K</b>

Read only

Former Member
0 Likes
881

hi

good

go through this REPORT z_bapi_salesorder_create.

  • Parameters

  • Sales document type

SELECTION-SCREEN BEGIN OF LINE.

SELECTION-SCREEN COMMENT 2(20) v_text FOR FIELD p_auart.

PARAMETERS: p_auart TYPE auart OBLIGATORY.

SELECTION-SCREEN END OF LINE.

  • Sales organization

SELECTION-SCREEN BEGIN OF LINE.

SELECTION-SCREEN COMMENT 2(20) v_text1 FOR FIELD p_vkorg.

PARAMETERS: p_vkorg TYPE vkorg OBLIGATORY.

SELECTION-SCREEN END OF LINE.

  • Distribution channel

SELECTION-SCREEN BEGIN OF LINE.

SELECTION-SCREEN COMMENT 2(20) v_text2 FOR FIELD p_vtweg.

PARAMETERS: p_vtweg TYPE vtweg OBLIGATORY.

SELECTION-SCREEN END OF LINE.

  • Division.

SELECTION-SCREEN BEGIN OF LINE.

SELECTION-SCREEN COMMENT 2(20) v_text3 FOR FIELD p_spart.

PARAMETERS: p_spart TYPE spart OBLIGATORY.

SELECTION-SCREEN END OF LINE.

SKIP 1.

  • Sold-to

SELECTION-SCREEN BEGIN OF LINE.

SELECTION-SCREEN COMMENT 2(20) v_text4 FOR FIELD p_sold.

PARAMETERS: p_sold TYPE kunnr OBLIGATORY.

SELECTION-SCREEN END OF LINE.

  • Ship-to

SELECTION-SCREEN BEGIN OF LINE.

SELECTION-SCREEN COMMENT 2(20) v_text5 FOR FIELD p_ship.

PARAMETERS: p_ship TYPE kunnr OBLIGATORY.

SELECTION-SCREEN END OF LINE.

SKIP 1.

  • Material

SELECTION-SCREEN BEGIN OF LINE.

SELECTION-SCREEN COMMENT 2(20) v_text6 FOR FIELD p_matnr.

PARAMETERS: p_matnr TYPE matnr OBLIGATORY.

SELECTION-SCREEN END OF LINE.

  • Quantity.

SELECTION-SCREEN BEGIN OF LINE.

SELECTION-SCREEN COMMENT 2(20) v_text7 FOR FIELD p_menge.

PARAMETERS: p_menge TYPE kwmeng OBLIGATORY.

SELECTION-SCREEN END OF LINE.

  • Plant

SELECTION-SCREEN BEGIN OF LINE.

SELECTION-SCREEN COMMENT 2(20) v_text9 FOR FIELD p_plant.

PARAMETERS: p_plant TYPE werks_d OBLIGATORY.

SELECTION-SCREEN END OF LINE.

  • Data declarations.

DATA: v_vbeln LIKE vbak-vbeln.

DATA: header LIKE bapisdhead1.

DATA: headerx LIKE bapisdhead1x.

DATA: item LIKE bapisditem OCCURS 0 WITH HEADER LINE.

DATA: itemx LIKE bapisditemx OCCURS 0 WITH HEADER LINE.

DATA: partner LIKE bapipartnr OCCURS 0 WITH HEADER LINE.

DATA: return LIKE bapiret2 OCCURS 0 WITH HEADER LINE.

DATA: lt_schedules_inx TYPE STANDARD TABLE OF bapischdlx

WITH HEADER LINE.

DATA: lt_schedules_in TYPE STANDARD TABLE OF bapischdl

WITH HEADER LINE.

  • Initialization.

INITIALIZATION.

v_text = 'Order type'.

v_text1 = 'Sales Org'.

v_text2 = 'Distribution channel'.

v_text3 = 'Division'.

v_text4 = 'Sold-to'.

v_text5 = 'Ship-to'.

v_text6 = 'Material'.

v_text7 = 'Quantity'.

v_text9 = 'Plant'.

  • Start-of-selection.

START-OF-SELECTION.

  • Header data

  • Sales document type

header-doc_type = p_auart.

headerx-doc_type = 'X'.

  • Sales organization

header-sales_org = p_vkorg.

headerx-sales_org = 'X'.

  • Distribution channel

header-distr_chan = p_vtweg.

headerx-distr_chan = 'X'.

  • Division

header-division = p_spart.

headerx-division = 'X'.

headerx-updateflag = 'I'.

  • Partner data

  • Sold to

partner-partn_role = 'AG'.

partner-partn_numb = p_sold.

APPEND partner.

  • Ship to

partner-partn_role = 'WE'.

partner-partn_numb = p_ship.

APPEND partner.

  • ITEM DATA

itemx-updateflag = 'I'.

  • Line item number.

item-itm_number = '000010'.

itemx-itm_number = 'X'.

  • Material

item-material = p_matnr.

itemx-material = 'X'.

  • Plant

item-plant = p_plant.

itemx-plant = 'X'.

  • Quantity

item-target_qty = p_menge.

itemx-target_qty = 'X'.

APPEND item.

APPEND itemx.

  • Fill schedule lines

lt_schedules_in-itm_number = '000010'.

lt_schedules_in-sched_line = '0001'.

lt_schedules_in-req_qty = p_menge.

APPEND lt_schedules_in.

  • Fill schedule line flags

lt_schedules_inx-itm_number = '000010'.

lt_schedules_inx-sched_line = '0001'.

lt_schedules_inx-updateflag = 'X'.

lt_schedules_inx-req_qty = 'X'.

APPEND lt_schedules_inx.

  • Call the BAPI to create the sales order.

CALL FUNCTION 'BAPI_SALESDOCU_CREATEFROMDATA1'

EXPORTING

sales_header_in = header

sales_header_inx = headerx

IMPORTING

salesdocument_ex = v_vbeln

TABLES

return = return

sales_items_in = item

sales_items_inx = itemx

sales_schedules_in = lt_schedules_in

sales_schedules_inx = lt_schedules_inx

sales_partners = partner.

  • Check the return table.

LOOP AT return WHERE type = 'E' OR type = 'A'.

EXIT.

ENDLOOP.

IF sy-subrc = 0.

WRITE: / 'Error in creating document'.

ELSE.

  • Commit the work.

COMMIT WORK AND WAIT.

WRITE: / 'Document ', v_vbeln, ' created'.

ENDIF.

thanks

mrutyun^

Read only

RaymondGiuseppi
Active Contributor
0 Likes
881

Try the link below which use BAPI_MATERIAL_SAVEDATA in sample program

<a href="http://www.sap-img.com/abap/bapi-to-copy-materials-from-one-plant-to-another.htm">BAPI to Copy Materials from one Plant to Another</a>

Regards