Обзор DAX Studio – базовые функции

23585
2018-12-11_12-51-56

Рано или поздно пользователи Power BI задаются вопросом: “Как можно проверить работу конкретных мер или фильтров?” – ведь важно, чтобы расчеты и данные в отчете были на 100% корректны. В этой статье мы познакомим вас с возможностями инструмента DAX Studio, который решает именно эту проблему и является неотъемлемым инструментом специалиста по Power BI. Вы узнаете в чём ценность этой программы и научитесь некоторым базовым манипуляциям.

DAX Studio – бесплатный инструмент, который позволяет подключаться к модели данных Power BI, Power Pivot и SSAS.

Главными функциями DAX Studio являются:

  • получение наглядного результата выполнения мер и их тестирование;
  • выгрузка данных в файл;
  • оптимизация мер.

Итак, первым шагом необходимо скачать DAX Studio с официального сайта.

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

Нам показано несколько вариантов для подключения, но мы подключимся к Power BI. Для того чтобы программа определила файл Power BI, необходимо чтобы этот отчет уже был открыт в PBI. В нашем случае это “Статья v7.8”.

Мы будем использовать модель данных из  прошлой статьи “Анализ данных amoCRM с помощью Power BI (часть 2 – Визуализация)”. Рекомендуем её прочитать, чтобы лучше разобраться в данном материале.

Итак, нажимаем кнопку “Connect” и получаем представление главного окна программы.

Первое, что бросается в глаза, это панель ввода. Здесь происходит основная работа по написанию запросов.

Под панелью ввода располагается панель вывода. Здесь вы увидите результаты своего запроса.

Слева находится список таблиц вашей модели данных. Здесь представлены как таблицы, созданные пользователем, так и служебные таблицы, например, название которых начинаются с LocalDateTable. Таблицы LocalDateTable автоматически создаются, когда в модели появляется столбец с типом данных “дата” (таким образом, автоматически создается иерархия дат).

Разберём простой пример, когда нам необходимо посмотреть на содержимое таблицы “AMO Параметры сделок”.

Каждый запрос DAX должен начинаться с ключевого слова EVALUATE.

Далее кликнем по имени таблицы в списке слева и перенесём её на окно запросов, затем нажмем “Run” или кнопку “F5” на клавиатуре.

В окне вывода мы увидим содержимое нашей таблицы.

Мы можем изменить место, куда будет выводиться результат, например, в файл. Для этого необходимо нажать на кнопку “Output” и выбрать пункт “File”.

Затем нажмём кнопку “Run” или “F5”. Появится окно, в котором нужно будет выбрать папку для сохранения и написать имя файла.

После этого, у вас на компьютере в нужной папке появится текстовый файл (TSV или CSV формата) с заданным именем.

Отфильтруем нашу таблицу с условием, что 'АМО Параметры сделок'[Название воронки] = “Заявка”, получим

Наше выражение не поместилось в окно. Чтобы это исправить и сделать легко читаемый код, нажмём на кнопку “Format Query”, тогда получим

Кнопка “Format Query” позволяет отправить выражение DAX на сайт DAX Formatter и получить отформатированное выражение.

В итоге мы получили таблицу только с названием воронки “Заявка”.

Если вы забыли синтаксис той или иной функции, то вы можете перейти во вкладку “Functions”. Здесь представлен список всех функций DAX, доступные в той модели данных, к которой мы подключились.

Допустим нам надо посмотреть синтаксис уже упомянутой функции “FILTER”. На вкладке “Functions” а папке “FILTER” найдём нужную нам функцию и кликнем дважды на неё.

В окне ввода появился синтаксис функции “FILTER”.

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

Стоит отметить, что DAX Studio на выходе запроса всегда даёт таблицу. Но как же тогда работать с мерами? Для этих целей нам поможет функция ROW.

Синтаксис:

ROW ( "Имя столбца 1"Выражение 1"Имя столбца 2"; Выражение 2; ... )

Эта функция создает таблицу из одной строки. В столбец под именем “Имя столбца 1” помещается значение выражения (меры) “Выражение 1” и так далее.

Обратите внимание, что в синтаксисе ROW мы используем разделитель (;), который принят в Европе, но программа по умолчанию использует американский вариант разделителя (,). Вы можете поменять знак (;) на (,) нажав на кнопку “Swap Delimiters”

или в опциях программы (файл -> Options) поменять тип разделителя, как показано на скриншоте.

Рассмотрим, например, вычисление меры “Доход”.

Как всегда первым делом пишем ключевое слово EVALUATE. Затем в круглых скобках функции ROW укажем столбец с названием “Доход”, а на место второго аргумента перенесём меру с названием “Доход” из списка слева в таблице “Сделки” в окно запросов. Нажмем кнопку “Run”.

На выходе получили таблицу, состоящую из одной строки и из одного столбца с названием “Доход” и значением нашей меры.

Таким образом, мы можем посмотреть на правильность выполнения фильтрации, правильность вычисления меры и тому подобное. Удобно, не правда ли?

Давайте теперь посмотрим на код меры “Доход”. Для этого необходимо кликнуть по ней в списке слева правой кнопкой мыши и выбрать пункт “Define Measure”.

В окне запросов появится следующее:

Мы видим два ключевых слова: DEFINE MEASURE, что означает определить меру. После этих слов пишется непосредственно код меры.

Мы можем изменять формулу меры, как нам вздумается. Все изменения действуют только в DAX Studio, поэтому мы можем легко тестировать сложные меры (оценивать последствия изменений на результат).

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

Надеемся, что данный материал был вам полезен.

Оставляйте свои комментарии и вопросы под статьёй, мы будем рады обратной связи от вас.