Multi Currency Reports
By Tim Dexter-Oracle on Aug 14, 2007
If you are writing reports that will show currency data across multiple currencies then templates can get complex all to quickly. With the introduction of the Euro-currency things have gotten simpler. I rememeber writing Oracle Reports for my old team EMEA Financials and having to handle multiple currencies, even revaluation reports to get amounts to a single currency. We had some nice user exits to format currencies for us to make life simlper. You'll be pleased to hear that publisher can help you there too - no matter what flavor you are running. Life is admittedly easier for EBS users, and will shortly be as easy for standalone with PS and JDE following along later.
The xdo.cfg file can contain all the formatting information required any currency you happen to be reporting on, the entries for the currencies are very straight forward.
<currency-formats>For the actual formats just refer to the user guide on currency formatting.
<currency code="USD" mask="999D99"/>
<currency code="JPY" mask="999D99XX"/>
Once you have defined the formats you can then reference them in your templates thus:
When the formatting engine executes it will pick up your formats and apply them to your currency values. If you apply a mask that does not exist then you'll get good ol 2 d.p. output ... not good if you want Yen!
I mentioned that life was easier for EBS users, you get a nice user interface to create the formats in the configuration manager tab, its strightforward stuff.
Navigate to the Currencies sub-tab under the Administration tab. Click on Create Currency Format Sets.
Enter a name and a code for this set. The code is a unique identifier and cannot be changed later.
The View Currency Formats page shows the currencies formats available in this set. You can also update the currency set (changing its name), or update/delete any currency formats already created. Click on Add Currency Format.
Select a currency from the LOV. This list is generated from the FND currency table so you can add more currencies if needed from System Adminstrator responsibility (but all iso currencies should be covered).
The format mask should be in Oracle number format. The format should be MLS compliant so 'D' and 'G' should be used instead of explicitly specifying the separators. In fact use only '9', '0', 'D', and 'G' to compose the number format. (Some information regarding Oracle number formats can be found at this page: http://www.ss64.com/orasyntax/numfmt.html)
There is currently no validation of the format mask. This may be included in a future release with APIs from the i18n library.
Once the currency format set is created, you can assign it to the Currency Format Set property in the configuration page (under category FO Processing).
Standalone, JDE and PS users, you need to wait a while and keep plugging away at that config file for now.