Hi Ann,
From the issue description i can guess that the values are reaching correctly from SRM to ECC but one of the field is getting lost after that.
Is the FIELD1 a non- character field ?
How is the PO fields being updated. Is the BAPI_PO_CREATE1 / BAPI_PO_CHANGE being called ?
These BAPIs only support character type fields to be added to bapi_extensionin. Can you check if you are getting Error ME 887 in the response,
In order to map the non- character fields you will have to implement the BADI ME_BAPI_PO_CUST method map2i_extensionin in ECC.
Within the implementation you can use the below code to map the fields correctly.
METHOD if_ex_me_bapi_po_create_02~map2i_extensionin.
DATA: ls_temp TYPE bapi_te_mepoitem.
*--perform mapping only if there is at least one packed field
CHECK im_error EQ cl_mmpur_constants=>yes.
CALL METHOD cl_abap_container_utilities=>read_container_c
EXPORTING
im_container = im_container
IMPORTING
ex_value = ls_temp
EXCEPTIONS
illegal_parameter_type = 1
OTHERS = 2.
IF sy-subrc EQ 0.
MOVE-CORRESPONDING ls_temp TO ch_struc.
ENDIF.
ENDMETHOD.
~Regards,
Tanmay.