Редактор формул для вычисляемого куба

Для задания/редактирования формулы расчета необходимо в навигаторе объектов выполните команду контекстного меню «Редактировать формулы» для вычисляемого куба. Возможность доступна только в настольном приложении.

Редактор формул для вычисляемого куба, в котором задано управление формулами, выглядит следующим образом:

В области «Измерения-назначения» отображаются незафиксированные измерения куба-назначения. Под областью «Измерения-источники» отображаются незафиксированные измерения куба, выбранного в поле «Куб-источник».

Одно из измерений кубов является активным. Под названием активного измерения находится область дерева самого измерения.

Остальные измерения отображаются под областью дерева активного измерения. Для каждого предусмотрен раскрывающийся список элементов с кнопкой , при нажатии на которую измерение становится активным.

В области дерева элементов измерений доступно контекстное меню:

Список «Период» доступен, если для вычисляемого куба задано управление формулами, и содержит все периоды действия формул для выбранной координаты куба-назначения.

В поле «Выражение» формируется выражение, по которому будет рассчитано значение в выбранной координате куба-назначения. При формировании наименования элемента формулы по отметке в кубе можно задать вид его отображения с помощью команд контекстного меню:

Поиск элемента измерения

Для поиска элементов измерения:

После выполнения одного из действий будет открыто стандартное окно поиска:

Для поэтапного получения результатов поиска следует нажимать кнопку «Найти далее», фокус будет последовательно перемещаться к найденному элементу. Кнопка «Закрыть» закрывает данный диалог.

Периоды действия формул

Список «Период» содержит все периоды действия формул для выбранной координаты куба-назначения. Для каждого периода задается своя формула расчета значения.

Для добавления периода выполните команду контекстного меню «Добавить». Будет открыто окно для создания периода:

В окне задается дата начала и окончания периода. После нажатия кнопки «ОК» заданный период будет добавлен в список, в противном случае - нет.

Примечание. В случае если создаваемый период пересекается с уже существующими периодами, будет выдано соответствующее сообщение. При положительном ответе период будет добавлен (отредактирован), все полностью входящие в него периоды будут удалены, частично входящие - откорректированы.

Для редактирования выбранного периода выполните команду контекстного меню «Редактировать». Будет открыто окно как при создании периода (см. выше).

Для удаления выбранного периода выполните команду контекстного меню «Удалить». Будет выдан диалог подтверждения выполняемого действия.

Создание формулы

Формула задается для координаты (точки) куба-назначения. Для формирования координаты следует произвести отметку во всех измерениях куба. В формируемых выражениях используются координаты кубов-источников.

Для добавления координаты куба-источника в выражение для координаты куба-назначения:

После выполнения одного из действий в текущей позиции в поле «Выражение» появится элемент выражения, соответствующий координате куба-источника.

Если в вычисляемом кубе используется период действия формул и для выбранной координаты куба-назначения ни один период не был создан, то при выполнении одного из действий будет открыто окно создания периода (описание окна представлено выше).

При создании выражения можно использовать множественную отметку в измерении-источнике. После формирования множественной отметки и выполнения команды «Добавить в формулу» в текущую позицию выражения будут вставлены выбранные координаты, соединенные операцией «+».

При формировании выражения можно использовать различные математические функции и операции. Соответствующие им кнопки расположены ниже поля «Выражение»:

Кнопка Описание
+ Операция сложения.
- Операция вычитания.
* Операция умножения.
/ Операция деления.
= Знак «равно».
<> Знак «не равно».
< Знак «меньше».
> Знак «больше».
<= Знак «меньше или равно».
>= Знак «больше или равно».
() Скобки.
AND Союз «и».
DIV Операция целочисленного деления. Возвращает целое от деления.
IIF Условный оператор: IIF(<условие>,<выражение, если условие верно>,<выражение, если условие неверно>).
LAGVAL Получение значения со смещением по календарному измерению с заданным лагом: LAGVAL(@<элемент>, <лаг, на который осуществляется сдвиг>).
Если значение лага положительное, то смещение осуществляется назад по календарному измерению. При отрицательном значении лага смещение осуществляется вперёд по календарному измерению. Смещение осуществляется по тому уровню календаря, на котором расположена текущая точка расчёта. Для корректной работы функции может потребоваться задание лагов для измерений.

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

MOD Операция целочисленного деления. Возвращает остаток от деления.
NOT Союз «отрицание».
OR Союз «или».

Совет. Для получения примеров составления выражений обратитесь к разделу «Примеры».

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

Для сохранения формулы выполните команду главного меню «Куб > Сохранить».

Использование прикладных функций

Для расчета формулы может использоваться прикладная функция. Функция может содержать любое количество параметров (обязательных и необязательных) и должна возвращать значение, имеющее простой тип данных. В функцию могут быть переданы координаты куба, для этого в сигнатуре функции должны быть объявлены параметры с типом ICalculatedCubeInstanceCoord. Если в выражении указывается координата, то при расчёте в функцию будет передано фактическое значение по этой координате. Пример: Calc_Functions.Sample1(Россия|2000). Для передачи в функцию самой координаты, описываемой интерфейсом ICalculatedCubeInstanceCoord, укажите в выражении перед координатой символ «@». Пример: Calc_Functions.Sample2(@Россия|2000).

Изменение значения параметра

При наличии у куба-назначения параметров, его можно переоткрыть с новыми значениями этих параметров. Для этого выполните команду главного меню «Куб > Изменить значения параметров». Будет открыто диалоговое окно «Установка значений параметров», в котором следует определить значения. Если у куба-назначения нет параметров, то куб будет просто переоткрыт.

Закрытие редактора формул

Для закрытия редактора формул:

Если до закрытия не были сохранены созданные или измененные формулы, то будет выдано предложение на их сохранение. При положительном ответе формулы будут сохранены, в противном случае - нет.

См. также:

Кубы | Мастер создания вычисляемого куба