COST cube calculations

The COST cube currency conversion rules read the CurrConTyp attribute and calculate the values for the preconfigured EUR and USD group currencies.

If there is a request for any other group currencies, these rules must be duplicated and modified. You can modify the rules in EPM Administration. Currency elements must be added to the CURRTYPE dimension accordingly.

Currency Conversion EUR Cost (N-Rule)

The syntax is:

[CURRTYPE:'EUR']
=B: IF(GETATTR('COST', !Cost, 1, 'CurrConTyp')@='A',
   [CURRTYPE:'LC'] /
   DB('EXRATE',!TIME, !VERSION, 'EUR', 'Average rate',
      DB('UNITCONF',!TIME, !VERSION, !UNIT, 'Currency')
   ),
   if(GETATTR('COST', !Cost, 1, 'CurrConTyp')@='E',
   [CURRTYPE:'LC']/
      DB('EXRATE',!TIME, !VERSION, 'EUR', 'End rate', 
         DB('UNITCONF',!TIME, !VERSION, !UNIT, 'Currency')
      ), 
      if(GETATTR('COST', !Cost,1, 'CurrConTyp')@='U',
         [CURRTYPE:'LC'],
         stet
      )
   )

Currency Conversion USD Cost (N-Rule)

The syntax is:

[CURRTYPE:'USD']
=B: IF(GETATTR('COST', !Cost, 1, 'CurrConTyp')@='A',
   [CURRTYPE:'LC'] /
      DB('EXRATE',!TIME, !VERSION, 'USD', 'Average rate', 
         DB('UNITCONF',!TIME, !VERSION, !UNIT, 'Currency')
      ),
   if(GETATTR('COST', !Cost, 1, 'CurrConTyp')@='E',
      [CURRTYPE:'LC'] /
         DB('EXRATE',!TIME, !VERSION, 'USD', 'End rate', 
            DB('UNITCONF',!TIME, !VERSION, !UNIT, 'Currency')
         ), 
      if(GETATTR('COST', !Cost, 1, 'CurrConTyp')@='U',
         [CURRTYPE:'LC'], 
         stet
      )
   )