Обработка доступа к данным
Функции источника данных
Объект data Подключение or упаковывает и настраивает поведение функции источника данных в библиотеке M. Например, расширение REST API использует функцию Web.Contents для выполнения HTTP-запросов. В настоящее время ограниченный набор функций источника данных включен для поддержки расширяемости.
Пример:
[DataSource.Kind="HelloWorld", Publish="HelloWorld.Publish"]
shared HelloWorld.Contents = (optional message as text) =>
let
message = if (message <> null) then message else "Hello world"
in
message;
Тип источника данных
Функции, помеченные как shared
в расширении, могут быть связаны с определенным источником данных, включая DataSource.Kind
литеральный атрибут функции с именем записи определения источника данных.
Запись источника данных определяет типы проверки подлинности, поддерживаемые источником данных, и основные данные фирменной символики (например, отображаемое имя или метка).
Имя записи становится уникальным идентификатором.
Каждая функция, связанная с тем же источником данных, должна иметь одинаковые необходимые параметры функции, включая имя, тип и порядок. (В целях типа источника данных параметр не считается обязательным, если он помечен optional
или содержит метаданные DataSource.Path = false
.)
Функции для определенного типа источника данных могут использовать только учетные данные, связанные с этим типом. Учетные данные определяются во время выполнения путем подстановки на основе сочетания необходимых параметров функции. Дополнительные сведения о том, как идентифицируются учетные данные, см. в разделе "Пути источника данных".
Пример:
HelloWorld = [
Authentication = [
Implicit = []
],
Label = Extension.LoadString("DataSourceLabel")
];
Свойства
В следующей таблице перечислены поля для записи определения источника данных.
Поле | Тип | Сведения |
---|---|---|
Проверка подлинности | record | Указывает один или несколько типов проверки подлинности, поддерживаемых источником данных. Требуется по крайней мере один вид. Каждый тип будет отображаться в качестве параметра в командной строке учетных данных Power Query. Дополнительные сведения см. в разделе "Типы проверки подлинности". |
Этикетка | text | (необязательно) Понятное отображаемое имя этого расширения в диалоговых окнах учетных данных. |
ПоддержкаEncryption | Логические | (необязательно) Если задано значение true, пользовательский интерфейс будет представлять возможность подключения к источнику данных с помощью зашифрованного подключения. Обычно это используется для источников данных с нешифрованным резервным механизмом (как правило, ODBC или ADO.NET на основе источников). |
Публикация в пользовательском интерфейсе
Как и запись определения источника данных, запись публикации предоставляет пользовательский интерфейс Power Query, необходимые для предоставления этого расширения в диалоговом окне получения данных.
Пример:
HelloWorld.Publish = [
Beta = true,
ButtonText = { Extension.LoadString("FormulaTitle"), Extension.LoadString("FormulaHelp") },
SourceImage = HelloWorld.Icons,
SourceTypeImage = HelloWorld.Icons
];
HelloWorld.Icons = [
Icon16 = { Extension.Contents("HelloWorld16.png"), Extension.Contents("HelloWorld20.png"), Extension.Contents("HelloWorld24.png"), Extension.Contents("HelloWorld32.png") },
Icon32 = { Extension.Contents("HelloWorld32.png"), Extension.Contents("HelloWorld40.png"), Extension.Contents("HelloWorld48.png"), Extension.Contents("HelloWorld64.png") }
];
Свойства
В следующей таблице перечислены поля для записи публикации.
Поле | Тип | Сведения |
---|---|---|
ButtonText | список | Список текстовых элементов. Первый элемент определяет имя, отображаемое рядом с значком источника данных в диалоговом окне получения данных Power BI. Второй элемент (необязательно) определяет подсказку средства, отображаемую при наведении мыши предыдущего имени. |
Категория | text | Где расширение должно отображаться в диалоговом окне получения данных . В настоящее время единственными значениями категорий с особыми руками являются Azure и Database . Все остальные значения будут в конечном итоге в категории "Другие". |
Бета-версия | Логические | (необязательно) Если задано значение true, пользовательский интерфейс будет отображать идентификатор предварительной версии или бета-версии рядом с именем соединителя и предупреждением о том, что реализация соединителя подвержена критическим изменениям. |
LearnMoreUrl | text | (необязательно) Url-адрес веб-сайта, содержащий дополнительные сведения об этом источнике данных или соединителе. |
ПоддержкаDirectQuery | Логические | (необязательно) Включает прямой запрос для расширения. |
SourceImage | record | (необязательно) Запись, содержащая список двоичных образов (источник из файла расширения с помощью метода Extension.Contents ). Запись содержит два поля (Icon16, Icon32), каждый из которых содержит собственный список. Каждый значок должен иметь другой размер. |
SourceTypeImage | record | (необязательно) Аналогично SourceImage, за исключением соглашения для многих соединителей из поля, является отображение значка листа с исходным значком в правом нижнем углу. Наличие другого набора значков для SourceTypeImage является необязательным— многие расширения просто повторно используют один набор значков для обоих полей. |