Работа с представлением запроса DAX
Важно!
Представление запроса DAX в настоящее время находится в предварительной версии.
С помощью представления запросов DAX в Power BI можно просматривать и работать с запросами выражений анализа данных (DAX) в семантических моделях.
Запросы DAX
В Power BI формулы DAX используются для определения различных типов вычислений для данных, но также можно использовать для определения безопасности ролей. С другой стороны, запросы DAX можно использовать для возврата данных из модели.
Запросы DAX похожи на запросы SQL, в которых они могут отображать данные, которые уже есть. Запросы DAX не создают элементы в модели или визуальных элементах отчета.
Запросы DAX имеют две основные части:
- Инструкция EVALUATE, которая является обязательной. Он указывает, что и как данные возвращаются в запросе.
- Оператор DEFINE, который является необязательным . Он позволяет определять формулы DAX, например меру, использовать в запросе. Меры можно добавить в модель с помощью CodeLens при использовании в DEFINE.
Дополнительные сведения об использовании запросов см . в справочнике ПО DAX .
Открытие представления запроса DAX
В Power BI Desktop щелкните значок представления запросов DAX слева.
Макет представления запросов DAX
Давайте рассмотрим более подробное представление запросов DAX в Power BI Desktop.
Представление запроса DAX содержит следующие элементы:
Лента
Лента представления запросов DAX имеет общие действия, используемые при написании запросов DAX.
Давайте рассмотрим элементы на ленте:
Форматировать запрос
Нажмите кнопку "Формат запроса" или используйте SHIFT+ALT+F, чтобы отформатировать текущий запрос. Запрос отступен с помощью вкладок. Функции DAX изменяются на ВЕРХНИЙ РЕГИСТР и добавляются дополнительные строки. Форматирование запроса DAX считается рекомендуемым и улучшает удобочитаемость запросов DAX. Форматирование также отступов выполняется таким образом, что можно свернуть и развернуть разделы запроса.
Комментарий и раскомментировать
Нажмите кнопку "Закомментировать", чтобы добавить двойную обратную косую черту (//) в начало строки, в которой курсор находится или все выбранные строки. Это примечает строки и при выполнении запроса DAX эти строки игнорируются.
Нажмите кнопку раскомментировать ленту, чтобы удалить // в начале любой строки, в которой находится курсор, или все выбранные строки. Он не работает в строках, в которых добавляется несколько строковый комментарий нотации.
Вы также можете использовать CTRL+/, чтобы переключаться между комментарием и раскомментированием.
Поиск и замена
Нажмите кнопку "Найти ленту" или нажмите клавиши CTRL+F для поиска текста в редакторе запросов DAX. Поиск включает параметры для сопоставления регистра, сопоставления целого слова, использования регулярного выражения и цикла по всем совпадениям для текущего запроса. Вы также можете шеврон слева от поля "Найти ", чтобы ввести "Заменить".
Нажмите кнопку "Заменить" на ленте или используйте CTRL+H для поиска и замены текста в редакторе запросов DAX. Замена включает параметры для сохранения регистра и замены одновременно или одновременно.
Палитра команд
Нажмите кнопку ленты палитры команд или нажмите клавиши CTRL+ALT+P, чтобы открыть поле палитры команд. Вы можете найти дополнительные действия редактора запросов DAX и просмотреть связанные сочетания клавиш.
Командная строка
Панель команд представления запросов DAX включает наиболее важные действия при использовании представления запросов DAX. Кнопка "Выполнить " выполняет запрос DAX или выбранные строки запроса. Состояние запроса после выполнения появится в нижней строке состояния.
При выполнении запроса кнопка становится кнопкой "Отмена ", которую можно использовать для остановки выполнения запроса.
Редактор запросов DAX
Представление запроса DAX включает редактор запросов, где можно создавать и изменять запросы. Это больше, чем просто большая строка формул DAX. Это более мощный и имеет множество сходств с редактором DAX, доступным в VS Code.
Редактор запросов DAX содержит следующие элементы:
Предложения и Intellisense
Введите запрос и получите справку по предложениям и Intellisense во время редактирования.
Используйте ВВОД или TAB, чтобы добавить выделенную intellisense или SHIFT+ВВОД или ALT+ВВОД, чтобы перейти к другой строке без добавления параметра intellisense. Нажатие клавиши ESC закрывает любой из наложений.
Наведите указатель мыши, чтобы просмотреть формулы мер
Если мера включена в запрос DAX, вы можете навести указатель мыши на него, чтобы просмотреть формулу, имя и описание.
Щелкните, чтобы просмотреть быстрые действия мерной лампочки
Щелкнув меру в инструкции EVALUATE в запросе без инструкции DEFINE, отображается лампочка быстрых действий. Щелкните "Определить" или "Определить" со ссылками, чтобы создать инструкцию DEFINE с формулой этой меры или без нее с формулами DAX ссылочной меры.
Обновление мер модели с помощью CodeLens
Использование DEFINE MEASURE полезно при создании мер. Вы можете изменить несколько мер в одном окне, а затем запустить запрос, чтобы просмотреть результаты всех или только некоторых из них с определенной группой по столбцам. Вам не нужно создавать визуальный элемент таблицы в представлении отчета и переключаться между формулами мер. CodeLens выполняет этот шаг дальше, предоставляя запросы, когда мера уже существует в модели, или если она отсутствует, она может добавить ее.
Рабочий процесс обновления мер
Быстрые действия лампочки и CodeLens можно использовать вместе в полном рабочем процессе:
- В контекстном меню меры выберите быстрые запросы, а затем выполните оценку создания запроса на новой вкладке "Запрос".
- Щелкните меру в запросе, чтобы определить или определить с ссылками, добавив инструкцию DEFINE.
- Внесите обновления выражений в меру, а затем запустите запрос DAX, чтобы отобразить это изменение.
- Когда изменение отображается должным образом, используйте модель обновления CodeLens: перезаписать меру для сохранения ее обратно в модель.
Ниже приведен более визуальный способ понять рабочий процесс:
Сетка результатов
При выполнении запроса результаты отображаются в сетке результатов .
Если в редакторе запросов существует несколько инструкций EVALUATE, можно вернуть несколько результатов. Для переключения между ними можно использовать раскрывающийся список результатов . Кнопка "Копировать " копирует всю сетку в виде таблицы с разделителями табуляции с заголовками. Сетка может быть изменена с помощью стрелки в правом верхнем углу или вручную с курсором на границе между сеткой результатов и редактором запросов.
Если запрос приводит к ошибке, отображается сетка результатов.
Кнопка копирования передает ошибку в буфер обмена. Начало ошибки указывает, где в запросе находится ошибка. На изображении выше ошибка:
"Запрос (4, 23) Значение для "Продажи 2" не может быть определено. Либо столбец не существует, либо для этого столбца нет текущей строки".
И "Запрос (4, 23)" указывает, что ошибка находится в строке 4 и в символе 23.
Вкладки запросов
Представление запроса DAX может содержать несколько вкладок запросов, которые можно переименовать или удалить. Они также показывают текущее состояние запроса.
Каждая вкладка включает индикатор состояния:
- Индикатор не отображается перед выполнением запроса.
- Зеленый проверка mark указывает на успешное выполнение запроса.
- Красный крест указывает на ошибку.
- Заполненный квадрат в кругу указывает, что запрос был отменен.
- Часы указывают, что выполняется запрос.
Запросы могут выполняться в фоновом режиме, что позволяет продолжить работу на других вкладках запросов.
Сохранение запросов DAX
Вкладки запросов DAX сохраняются в файле при сохранении из Power BI Desktop, чтобы продолжить работу, когда вы снова откроете файл. Если вы используете режим разработчика для сохранения проекта Power BI, каждая вкладка запроса включена в файл DAXQueries в папку DAXQueries папки семантической модели. Дополнительные сведения см. в documenation режима deverloper Power BI.
В настоящее время невозможно просмотреть или изменить запросы DAX в служба Power BI. Средства просмотра отчета или семантической модели не отображают запросы DAX, сохраненные семантической моделью.
Панель «Данные»
В области данных отображаются элементы в модели, которые помогают создавать запросы. Пути редактирования для большинства этих элементов блокируются в представлении запроса.
Быстрые запросы
Контекстное меню области данных включает быстрые запросы. Используйте быстрые запросы для создания запросов на новой вкладке запросов для таблиц, столбцов и мер. Быстрые запросы предназначены для повышения производительности общих задач и создания, чтобы их можно было легко изменить. Все быстрые запросы создаются на новой вкладке запроса и выполняются автоматически.
В любом месте
Определите все меры в модели, создайте запрос со всеми формулами мер, отображаемыми в запросе. Легко искать все формулы мер.
Таблицы
Отображение первых 100 строк создает запрос с помощью SELECTCOLUMNS(), чтобы отобразить первые 100 строк таблицы. Столбцы перечислены в каждой строке, чтобы упростить изменение путем закомментирования строк. Order BY также включается для указания порядка сортировки.
Отображение статистики столбцов создает запрос со статистическими данными для каждого столбца в таблице. См. множество формул для статистической обработки столбцов как MIN, MAX, AVERAGE, COUNT и многое другое.
Определите все меры в этой таблице, создайте запрос с формулами мер этой таблицы , отображаемыми в запросе.
Столбцы
Отображение предварительного просмотра данных создает запрос с помощью DISTINCT() для просмотра значений столбца.
Отображение статистики столбцов создает запрос, показывающий статистические сведения для этого конкретного столбца. См. множество формул для агрегирования столбца как MIN, MAX, AVERAGE, COUNT и многое другое. Возвращаемый запрос зависит от типа данных столбца, отображающего различные статистические данные для числовых, текстовых и датовых столбцов.
Показатели
Оценка создает запрос для отображения результата меры. SUMMARIZECOLUMNS() используется, чтобы можно было добавить в любую группу по столбцам, чтобы показать меру определенными группами, такими как Страна, Продукт и т. д.
Определение и оценка создает запрос для отображения результата меры и отображения формулы меры в инструкции DEFINE, которая затем может быть изменена.
Определение со ссылками и оценка создает запрос для отображения результата меры и отображения не только формулы меры в инструкции DEFINE, которая может быть изменена, но и любые другие меры, на которые ссылается формула меры. Измените любую часть в полном контексте меры.
Получение визуальных запросов DAX из Анализатор производительности
Визуальные элементы в представлении отчета получают данные из модели путем создания запроса DAX. Визуальный запрос можно просмотреть в представлении запросов DAX с помощью Анализатор производительности. Анализатор производительности может дать вам представление о том, почему визуальный элемент может отображать неожиданное значение или просто как способ быстрого запуска запроса, который можно изменить.
В представлении отчета перейдите на ленту "Оптимизация", а затем щелкните Анализатор производительности. Нажмите кнопку "Пуск записи", а затем обновите визуальные элементы. В таблице ниже разверните визуальный элемент, чтобы просмотреть параметры копирования запроса или запуска в представлении запросов DAX. При нажатии кнопки "Запуск в представлении запроса DAX" выполняется визуальный запрос, добавляет его в виде новой вкладки запроса в представлении запросов DAX, а затем запускает его.
Рекомендации и ограничения
Представление запроса DAX в настоящее время находится в предварительной версии. Помните о перечисленных ниже моментах.
- Модель обновления: перезапись меры CodeLens удаляет комментарии в формуле DAX.
- Модель обновления: перезапись мер CodeLens не отображается только при изменении форматирования.
- Модель обновления. Перезапись мер CodeLens может привести к дополнительным строкам при возникновении синтаксической ошибки.
- 500+ строк в редакторе запросов DAX имеет заметное задержку при вводе.
- Быстрые действия lightbulb для мер отображаются только в том случае, если инструкция DEFINE не находится на вкладке запроса.
- Форматирование запроса нарушает функцию RANKX.
- Палитра команд показывает команды, которые еще не работают.
- Вкладки запросов пока не позволяют перемещаться.
- Сетка результатов пока не отображает столбцы и меры с указанным форматом, например "Валюта", Кто число с тысячами и т. д.
- Скачайте этот файл из служба Power BI не будут включать запросы DAX, сохраненные в опубликованной семантической модели.
- Настройка начальной интеграции Git из рабочей области не будет включать запросы DAX, сохраненные в опубликованной семантической модели. Дополнительные сведения см. в интеграции с Fabric Git.
И есть некоторые ограничения, которые следует учитывать:
- Не более 15 МБ данных на запрос. После превышения 15 МБ текущая строка завершается, но дополнительные строки не записываются.
- Не более 1 000 000 значений на запрос. Если вы запрашиваете 20 столбцов, можно вернуть максимум 50 000 строк (1 миллион, разделенный на 20).
- Определите все меры в этой таблице или модели недоступны при наличии более 500 мер.
Связанный контент
Обратная связь
https://aka.ms/ContentUserFeedback.
Ожидается в ближайшее время: в течение 2024 года мы постепенно откажемся от GitHub Issues как механизма обратной связи для контента и заменим его новой системой обратной связи. Дополнительные сведения см. в разделеОтправить и просмотреть отзыв по