Most of us have used FM ‘CONVERT_TO_LOCAL_CURRENCY’ to do the currency conversion, and now HANA studio supported this functionality as well. Sometimes you may doubt about the conversion result. (E.g. you get a 1RMB = 100EUR exchange rate which is far from the reality) here, I would like to share with you how to check the currency customizing which impact the conversion result and makes you get such unexpected data.
The currency customizing activities are all under path SAP NetWeaver->General Settings->Currencies
Let’s take convert foreign amount 4.0 RMB to local currency EUR as example (as below screenshot).
The FM ‘CONVERT_TO_LOCAL_CURRENCY’ as well as HANA side will do following steps to get the right exchange rate to
complete the conversion.
Step 1: Go to IMG activity ‘Define Translation Ratios for Currency Translation’ to Check whether the translation ratios from ‘foreign
currency’ to ‘local currency’ is defined.
Step2: if step1 checks failed, then check whether the translation ratios from ‘local currency’ to ‘foreign currency’ is defined. Currency conversion will stop if no translation ratio found.
Step3: go to IMG activity ‘Define Standard Quotation for Exchange Rates’ to check the quotation type for these 2 currencies, direct or indirect? If no entry could be found here, the quotation type will be set as ‘direct’.
The quotation type will impact the exchange rate stored in TCURR.
Step 4: Determine the decimal places of ‘Foreign currency’ and ‘Local currency’ in IMG activity ‘Set Decimal Places for Currencies’. If no entry can be found, then default it as 2 places.
Step 5: Go to IMG activity ‘Currency translation exchange rate types’ and check whether reference currency is maintained for
your exchange rate type. (We use ‘M’ as example) If it is maintained as below screenshot, the currency conversion will try to get the exchange rate from ‘Foreign currency RMB’ to ‘Reference Currency SGD’ and convert RMB to SGD firstly, then it also get
the exchange rate from ‘Reference Currency SGD’ to ‘Local currency EUR’ and then convert SGD to EUR, it takes reference currency SGD as intermediate. In this scenario, conversion finished up to now. No matter what the exchange rate is maintained from RMB to EUR.
Step6: If Step5 failed, then retry to get an exchange rate from ‘foreign currency RMB’ to ‘local currency EUR’. All the exchange rate selection will select the one with a valid date down close to your input conversion date.
Step7:If Setp6 still cannot fetch an exchange rate successfully, then check whether ‘inverted’ indicator is checked for the exchange rate type. (As below screenshot), If yes, try to find an exchange rate from ‘local currency EUR’ to ‘foreign currency RMB’ and also reprocess the previous 1-5 steps.
Step8:Conversion will be terminated finally if all above steps failed.
If you have maintained an Alternative exchange rate type for ‘RMB’ and ‘EUR’ just like below, it means the currency conversion will take exchange type ‘EURX’ instead of ‘M’ and it will do the same check steps from 1 to 8 to get a right exchange rate for ‘EURX’ not ‘M’. So you have to make sure all the exchange data have been fully maintained for exchange type ‘EURX’.