Published on

February 11, 2018

Централизация бизнес-логики с помощью служб анализа в SQL Server

Службы анализа (SSAS) в SQL Server предоставляют центральное хранилище для размещения бизнес-логики, что облегчает доступ к ней для пользователей отчетов. Одним из ключевых аспектов создания простой и эффективной базы данных SSAS является проектирование измерений и фактов в хранилище данных или хранилище данных. Эти таблицы должны иметь минимальное количество вычисляемых столбцов, позволяя SSAS использовать свой собственный язык для расчета коэффициентов, процентов, целей и показателей.

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

Расчет валовой прибыльной маржи

Расчет валовой прибыльной маржи (GPM) представляет собой сумму продаж по позициям минус сумма затрат по позициям, деленная на сумму продаж по позициям:

GPM = (Сумма(Продажи) – Сумма(Затраты)) / Сумма(Продажи)

Это отношение можно легко создать в SSAS и отформатировать как процент. В многомерных кубах расчет можно добавить на вкладке “Расчет” редактора куба. В табличных моделях расчет можно добавить в раздел “Меры” таблицы.

Многомерные кубы

В многомерных кубах вы можете добавить новый вычисляемый элемент, щелкнув правой кнопкой мыши список CALCULATE в верхней левой части экрана. В редакторе вы можете определить выражение для расчета:

( [Меры].[Сумма продаж через Интернет] - [Меры].[Себестоимость продукции через Интернет] ) / [Меры].[Сумма продаж через Интернет]

Убедитесь, что установлено форматирование строки как “Процент” и выбрано [Сумма продаж через Интернет] в разделе “Поведение при отсутствии данных”, чтобы избежать ошибок деления на ноль.

После развертывания куба вы можете анализировать результаты в Excel, используя опцию “Анализировать в Excel” во вкладке браузера куба.

Табличные модели

В табличных моделях вы можете создать ту же меру, выбрав вкладку таблицы, содержащую необходимые столбцы для расчета. В этом примере это вкладка “Продажи через Интернет”. Расчет можно определить с использованием синтаксиса языка DAX:

Интернет GPM := CALCULATE( ( [Продажи через Интернет] - [Себестоимость продукции через Интернет])  / [Продажи через Интернет])

Не забудьте отформатировать меру как процент в разделе “Свойства”.

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

Ключевые показатели эффективности (KPI)

После того, как у вас есть отношение, например, валовая прибыльная маржа в базе данных SSAS, вы можете воспользоваться еще одной мощной функцией, называемой ключевые показатели эффективности (KPI). KPI позволяют сравнивать целевое значение с фактическим значением, а также верхние и нижние пределы. Они также предоставляют индикаторы состояния, такие как красный свет для ниже средней производительности, желтый для средней и зеленый для хорошей производительности.

В табличных моделях вы можете настроить KPI, определив целевое значение, верхний предел, нижний предел и стиль значка для визуализации. Эти KPI могут быть сравнены с значением в мере, что позволяет более гибкие сравнения на основе разных категорий и лет.

Централизуя бизнес-логику в службах анализа, вы устраняете необходимость дублирования расчетов в нескольких отчетах и снижаете риск различных значений. Это обеспечивает согласованность и точность показателей производительности в организации.

Ссылки: Меры и группы кубов, Табличные меры, Моделирование по измерениям

Click to rate this post!
[Total: 0 Average: 0]

Let's work together

Send us a message or book free introductory meeting with us using button below.