Меры DAX в Power BI Desktop: таблица мер, папки для мер, названия мер

Меры DAX в Power BI Desktop: таблица мер, папки для мер, названия мер

Меры в DAX - обычное дело когда вы работаете в Power BI. Но что, если у вас больше 100 мер? Как управлять таким количеством мер и не путаться? Сегодня мы предложим несколько решений для упрощения работы с мерами в Power BI.

Таблицы для хранения мер

Создание хранилища

Сортировка мер по таблицам - отличное решение когда в вашем отчете несколько страниц с несвязанными вычислениями. 

Самый простой вариант создания таблицы - с помощью кнопки "Введите данные". Вам нужно заполнить только название таблицы:

Кстати, имя таблицы можно начинать со специального символа "#" или даже с числа (1,2,3...), чтобы было проще вызывать меру в строке формул. 

После создания таблицы, вы сможете найти ее в правой части экрана в режиме визуализации "Поля". Добавьте первую меру в созданную таблицу и удалите "Столбец1", чтобы Power BI автоматически распознал ее как таблицу мер и перенес в начало списка:

Перенос мер в хранилище

Чтобы рассортировать ранее созданные меры по таблицам, перейдите на вкладку "Моделирование" в левой части экрана. Выбрав нужные меры с помощью клавиши Shift, определите "начальную" таблицу для хранения:

Папки внутри таблицы

Если внутри таблицы тоже начинается хаос из-за большого количества измерений, вам на помощь придут папки. Для этого выделите через Shift необходимые меры и назначьте на вкладке "Моделирование" Папку отображения:

Чтобы создать "Меру Шрёдингера", которая может находиться сразу в двух папках, пропишите названия папок через " ; " в поле "Папка отображения". 

Наименования мер как способ сортировки

Когда один показатель может выражаться и в процентах, и числом, используйте префиксы "$, #, %, Δ" в названиях мер. Тогда вы точно будете знать в каком формате выдается вычисление. При работе с большим количеством расчетов отклонений по месяцам/неделям/дням, рационально не только создавать папки для измерений, но и применять в их названии буквенные коды:

Приведем список примеров префиксов для ускорения вашей работы с моделью:

ПрефиксНазначениеПример
DoDОтклонение 
по дням
DoD_Выручка
DIVIDE(
       CALCULATE(_Finance[!Выручка], 'Calendar'[Сегодня]=1),
       CALCULATE(_Finance[!Выручка], 'Calendar'[Вчера]=1)
)
WoWОтклонение 
по неделям

WoW_Выручка

DIVIDE(

        CALCULATE(_Finance[!Выручка], 'Calendar'[Текущая неделя]=1),

        CALCULATE(_Finance[!Выручка], 'Calendar'[Прошлая неделя]=1)

)

MoMОтклонение 
по месяцам

MoM_Выручка

DIVIDE(

        CALCULATE(_Finance[!Выручка], 'Calendar'[Текущий месяц]=1),

        CALCULATE(_Finance[!Выручка], 'Calendar'[Прошлый месяц]=1)

)

YoYОтклонение 
по годам

YoY_Выручка

DIVIDE(

        CALCULATE(_Finance[!Выручка], 'Calendar'[Текущий год]=1),

        CALCULATE(_Finance[!Выручка], 'Calendar'[Прошлый год]=1)

)

TИзмерение 
за сегодня

T_Выручка =

CALCULATE(_Finance[!Выручка], 'Calendar'[Сегодня]=1)

WИзмерение за 
текущую неделю

W_Выручка =

CALCULATE(_Finance[!Выручка],'Calendar'[Текущая неделя]=1)

MИзмерение за 
текущий месяц

M_Выручка =

CALCULATE(_Finance[!Выручка], 'Calendar'[Текущий месяц]=1)

YИзмерение за 
текущий год

Y_Выручка =

CALCULATE(_Finance[!Выручка], 'Calendar'[Текущий год]=1)

ATИзмерение 
за вчера

AT_Выручка =

CALCULATE(_Finance[!Выручка], 'Calendar'[Вчера]=1)

AWИзмерение за 
прошлую неделю

AW_Выручка =

CALCULATE(_Finance[!Выручка], 'Calendar'[Прошлая неделя]=1)

AMИзмерение за 
прошлый месяц

AM_Выручка =

CALCULATE(_Finance[!Выручка], 'Calendar'[Прошлая выручка]=1)

AYИзмерение за 
прошлый год

AY_Выручка =

CALCULATE(_Finance[!Выручка], 'Calendar'[Прошлый год]=1)

@Текстовое 
значение

@_Количество_заказов

"Кол-во заказов за пр. месяц: "& FORMAT(
        '_Delivery'[#_Количество заказов], "#,##")

#Наиболее 
используемые 
меры

#_Выручка

SUM('uni vf Продажи'[DishSumInt])

Заключение

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

Используйте папки и таблицы для сортировки мер, продумывайте наименования мер и просто соблюдайте аккуратность. Это позволит кодить еще быстрее и эффективнее!

Комментарии