on 11-13-2013 6:12 AM
Hi all,
We have implemented the BADI BBP_DOC_CHECK_BADI to validate the data in Purchase order. We are using the function module BBP_PD_PO_GETDETAIL to read the PO detail based on the guid in the implementation.
When the Purchase order currency is changed at the header level and CHECK button is clicked, Purchase order values are read using BBP_PD_PO_GETDETAIL. Only the E_HEADER-CURRENCY is changed and E_HEADER-TOTAL_VALUE displays the previous value (unchanged).
For example:
A purchase order is created with total value as 1000 USD and when we change the currency as INR (total value is greyed out & we cannot change) and hit enter, the E_HEADER-CURRENCY is changed to INR and E_HEADER-TOTAL_VALUE is 1000. The value has to be 48000 based on the exchange rate maintained. In the portal screen I can see the value is changed to 48000 but the FM BBP_PD_PO_GETDETAIL is not returning the changed value.
CALL FUNCTION 'BBP_PD_PO_GETDETAIL'
EXPORTING
i_guid = i_guid "global unique indentifier
i_object_id = i_object_id "object id
i_with_itemdata = c_x
IMPORTING
e_header = wa_header "PO heaer data
TABLES
e_item = i_item "Po item data
e_account = i_account "acct info
E_LIMIT = i_limit
e_header_rel = i_header_rel
e_itmlim_rel = i_itmlim_rel.
Could you pls tell help me how to get all the changed values.
Hi Karthik,
Check BADI is called after CHANGE Badi. I think IS_HEADER in Change BADI will have updated values. You can create a static class attribute in Check BADI of type TYPE BBP_PDS_PO_HEADER_U and populate this in change BADI and access it in check badi.
Thanks,
Anubhav
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.