Today, in SAPâ€™s Business Information Warehouse, currency conversion can take place using different parameters defined in a currency translation key (source currency, target currency, exchange rate type and time reference) and in different layers (during update of data to the data targets, at query definition time and at query runtime).
One major requirement, not fully covered by todayâ€™s architecture, is the dynamic time currency conversion using variables in Reporting. The dynamic time reference in the above mentioned table only includes dynamic conversion using a â€œdate InfoObjectâ€ (no variable input) or the query key date (applicable in only some business cases, see comment below). Therefore, this technical solution shows you how to implement multiple and dynamic time currency conversions in one query. This includes especially variable time conversions allowing the customer to execute different conversions to the same target currency using different dates (example: simulate influence of exchange rates on sales). Please note: the variable selection of the target currency mentioned in this paper can be achieved using standard functionality.
The solution needs to be implemented only once per InfoCube but is very usable for the BW end users. Only the conversion rates (table TCURR) have to be loaded (and maintained on R/3) on a regular basis. Key benefits of this solution are:
- Very easy to use (simple input of time reference by user)
- Independent of data model (solution works with any Infocube and query).
- Correct aggregation of converted quantities (totals and subtotals are calculated).
- Low performance impact: usage of the OLAP BADI (virtual exit) is not leading to bigger data amounts being processed by the OLAP processor.
- No impact on transaction data stored in the BW database.