Skip to Content
Oct 11, 2013 at 03:57 AM

Help needed - capturing EDI852 data (/SCA/BIF_I_PROACT)


Dear forumers,

I have the following scenario to work on:-

"EDI852 data is received by customers daily in the form of an XML message. There is no way to identify who the message is received from without opening each message to determine the sender. So, a custom table is needed - it will contain the Ship-to number, Business Partner number and Date and Time stamp from the XML messages. The BADI /SCA/BIF_I_PROACT needs to be enhanced in order to insert / update the custom table with the required data."

The issue I have here is with the BADI enhancement. Even after enhancing the method, /SCA/IF_EX_BIF_I_PROACT~BEFORE_CONVERSION from the BADI, /SCA/BIF_I_PROACT, nothing gets updated in the custom table - and I've checked the codes thoroughly too - nothing seems wrong with it.

Should the codes for data insertion be done elsewhere (and not in this method perhaps)? If yes, where should this be? Or, how can I find out where to implement the codes for the data insertion?

Would appreciate any inputs at all, as soon as possible. Many thanks in advance.

Codes snapshot in the method, /SCA/IF_EX_BIF_I_PROACT~BEFORE_CONVERSION:-

i_item = cs_proact_notif-product_activity-item.

* Capture the required data

CLEAR v_date_time.

CONDENSE cs_proact_notif-message_header-creation_date_time.

v_date_time = cs_proact_notif-message_header-creation_date_time.

LOOP AT i_item ASSIGNING <fs_activity_item>.

CLEAR st_vmiedidata.

st_vmiedidata-ship_to_location = <fs_activity_item>-ship_to_location-internal_id-value.

st_vmiedidata-business_partner = <fs_activity_item>-buyer_party-buyer_id.

st_vmiedidata-date_time = v_date_time.

APPEND st_vmiedidata TO i_vmiedidata.


* Update the custom table, ZVMIEDIDATA

IF i_vmiedidata IS NOT INITIAL.

SORT i_vmiedidata BY ship_to_location business_partner date_time.


COMPARING ship_to_location business_partner date_time.

UPDATE zvmiedidata FROM TABLE i_vmiedidata.