Параметры расчета

Окно «Параметры расчета» запускается:

В данном окне определяются параметры расчета на сервере БД.

При установке флажка «Период расчета» следует указать начало и окончание периода расчета. По умолчанию будет предложен последний введенный период. Также будет доступен для установки флаг «Oтдельно по каждому месяцу», который позволяет выполнять расчет отдельно по каждому месяцу, что ускорит процесс расчета. Например, при выборе периода 01.01.2007-01.06.2007 будет генерироваться не одна процедура на весь период, а несколько процедур сроками 01.01.2007-31.01.2007, 01.02.2007-28.02.2007 и т.д.

В поле «Рассчитать» определяется набор элементов, которые необходимо рассчитать:

Примечание. Если диалог был вызван из навигатора объектов, то данное поле будет недоступно для редактирования, расчет будет произведен по всем координатам куба (вариант «Все элементы»).

В поле «Предварительно и в процессе расчета» определяется способ выполнения расчета:

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

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

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

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

Пример расчета

Для многомерного расчета в качестве источника и приёмника используется один и тот же куб. Данный куб состоит из рекурсивного измерения и содержит 2 факта. В редакторе формул многомерного расчета для координат куба были заданы следующие формулы:

Координата куба-назначения Заданная для нее формула
b1(факт1) b3(факт1)
b1(факт2) b3(факт1)
b2(факт1 ) b4(факт1)

До расчета куб содержал следующие данные:

Рассчитываемые значения подчеркнуты красным цветом. После расчета данным методом были получены следующие результаты:

Рассчитанные значения подчеркнуты зеленым. Несмотря на то что значение для элемента b2 по Факт1 не изменилось после расчета, значение для данной координаты по Факт2 стало пустым, так как не было задано формулы для данного факта.

Для сравнения рассмотрим использование двух разных методов расчета:

Для многомерного расчета в качестве источника и приёмника используется один и тот же куб. Данный куб состоит из рекурсивного измерения и содержит 2 факта. В редакторе формул многомерного расчета для координаты куба «b1(Факт1)» (подчеркнута зеленым) используется формула «b2(Факт1)». До расчета куб содержал следующие данные:

Ниже приведены данные, которые были получены при расчете методами «Обновлять изменившиеся элементы непустыми значениями» (слева) и «Обновлять изменившиеся элементы непустыми значениями по показателям» (справа):

Результат применения формулы одинаков в обоих случаях (подчеркнуты красным): значение «b1(Факт1)» равно значению «b2(Факт1)». При использовании метода «Обновлять изменившиеся элементы непустыми значениями» (слева) значение для координаты b1 по Факт2 стало пустым, так как не было задано формулы по данному факту координаты; при использовании метода «Обновлять изменившиеся элементы непустыми значениями по показателям» (справа) изменение значения происходит только по тем фактам координаты, для которых была задана формула.

Рассмотрим пример:

Для многомерного расчета в качестве источника и приёмника используется один и тот же куб. Данный куб состоит из рекурсивного измерения и содержит 1 факт. В редакторе формул многомерного расчета для координат куба были заданы следующие формулы:

Координата куба-назначения Заданная для нее формула
b1 b2 + b3 + b4
b2 b3 +10
b3 b4 +10

Все выражения заданы по имеющемуся факту куба. До расчета куб содержал следующие данные:

Для этих данных был произведен расчет, используя метод «Обновлять изменившиеся элементы», с установленным (слева) и снятым (справа) флагом «Учитывать зависимость формул друг от друга»:

При установленном флаге (результат слева) перед вычислением значения координаты b1 сначала вычисляются значения координат b2 и b3, так как для них заданы формулы. Для получения значения координаты b2 будет вычислено значение координаты b3 и так далее. После того как получены значения всех входящих в формулу координат будет вычислено значение координаты b1.

При снятом флаге (результат справа) для вычисления координаты b1 берутся имеющиеся значения координат b2, b3 и b4: «6», «5» и «10» соответственно. Для вычисления координаты b2 берется имеющееся значение координаты b3 — «5» и так далее.

Примечание. В случае использования в формулах функции Shift следует помнить, что данная функция не будет участвовать в рекурсии, то есть при ее расчете всегда будут использованы имеющиеся значения координат, которые находятся в ее выражении. Данная особенность является ограничением разработки.

После нажатия на кнопку «Запустить расчет» будет запущен многомерный расчет на сервере БД. Во время расчета внизу окна будет видна индикация процесса с указанием времени расчета. По окончании расчета будет выдано сообщение о результатах расчета.

См. также:

Редактирование формул | Многомерный расчет на сервере БД