‎2008 Jul 01 12:40 PM
Hi....!!!
when am trying to upload material master throug' BAPI i get error..
just am selecting Basic Views..
My Prg Follws:
&----
*& Report Z_BAPI *
*& *
&----
*& *
*& *
&----
REPORT Z_BAPI .
TABLES: bapimathead, "Headerdata
bapi_mara, "Clientdata
bapi_marax, "Clientdatax
bapi_marc, "Plantdata
bapi_makt, "Material description
bapiret2. "Return messages
DATA:v_file TYPE string.
TYPES: BEGIN OF lsmw_material_master,
matnr(018) TYPE c, "Material number
mbrsh(001) TYPE c, "Industry sector
mtart(004) TYPE c, "Material type
maktx(040) TYPE c, "Material description
meins(003) TYPE c, "Base unit of measure
END OF lsmw_material_master.
DATA: it_matmaster TYPE TABLE OF lsmw_material_master WITH HEADER LINE,
it_materialdesc TYPE TABLE OF bapi_makt WITH HEADER LINE,
it_return TYPE bapiret2.
SELECTION-SCREEN BEGIN OF BLOCK b1 WITH FRAME TITLE text-002.
PARAMETERS:p_file LIKE rlgrap-filename OBLIGATORY.
SELECTION-SCREEN END OF BLOCK b1 .
************************************************************************
*u2022 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.
**********************************************************************
*u2022 TO UPLOAD THE DATA *
**********************************************************************
START-OF-SELECTION.
v_file = p_file.
CALL FUNCTION 'GUI_UPLOAD'
EXPORTING
filename = v_file
filetype = 'ASC'
has_field_separator = '#'
TABLES
data_tab = it_matmaster.
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-base_uom = it_matmaster-meins.
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
PLANTDATA =
PLANTDATAX =
FORECASTPARAMETERS =
FORECASTPARAMETERSX =
PLANNINGDATA =
PLANNINGDATAX =
STORAGELOCATIONDATA =
STORAGELOCATIONDATAX =
VALUATIONDATA =
VALUATIONDATAX =
WAREHOUSENUMBERDATA =
WAREHOUSENUMBERDATAX =
SALESDATA =
SALESDATAX =
STORAGETYPEDATA =
STORAGETYPEDATAX =
FLAG_ONLINE = ' '
IMPORTING
RETURN = IT_RETURN
TABLES
MATERIALDESCRIPTION = IT_MATERIALDESC .
WRITE:/ IT_RETURN-TYPE,
2 IT_RETURN-ID,
22 IT_RETURN-NUMBER,
25 IT_RETURN-MESSAGE.
.
ENDLOOP.
Pls find if am did any mistake in my prg.....
‎2008 Jul 01 1:46 PM
http://www.saptechies.com/mm01-upload-using-bapi-2/
chk this code
‎2008 Jul 01 1:46 PM
http://www.saptechies.com/mm01-upload-using-bapi-2/
chk this code
‎2008 Jul 03 10:47 AM
bapi_mara-base_uom = it_matmaster-meins.
bapi_marax-base_uom = 'X'.
would u pls tell me what is the exact purpose of using
Bapi_marax structure we have passs only ' X'.
‎2008 Jul 02 6:21 AM
Hi,
Before Endloop.
commit work.
ie.
LOOP AT it_matmaster.
-
-
CALL FUNCTION 'BAPI_MATERIAL_SAVEDATA'.
-
commit work.
endloop.
Reward if useful,,,,,,
Thanks
Durai.V
‎2008 Jul 02 6:53 AM
Put the code..
CALL FUNCTION 'BAPI_TRANSACTION_COMMIT'
EXPORTING
WAIT = 'X'.
It will work..