2006 Sep 25 2:26 AM
hi experts,
I have a requirement to update certain custom fields in material master, that is in sales data, so i was trying to executethis in bapi_material_save data.
but when I tried that it says that the material has extended, but no changes were made to the data.meaning i passing certain input values to mvke table which need tp be updated.
it says that"the material caanot be maintained since no maintable data is to be transferred".
I am nnot clear where iam goin wrong..
could anyone of please guide me?
thanks
rinky
2006 Sep 25 3:25 AM
Hi,
Try this..This is working for the custom fields in my system in the table MVKE...The lines that are marked in bold you have change it accordingly...
PARAMETERS: P_MATNR TYPE MATNR.
DATA: HEADDATA LIKE BAPIMATHEAD.
HEADDATA-MATERIAL = P_MATNR.
HEADDATA-SALES_VIEW = 'X'.
DATA: EXTENSION LIKE BAPIPAREX OCCURS 0 WITH HEADER LINE.
DATA: EXTENSIONX LIKE BAPIPAREX OCCURS 0 WITH HEADER LINE.
DATA: EXT_MVKE LIKE BAPI_TE_MVKE.
DATA: EXT_MVKEX LIKE BAPI_TE_MVKEX.
EXTENSION
EXTENSION-STRUCTURE = 'BAPI_TE_MVKE'.
<b>EXT_MVKE-SALES_ORG = '1000'.
EXT_MVKE-DISTR_CHAN = '10'.
EXT_MVKE-YYFIELD = 'ABC'.</b>
EXTENSION-VALUEPART1 = EXT_MVKE.
APPEND EXTENSION.
EXTENSIONX
EXTENSIONX-STRUCTURE = 'BAPI_TE_MVKEX'.
<b>EXT_MVKEX-SALES_ORG = '1000'.
EXT_MVKEX-DISTR_CHAN = '10'.
EXT_MVKEX-YYFIELD = 'X'.</b>
EXTENSIONX-VALUEPART1 = EXT_MVKEX.
APPEND EXTENSIONX.
DATA: RETURN TYPE BAPIRET2.
DATA: SALESDATA TYPE BAPI_MVKE.
DATA: SALESDATAX TYPE BAPI_MVKEX.
<b>SALESDATA-SALES_ORG = '1000'.
SALESDATA-DISTR_CHAN = '10'.
SALESDATAX-SALES_ORG = '1000'.
SALESDATAX-DISTR_CHAN = '10'.</b>
CALL FUNCTION 'BAPI_MATERIAL_SAVEDATA'
EXPORTING
headdata = HEADDATA
SALESDATA = SALESDATA
SALESDATAX = SALESDATAX
IMPORTING
RETURN = RETURN
TABLES
EXTENSIONIN = EXTENSION
EXTENSIONINX = EXTENSIONX
.
COMMIT WORK.
Thanks,
Naren
2006 Sep 25 3:25 AM
Hi,
Try this..This is working for the custom fields in my system in the table MVKE...The lines that are marked in bold you have change it accordingly...
PARAMETERS: P_MATNR TYPE MATNR.
DATA: HEADDATA LIKE BAPIMATHEAD.
HEADDATA-MATERIAL = P_MATNR.
HEADDATA-SALES_VIEW = 'X'.
DATA: EXTENSION LIKE BAPIPAREX OCCURS 0 WITH HEADER LINE.
DATA: EXTENSIONX LIKE BAPIPAREX OCCURS 0 WITH HEADER LINE.
DATA: EXT_MVKE LIKE BAPI_TE_MVKE.
DATA: EXT_MVKEX LIKE BAPI_TE_MVKEX.
EXTENSION
EXTENSION-STRUCTURE = 'BAPI_TE_MVKE'.
<b>EXT_MVKE-SALES_ORG = '1000'.
EXT_MVKE-DISTR_CHAN = '10'.
EXT_MVKE-YYFIELD = 'ABC'.</b>
EXTENSION-VALUEPART1 = EXT_MVKE.
APPEND EXTENSION.
EXTENSIONX
EXTENSIONX-STRUCTURE = 'BAPI_TE_MVKEX'.
<b>EXT_MVKEX-SALES_ORG = '1000'.
EXT_MVKEX-DISTR_CHAN = '10'.
EXT_MVKEX-YYFIELD = 'X'.</b>
EXTENSIONX-VALUEPART1 = EXT_MVKEX.
APPEND EXTENSIONX.
DATA: RETURN TYPE BAPIRET2.
DATA: SALESDATA TYPE BAPI_MVKE.
DATA: SALESDATAX TYPE BAPI_MVKEX.
<b>SALESDATA-SALES_ORG = '1000'.
SALESDATA-DISTR_CHAN = '10'.
SALESDATAX-SALES_ORG = '1000'.
SALESDATAX-DISTR_CHAN = '10'.</b>
CALL FUNCTION 'BAPI_MATERIAL_SAVEDATA'
EXPORTING
headdata = HEADDATA
SALESDATA = SALESDATA
SALESDATAX = SALESDATAX
IMPORTING
RETURN = RETURN
TABLES
EXTENSIONIN = EXTENSION
EXTENSIONINX = EXTENSIONX
.
COMMIT WORK.
Thanks,
Naren
2006 Sep 25 4:42 AM
2006 Sep 25 3:52 AM
HI,
for updating using FM.
we need to populate the two basic tables data.
1. data table
2. Update information table , Flags need to be set in order to update the corresponding field in the data table.
the custome field will not have , corresponding field in data table and corresponding flag in update information table .
please locate some custoemr Enhancements for the material change. Populate the value in the enhancement.
jaffer vali shaik
Message was edited by: jaffer vali shaik