When the material’s price is determined according to the Purchasing Info Record(PIR, tcode ME13/ME1M), the system firstly identify the PIR/vendor using the function module ME_SEARCH_SOURCE_OF_SUPPLY. Then the price is determined according to the sub strategy defined in the valuation variant, in which step function module ME_READ_INFORECORD is used. Actually this process is done in MM-PUR, then the determined value will be transfered to CO-PC-PCP (Product Cost Planning) side.
I’d like to explain how the currency translation is carried out during the price calculation process.
Firstly the price determined from a Purchasing Info Record should be converted into document currency. This is done in MM side.
– When calculating the purchasing price (either the quotation price or the PO price) the currency translation will be carried out with exchange rate type M. This cannot be controlled as it is calculated the same way as in actual (when for example creating a purchase order).
-In details, if the the quotation price or PO price are in a currency different than the Purchasing Info Record currency (docuement currency), the system will convert it into the PIR currency using exchange rate type M. The PIR currency can be seen in table EINE
– The price in document currency will be transfered to CO-PC-PCP.
Secondly, the system needs to convert the price calculated and returned by MM from document currency into object currency (company code currency), if the document currency is different than the object currency.
– The currency translation in PCP side will be done according to below customizing:
1. The system find the exchange rate type from the cost estimate version. The Tcode is OKYD.
2. if no relevant entry defined in the cost estimate version, the exchange rate type from the CO version will be used. The transaction code is OKEV. You should check version 0 for the current fiscal year.
– Even when the currency for quotation price is the same with the company code currency (say USD), as far as the PIR is in a different currency (say EUR), the currency conversion is necessary. The price will be transalated from USD to EUR using exchange rate type M, then from EUR to USD again using the exchange rate type defined in the PCP customizing.
At the end, I’d like to introduce two useful function modules for currency translation:
I use these two function modules from time to time when debugging a currency translation issue.