on 10-22-2007 11:32 AM
Hi All,
I need to transfer PO customer fields that were created in the SRM system to backend SAP system.
I am using Extended Classic Scenario in SRM and SRM Version is 5.0.
I am able to replicate the data created in SRM system to the backend.
How ever, I found the following BADI while debugging.
1. BBP_DOC_SAVE_BADI
2. BBP_CTR_RELVAL_ICC
3. BBP_DOC_SAVE_ICC
4. BBP_F4_SAVE_DB
5. HRSYNC_P
Hence, please tell me which BADI, I need to use to send my customer fields to the backend system.
Regards,
Venky.
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
Hi
As Disha told, <u>You need to create a customer Implementation of any othe BADIs using SE19 Transaction.
Say, you create an active customer Implementation of BBP_ECS_PO_OUT_BADI...</u>
<u><b>See links given in earlier reply for detailed sample code.</b></u>
<u>Write the following sample code (pls change it as per your business requirement)</u>
METHOD if_ex_bbp_ecs_po_out_badi~bbp_b46b_po_outbound.
[...]
** Customer fields
MOVE 'POHEADER' TO w_customer_fields-refobject.
*PO approver
MOVE 'ZZAPPROVER' TO w_customer_fields-fieldname.
MOVE is_header-zzlastapprover TO w_customer_fields-container.
APPEND w_customer_fields TO ct_bapi_customer_fields.
*SC Date
MOVE 'ZZSCDATE' TO w_customer_fields-fieldname.
MOVE lv_scheader-created_at TO w_customer_fields-container(15).
APPEND w_customer_fields TO ct_bapi_customer_fields.
*Requester Org
MOVE 'ZZORGA' TO w_customer_fields-fieldname.
MOVE w_requester_orgunit TO w_customer_fields-container.
APPEND w_customer_fields TO ct_bapi_customer_fields.
[...]
endmethod.
<u>BBP_PO_INBOUND_BADI in R/3.</u>
method IF_EX_BBP_PO_INBOUND_BADI~BBP_MAP_BEFORE_BAPI.
data wa_customer_fields TYPE BBPS_IF_CUSTOMER_FIELDS.
data : WA_BAPI_TE_MEPOHEADER type BAPI_TE_MEPOHEADER,
WA_BAPI_TE_MEPOHEADERX type BAPI_TE_MEPOHEADERX.
data WA_EXTENSIONIN TYPE BAPIPAREX.
data txt_960(960) type c.
[...]
*** EKKO Customer fields.
*PO Number
move BBP_POHEADER-PO_NUMBER to WA_BAPI_TE_MEPOHEADER-PO_NUMBER.
move BBP_POHEADER-PO_NUMBER to WA_BAPI_TE_MEPOHEADERX-PO_NUMBER.
*ZZAPPROVER
READ TABLE BBP_CUSTOMER_FIELDS INTO wa_customer_fields
WITH KEY refobject = 'POHEADER'
fieldname = 'ZZAPPROVER'.
IF SY-SUBRC EQ 0.
MOVE wa_customer_fields-container TO WA_BAPI_TE_MEPOHEADER-ZZAPPROVER.
WA_BAPI_TE_MEPOHEADERX-ZZAPPROVER = 'X'.
endif.
*ZZSCDATE
READ TABLE BBP_CUSTOMER_FIELDS INTO wa_customer_fields
WITH KEY refobject = 'POHEADER'
fieldname = 'ZZSCDATE'.
IF SY-SUBRC EQ 0.
MOVE wa_customer_fields-container TO WA_BAPI_TE_MEPOHEADER-ZZSCDATE.
WA_BAPI_TE_MEPOHEADERX-ZZSCDATE = 'X'.
endif.
*ZZORGA
READ TABLE BBP_CUSTOMER_FIELDS INTO wa_customer_fields
WITH KEY refobject = 'POHEADER'
fieldname = 'ZZORGA'.
IF SY-SUBRC EQ 0.
MOVE wa_customer_fields-container TO WA_BAPI_TE_MEPOHEADER-ZZORGA.
WA_BAPI_TE_MEPOHEADERX-ZZORGA = 'X'.
endif.
CLEAR txt_960.
CLEAR WA_EXTENSIONIN.
write WA_BAPI_TE_MEPOHEADER to txt_960 left-justified.
WA_EXTENSIONIN-STRUCTURE = 'BAPI_TE_MEPOHEADER'.
WA_EXTENSIONIN-VALUEPART1 = txt_960(240).
WA_EXTENSIONIN-VALUEPART2 = txt_960+240(240).
WA_EXTENSIONIN-VALUEPART3 = txt_960+480(240).
WA_EXTENSIONIN-VALUEPART4 = txt_960+720(240).
append WA_EXTENSIONIN to BAPI_EXTENSIONIN.
CLEAR txt_960.
CLEAR WA_EXTENSIONIN.
write WA_BAPI_TE_MEPOHEADERX to txt_960 left-justified.
WA_EXTENSIONIN-STRUCTURE = 'BAPI_TE_MEPOHEADERX'.
WA_EXTENSIONIN-VALUEPART1 = txt_960(240).
WA_EXTENSIONIN-VALUEPART2 = txt_960+240(240).
WA_EXTENSIONIN-VALUEPART3 = txt_960+480(240).
WA_EXTENSIONIN-VALUEPART4 = txt_960+720(240).
append WA_EXTENSIONIN to BAPI_EXTENSIONIN.
endmethod.
Hope this will help.
Regards
- Atul
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.