Гиперион кумулятивно рассчитывает данные
Я новичок в Hyperion, и у меня проблема с некоторыми данными.
Я не хочу кумулятивно вычислять данные, вместо этого я хотел бы использовать различия двух последовательных значений для проведения оценок.
Пример:
Start: 100
200
300
Результат должен быть 200, а не 600 это возможно? И если да, то как?
Спасибо!
Мой Гиперион Версия: 11.1.2.0000
1 ответ
Похоже, это то, что вы ищете:
Value Difference strDifference Output strOutput
100 0 0 0 0
200 100 200-100 = 100 100 0+100 = 100
300 100 300-200 = 100 200 100+100 = 200
150 -150 150-300 = -150 50 200+(-150) = 50
Итак, формула для столбца Difference
является:
if(Prior(Difference)==null) {0}
else {Value-Prior(Value)}
И формула для столбца Output
является:
if(Prior(Difference)==null) {0}
else {Prior(Difference)+Difference}
Если вы не хотите, чтобы общая сумма была Output
в этом случае это более просто:
Sum(Difference)
Порядок сортировки имеет значение, очевидно.
Это крайне неэффективно; если ваш набор данных большой, Hyperion потребуется много времени для обработки раздела, если он вообще завершится.