Перейти к содержимому

7a. Power Query и язык М

Язык М Power Query. Области определения идентификаторов и секции

Одно и то же имя идентификатора (например, имя переменной, поля и т.п.) в запросе Power Query может быть определено несколько раз. Если вы используете имя идентификатора, на какое из этих определений будет указывать ссылка? В этом посте мы узнаем, как M разбирается с этим. Мы также рассмотрим разделы – обычно скрытые «фреймы», лежащие в основе организации выражений, составляющих код Power Query.[1]

Рис. 1. Описание члена раздела, хранящимся в литеральном атрибуте Description

Подробнее »Язык М Power Query. Области определения идентификаторов и секции

Крис Уэбб. Функция Csv.Document M Power Query

CSV-файлы часто используются в качестве источника данных для Power Query в Excel или Power BI Desktop. Однако документация Microsoft по функции Csv.Document() ограничена и в некоторых случаях неверна. В этой довольно длинной заметке я покажу вам столько возможностей этой функции, сколько мне удалось обнаружить.

Это перевод заметки Криса Уэбба. Повествование ведется от лица Криса. Мои примечания набраны с отступом.

Рис. 1. Простой CSV-файл

Подробнее »Крис Уэбб. Функция Csv.Document M Power Query

Функция Table.FromList M Power Query

Недавно столкнулся с неожиданной ошибкой в работе функции Table.FromList() языка M Power Query. Простой код…

Запрос1[1]

… не работает, и возвращает ошибку:

Рис. 1. Неожиданное поведение функции Table.FromList()

Подробнее »Функция Table.FromList M Power Query

Язык М Power Query. Метаданные

Power Query позволяет прикрепить к значению сведения о нём. Обычно эти описательные фрагменты невидимы. Их присутствие не меняет поведение движка М. Однако код (ваш или чужой, например, функция стандартной библиотеки) может считывать и задавать эти нотации. Они известны как метаданные. Их можно использовать для передачи дополнительной информации, относящейся к значению. Метаданные применяются в информационных или диагностических целях. Они также могут быть задействованы в выражениях, поскольку метаданные определяют поведение значений.[1]

Предыдущая заметка  Следующая заметка

Возьмем, например, параметры. Они обрабатываются особым образом в пользовательском интерфейсе Microsoft Excel (и Power BI), но в самом Power Query они хранятся как обычные значения.

Рис. 1. Параметры в Microsoft Excel

Подробнее »Язык М Power Query. Метаданные

Крис Уэбб. Устранение неполадок с обновлением веб-службы в Power BI с помощью функции диагностики Power Query

Это перевод статьи Криса Уэбба, дополненный моими комментариями с использованием Chat GPT (набраны с отступом). Повествование ведется от первого лица (Криса).

Ранее я писал в блоге о том, как устранять проблемы с обновлением веб-службы с помощью стороннего инструмента под названием Fiddler. Информация по-прежнему актуальна, но Fiddler — сложный инструмент. Установить его и дать правильные разрешения для просмотра всего, что ему нужно, непросто. К счастью, новая функция диагностики Power Query в Power BI (выпущенная в октябре 2019 г.) означает, что вам больше не нужно использовать Fiddler для такого рода работы. Полная информация о том, как использовать эту функцию, приведена здесь, но я подумал, что было бы полезно сосредоточиться на одном конкретном варианте ее использования.

Функция диагностики в Excel на момент публикации перевода не доступна.

Рис. 1. Запрет скачивания в фоновом режиме

Подробнее »Крис Уэбб. Устранение неполадок с обновлением веб-службы в Power BI с помощью функции диагностики Power Query

Крис Уэбб. Параметры RelativePath и Query функции M Power Query Web.Contents()

Это перевод нескольких связанных статей Криса Уэбба, дополненный моими комментариями с использованием Chat GPT (набраны с отступом).

Функция Web.Contents() в языке M Power Query позволяет получать данных с веб-страниц и веб-служб и имеет ряд полезных, но плохо документированных опций, которые упрощают создание URL-адресов для вызовов веб-служб.

Рассмотрим следующий URL-адрес:

Это вызов API метаданных с сайта https://www.data.gov.uk/, портала открытых данных правительства Великобритании. По этому адресу возвращается документ JSON (рис. 1), в котором перечислены наборы данных, найденные при поиске по ключевому слову cows (коровы).

Рис. 1. Документ JSON, возвращаемый по Запросу 1; чтобы увеличить изображение кликните на нем правой кнопкой мыши и выберите Открыть картинку в новой вкладке

Подробнее »Крис Уэбб. Параметры RelativePath и Query функции M Power Query Web.Contents()

Крис Уэбб. Ошибка в Power Query Длина блока не соответствует его дополнению

Это перевод статьи Криса Уэбба, дополненный моими комментариями и использованием Chat GPT (набраны с отступом).

При использовании функции Web.Contents для вызова веб-службы в Power Query может возникнуть ошибка Длина блока не соответствует его дополнению. Например

Запрос 1[1]

…вызывает веб-службу и на момент написания статьи выдает ошибку:[2]

Рис. 1. Ошибка Длина блока не соответствует его дополнению

Подробнее »Крис Уэбб. Ошибка в Power Query Длина блока не соответствует его дополнению

Адам Аспин. Язык M Power Query

Это сокращенный перевод главы из книги Адама Аспина, посвященной работе в Power BI. М – это язык запросов, используемый Power BI и Excel Power Query. Описаны многообразные функции языка М, типы данных, создание пользовательской функции, добавление комментариев и многое другое. Заметка будет полезна, как быстрое введение в язык М Power Query.

Adam Aspin. Pro Power BI Desktop: Self-Service Analytics and Data Visualization for the Power User. – New York: Apress Media, 2020. – 918 p.

Подробнее »Адам Аспин. Язык M Power Query

ChatGPT и написание кода на языке М Power Query

В мою жизнь вошел ChatGPT! Я даже не знаю, с чем можно сравнить первое впечатление от использования бота. Это прорыв! Пока я обращаюсь к ChatGPT в двух случаях:

  • задаю вопросы, которые ранее обращал к Google,
  • прошу написать код на языке М Power Query (PQ).

Примеры первого типа можно встретить в комментариях к моим недавним заметкам Онлайн калькулятор статистической мощности G*Power и Фрэнсис Гальтон. Наследственность таланта, её законы и последствия. Сейчас я опишу, как ChatGPT помог мне сделать робастный[1] запрос на языке М Power Query.

Рис. 1. Загрузка CSV-файла в умную таблицу Excel

Подробнее »ChatGPT и написание кода на языке М Power Query

Линда Фоукс, Уоррен Спарроу. Изучаем Power Query

Power Query – инструмент Excel, позволяющий подключаться к источникам данных, подготавливать и обрабатывать информацию для ее дальнейшего анализа. В этой книге вы найдете все, что нужно для работы с Power Query. Отдельная часть книги посвящена языку формул M, который обеспечивает новый подход к агрегированию данных. В завершение вы научитесь строить дашборды и многомерные отчеты.

Линда Фоукс, Уоррен Спарроу. Изучаем Power Query. – М.: ДМК Пресс, 2021. – 378 с.

Подробнее »Линда Фоукс, Уоррен Спарроу. Изучаем Power Query