30 авг. 2010 г.

Настройка HSP_PM_STATES

В Planning есть возможность изменить название статусов процесса согласования бюджетных блоков и их цветовое представление.


Пример:

UPDATE "HSP_PM_STATES" SET NAME = 'Не начато' WHERE STATE_ID = 0;
UPDATE "HSP_PM_STATES" SET NAME = 'Подписано', COLOR = 'ORANGE' WHERE STATE_ID = 4;
UPDATE "HSP_PM_STATES" SET NAME = 'Начато' WHERE STATE_ID = 1;
UPDATE "HSP_PM_STATES" SET NAME = 'Отклонено', COLOR = 'RED' WHERE STATE_ID = 5;
UPDATE "HSP_PM_STATES" SET NAME = 'На рассмотрении', COLOR = 'BLUE' WHERE STATE_ID = 2;
UPDATE "HSP_PM_STATES" SET NAME = 'Утверждено', COLOR = 'GREEN' WHERE STATE_ID = 3;

Выглядит этот светофор так:


P.S. дополнительная информация http://www.orahyplabs.com/

19 авг. 2010 г.

Essbase Custom-Defined Macros

Задача:
Существует куб со следующими измерениями:
Account
   Acc1
   Acc2
   Acc3
Period
   YearTotal
     Q1
       Jan
       Feb
       ...
Year
   FY09 
   FY10
   FY11

Необходимо создать функцию XXPRIOR которая умеет "перескакивать" через год т.е.

XXPRIOR(Jan->FY10) = Dec->FY09

Решение:
Создаем макрос в MaxL:
create or replace macro '@XXPRIOR' 
(SINGLE) as 
'( 
  (@ISMBR(Jan) * @@1->Dec->@CURRMBRRANGE("Years", LEV, 0, -1,-1))  
    + (@ISMBR(Feb:Dec) * @PRIOR (@@1)) 
)'

Перестартовываем приложение в Essbase.

Используем макрос в calc-сриптах:
FIX(FY10, Jan:May)
 
    Acc2 = @XXPRIOR(Acc1); /* Macro */
    Acc3 = @PRIOR(Acc1);   /* Standart Function */

ENDFIX

Этот пример показывает результат работы скрипта:
Dec     Jan     Feb     Mar    Apr    May
                FY09    FY10    FY10    FY10   FY10   FY10
                ===     ===     ===     ===    ===    ===                       
Acc1            1100    1200    1000    1300   1300   1400
Acc2            #MI     1100    1200    1000   1300   1300
Acc3            #MI     #MI     1200    1000   1300   1300

Для детального изучения смотрите Technical Reference: Custom-Defined Macros