Partilhar via


Gestão do Acesso a Dados

Funções de Fonte de Dados

Um Conector de Dados envolve e personaliza o comportamento de uma função de fonte de dados na Biblioteca M. Por exemplo, uma extensão para uma API REST faria uso da função Web.Contents para fazer pedidos HTTP. Atualmente, um conjunto limitado de funções de fonte de dados foi ativado para suportar extensibilidade.

Example:

[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;

Tipo de Fonte de Dados

Funções marcadas como shared na sua extensão podem ser associadas a uma fonte de dados específica ao incluir um DataSource.Kind atributo literal na função com o nome de um registo de definição de Fonte de Dados. O registo da Fonte de Dados define os tipos de autenticação suportados pela sua fonte de dados e informações básicas de marca (como o nome de apresentação / etiqueta). O nome do registo torna-se o seu identificador único.

Cada função associada à mesma fonte de dados deve ter os mesmos parâmetros de função necessários, incluindo nome, tipo e ordem. (Para efeitos do Tipo de Fonte de Dados, um parâmetro não é considerado necessário se estiver marcado optional ou se os seus metadados contiverem DataSource.Path = false.)

Funções para um Tipo de Fonte de Dados específico só podem usar credenciais associadas a esse Tipo. As credenciais são identificadas em tempo de execução através de uma consulta baseada na combinação dos parâmetros exigidos pela função. Para mais informações sobre como as credenciais são identificadas, consulte Caminhos de Fonte de Dados.

Example:

HelloWorld = [
    Authentication = [
        Implicit = []
    ],
    Label = Extension.LoadString("DataSourceLabel")
];

Propriedades

A tabela seguinte lista os campos para o seu registo de definição de Fonte de Dados.

Campo Tipo Detalhes
Authentication registo Especifica um ou mais tipos de autenticação suportados pela sua fonte de dados. É necessário pelo menos um tipo. Cada tipo será apresentado como uma opção no prompt de credenciais do Power Query. Para mais informações, consulte Tipos de Autenticação.
Etiqueta enviar SMS (opcional) Nome amigável para esta extensão nos diálogos de credenciais.
SuportaEncriptação Lógico (opcional) Quando for verdade, a interface apresentará a opção de se ligar à fonte de dados através de uma ligação encriptada. Isto é tipicamente utilizado para fontes de dados com um mecanismo de reserva não encriptado (geralmente ODBC ou fontes baseadas em ADO.NET).

Publicar na Interface do Utilizador

Semelhante ao registo de definição de Fonte de Dados , o registo Publicar fornece à interface do Power Query a informação necessária para expor esta extensão no diálogo Obter Dados .

Example:

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") }
];

Propriedades

A tabela seguinte lista os campos para o seu registo de publicação.

Campo Tipo Detalhes
ButtonText lista Lista de itens de texto. O primeiro item define o nome apresentado ao lado do ícone da fonte de dados no diálogo Obter Dados do Power BI. O segundo item (opcional) define a dica de ferramenta que será exibida quando o cursor do rato parar sobre o nome anterior.
Categoria enviar SMS Onde a extensão deve ser exibida no diálogo Obter Dados . Atualmente, os únicos valores de categoria com tratamento especial são Azure e Database. Todos os outros valores acabarão na categoria Outros.
Beta Lógico (opcional) Quando definido como true, a interface irá mostrar um identificador Preview/Beta ao lado do nome do seu conector e um diálogo de aviso indicando que a implementação do conector está sujeita a alterações críticas.
LearnMoreUrl enviar SMS (opcional) URL do site que contém mais informações sobre esta fonte de dados ou conector.
Suporta DirectQuery Lógico (opcional) Ativa a Consulta Direta para a sua extensão.
FonteImagem registo (opcional) Um registo contendo uma lista de imagens binárias (provenientes do ficheiro de extensão usando o método Extension.Contents ). O registo contém dois campos (Icon16, Icon32), cada um com a sua própria lista. Cada ícone deve ter um tamanho diferente.
ImagemDeTipoFonte registo (opcional) Semelhante ao SourceImage, exceto que a convenção para muitos conectores prontos a usar é exibir um ícone de folha com o ícone específico da fonte no canto inferior direito. Ter um conjunto diferente de ícones para o SourceTypeImage é opcional — muitas extensões simplesmente reutilizam o mesmo conjunto de ícones para ambos os campos.