Создание показателей на основе формулы

Показатели-формулы позволяют посчитать значения из других типов показателей.
Например, можно рассчитать:

  • процент освоения бюджета,
  • показатели освоенного объема,
  • среднюю стоимость работ на единицу площади объекта
  • или премиальную составляющую заработной платы сотрудника.
Перед созданием показателей на основе формул необходимо, чтобы в кубе уже был хотя бы один показатель на основании запросов, иначе переменных для выполнения расчетов в показателе-формуле попросту не будет.
  1. Зайдите в шаблон OLAP-куба (предварительно его нужно создать и добавить измерение, а также добавить хотя бы один показатель-измерение).
  2. В портлете «Показатели» → Создать.


    Рисунок 1 – Страница шаблона OLAP-куба

  3. Введите название показателя.
  4. В поле Тип показателя выберите Формула.
  5. В портлете «Формула» (Рисунок 2), в выпадающем меню, выберите один из существующих показателей редактируемой сводки.
  6. Нажмите кнопку Добавить для добавления новой строки формулы.
  7. В выпадающем меню выберите арифметическую или логическую операцию.
  8. Нажмите кнопку Добавить для добавления новой строки формулы.
  9. Выберите следующий показатель / константу / операцию и т.д.


    Рисунок 2 – Страница создания показателя на основе формулы

  10. Сохраните показатель.
Результатом логической формулы является число «0» – если условие не выполняется, число «1» – если условие выполняется.
Показатели-формулы, основанные на логических выражениях, можно использовать в других показателях-формулах, либо показателях-индикаторах.
<название показателя 1, 2…n>Сколько уже создано показателей в этом OLAP-кубе, столько их будет в этом перечне
ORлогическое ИЛИ (как минимум одно из двух условий должно выполняться)
ANDлогическое И (все заданные условия должны выполняться)
!=не равно
>=больше или равно
<=меньше или равно
>больше
<меньше
=равно
)скобки для изоляции и приоретизации части вычисления
(
^возведение в степень
/деление
*умножение
-вычитание
+сложение
Константаможно внести число-константу, которая будет участвовать в вычислении
Проверка на NULLпроверить, есть ли в поле какое-то значение или там пусто

При задании формулы можно проверить, заполнено ли значение в другом показателе.

В портлете «Формула» при составлении формулы выберите в выпадающем списке «Проверка на NULL» – и рядом показатель, который нужно проверить.

Результат формулы – логический.

  • Если значение проверяемого поля пустое, то результат формулы будет равен 1.
  • Если значение проверяемого поля не пустое, то результат формулы будет равен 0.

Для показателей формул агрегация меняет метод расчета формулы для сводного итога в отчете.

Например, есть показатель-формула, который считается как
С=АxВ:

  • если агрегация включена, то сводный итог для показателя С считается как ∑Сi, где i – строки отчета.
    Это значит, что сначала система посчитает значения строки, а только потом – сумму всех значений. Поэтому такой вариант вычисления не подходит для дальнейших операций с показателями-счётчиками (индикаторами) – вместо их количества, будет подставляться константа 1.
  • если агрегация выключена, то сводный итог для показателя С считается как ∑Аi x ∑Вi, где i – строки отчета.
    Система сначала посчитает сумму по всему показателю, а только после будет выполнять операции между показателями. Это будет работать только для тех показателей, которые ранее уже были агрегированы.

Используется для вспомогательных показателей, используемых для промежуточных расчетов. Если включено, то при построении отчета этот показатель по умолчанию будет скрыт.

Условия: на разных этапах проекта (читай – на разных этапах реквизита-процесса) расчёт услуги по договору должен рассчитываться исходя из разных ставок.

Принцип решения: (X1*Y)*C1+(X2*Y)*C2+…+(Xn*Y)*Cn, где:

  • X1, X2…Xn – значения из справочников 1, 2…n соответственно.
  • Y – объём работы (количество деталей, число часов и т.п.), который соотносится со ставкой в справочнике.
  • C1, C2…Cn – бинарный коэффициент, результат проверки фазы. Требования к коэффициенту:
    • Может быть только 0 или 1.
    • Только один из коэффициентов в выражении может быть равен 1, вне зависимости от количества возможных коэффициентов (читай – вариантов, способов расчёта).