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
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
Hi Naren,
Thanks a lot for your timely help.Its working fine.
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
| User | Count |
|---|---|
| 6 | |
| 2 | |
| 1 | |
| 1 | |
| 1 | |
| 1 | |
| 1 | |
| 1 | |
| 1 | |
| 1 |