Урок 13 · 8 мин чтения

Первая мера на DAX без страха

Что такое мера, чем она отличается от вычисляемого столбца и как написать первую — на одной функции.

DAX — язык формул Power BI. Со стороны он пугает: десятки функций, контекст, какие-то CALCULATE. Но первая полезная мера пишется одной строкой, и с неё стоит начать.

Мера против столбца

Сначала развилка, на которой спотыкаются все новички: мера или вычисляемый столбец?

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

Мера считается на лету, в момент показа, под текущие фильтры отчёта. Памяти почти не ест. Выручка, маржа, средний чек, % выполнения плана — это всё меры.

Правило по умолчанию

Если считаете агрегат (сумму, среднее, долю) — это мера. Вычисляемый столбец берите редко: когда значение нужно для строки таблицы, для среза или для связи. Сомневаетесь — начинайте с меры.

Первая мера

Возьмём таблицу продаж со столбцом «Сумма». Выручка — это сумма по всем видимым строкам:

Выручка = SUM ( Продажи[Сумма] )

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

Отношение — через DIVIDE

Второй кирпич — отношения: средний чек, конверсия, доля. Тут есть ловушка: обычное деление падает, если знаменатель ноль. В DAX для этого есть DIVIDE:

Средний чек =
DIVIDE ( [Выручка], [Количество заказов] )

DIVIDE сам обработает деление на ноль и вернёт пусто вместо ошибки. Привыкайте писать деление только так — это первая хорошая привычка в DAX.

Не делите через «слэш»

[Выручка] / [Количество заказов] сломает отчёт в первой же строке, где заказов нет. DIVIDE — безопасно. Разница в надёжности, а пишется столько же.

Имена, которые читаются

Называйте меры так, чтобы тип агрегата был виден сразу: Выручка, Средняя выручка, Выручка YTD, Выручка YoY %. Через полгода вы скажете спасибо себе за Средний чек вместо Мера3.

Подсказка: не пишите рутину руками

Типовые меры — прошлый год, нарастающий итог, % от целого, ABC — пишутся по устоявшимся шаблонам. Собрать такую с подстановкой ваших таблиц и колонок можно в нашем генераторе DAX-мер: выбираете паттерн — получаете готовую формулу с VAR/RETURN и DIVIDE.

Что дальше

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

Вы считаете выручку — сумму по столбцу «Сумма». Что выбрать?
Агрегаты (сумма, среднее, доля) — это меры: считаются на лету под фильтры отчёта и почти не едят память. Вычисляемый столбец берут редко и осознанно.
Прогресс сохраняется в вашем браузере.
§ Power BI под ключ

Нужно внедрить
это в компании?

Соберём DWH, модель и дашборды под ваши данные. Бесплатная консультация — 30 минут.

Телефон+7 918 042 34 43