Escolar Documentos
Profissional Documentos
Cultura Documentos
e VISÃO GERAL
c GUIA DE INSTRUÇÕES
Obter dados
Transformar dados
p CONCEITO
Diagnóstico de consulta
Tratamento de erros
c GUIA DE INSTRUÇÕES
Conteúdo de referência
i REFERÊNCIA
Referência da linguagem M
O que é o Power Query?
Artigo • 05/10/2023
Localizar e conectar-se a dados é O Power Query possibilita a conectividade com uma ampla
muito difícil gama de fontes de dados, incluindo dados de todos os
tamanhos e formas.
Desafio existente Como Power Query ajuda?
Qualquer forma é única e não Ao usar Power Query para acessar e transformar dados, você
repetível define um processo repetível (consulta) que pode ser
facilmente atualizado no futuro para obter dados atualizados.
Caso precise modificar o processo ou a consulta para
considerar as alterações subjacentes de esquema ou dados,
você poderá usar a mesma experiência interativa e intuitiva
usada quando definiu inicialmente a consulta.
Quando você cria uma etapa de transformação por meio da interação com os
componentes da interface do Power Query, o Power Query cria automaticamente o
código da linguagem M necessário para fazer a transformação para que você não
precise escrever nenhum código.
7 Observação
Transformações
O mecanismo de transformação no Power Query inclui muitas funções de transformação
predefinidas que podem ser usadas por meio da interface gráfica do Editor do Power
Query. Essas transformações podem ser tão simples quanto remover uma coluna ou
filtrar linhas, ou tão comuns quanto usar a primeira linha como um cabeçalho de tabela.
Há também opções avançadas de transformação, como mesclagem, acréscimo, agrupar
por, dinamizar e transformar colunas em linhas.
Fluxos de dados
O Power Query pode ser usado em muitos produtos, como Power BI e Excel. No
entanto, o uso do Power Query dentro de um produto limita seu uso apenas a esse
produto específico. Os fluxos de dados são uma versão do serviço independente de
produto da experiência do Power Query que é executada na nuvem. Usando fluxos de
dados, você pode obter dados e transformar dados da mesma forma, mas em vez de
enviar a saída para o Power BI ou Excel, você pode armazenar a saída em outras opções
de armazenamento, como Dataverse ou Azure Data Lake Storage. Dessa forma, você
pode usar a saída de fluxos de dados em outros produtos e serviços.
Power Query M
let
Source = Exchange.Contents("xyz@contoso.com"),
Mail1 = Source{[Name="Mail"]}[Data],
#"Expanded Sender" = Table.ExpandRecordColumn(Mail1, "Sender", {"Name"},
{"Name"}),
#"Filtered Rows" = Table.SelectRows(#"Expanded Sender", each
([HasAttachments] = true)),
#"Filtered Rows1" = Table.SelectRows(#"Filtered Rows", each ([Subject] =
"sample files for email PQ test") and ([Folder Path] = "\Inbox\")),
#"Removed Other Columns" = Table.SelectColumns(#"Filtered Rows1",
{"Attachments"}),
#"Expanded Attachments" = Table.ExpandTableColumn(#"Removed Other
Columns", "Attachments", {"Name", "AttachmentContent"}, {"Name",
"AttachmentContent"}),
#"Filtered Hidden Files1" = Table.SelectRows(#"Expanded Attachments",
each [Attributes]?[Hidden]? <> true),
#"Invoke Custom Function1" = Table.AddColumn(#"Filtered Hidden Files1",
"Transform File from Mail", each #"Transform File from Mail"
([AttachmentContent])),
#"Removed Other Columns1" = Table.SelectColumns(#"Invoke Custom
Function1", {"Transform File from Mail"}),
#"Expanded Table Column1" = Table.ExpandTableColumn(#"Removed Other
Columns1", "Transform File from Mail", Table.ColumnNames(#"Transform File
from Mail"(#"Sample File"))),
#"Changed Type" = Table.TransformColumnTypes(#"Expanded Table Column1",
{{"Column1", type text}, {"Column2", type text}, {"Column3", type text},
{"Column4", type text}, {"Column5", type text}, {"Column6", type text},
{"Column7", type text}, {"Column8", type text}, {"Column9", type text},
{"Column10", type text}})
in
#"Changed Type"
Confira também
Fontes de dados no Power Query
Obtendo dados
Início rápido do Power Query
Formatar e combinar dados usando o Power Query
O que são fluxos de dados
Obter a visão geral dos dados
Artigo • 10/04/2023
O Power Query pode se conectar a várias fontes de dados diferentes para que você
possa trabalhar com os dados necessários. Este artigo orienta você pelas etapas para
trazer dados para Power Query no Power Query Desktop ou Power Query Online.
A conexão a uma fonte de dados com o Power Query segue um conjunto padrão de
estágios antes de aterrissar os dados em um destino. Este artigo descreve cada um
desses estágios.
) Importante
1. Configurações de conexão
2. Autenticação
4. Destino da consulta
1. Configurações de conexão
Inicialmente, a maioria dos conectores exige pelo menos um parâmetro para inicializar
uma conexão com a fonte de dados. Por exemplo, o conector do SQL Server requer pelo
menos o nome do host para estabelecer uma conexão com o banco de dados do SQL
Server.
Os parâmetros do conector são comumente usados para estabelecer uma conexão com
uma fonte de dados e eles, em conjunto com o conector usado, definem o que é
chamado de caminho de fonte de dados.
7 Observação
Alguns conectores não exigem que você insira parâmetros. Eles são chamados de
conectores singleton e terão apenas um caminho de fonte de dados disponível por
ambiente. Alguns exemplos são Adobe Analytics, MailChimp e Google Analytics.
2. Autenticação
Cada conexão feita no Power Query precisa ser autenticada. Os métodos de
autenticação variam de conector para conector e alguns conectores podem oferecer
vários métodos de autenticação.
Anônimo: comumente usado ao se conectar a uma fonte de dados que não requer
autenticação de usuário, como uma página da Web ou um arquivo disponível por
HTTP público.
Básico: um nome de usuário e uma senha enviados na codificação base64 são
aceitos para autenticação.
Chave de API: uma única chave de API é aceita para autenticação.
Conta organizacional ou Conta Microsoft: esse método também é conhecido
como OAuth 2.0.
Windows: pode ser implícito ou explícito.
Banco de dados: disponível apenas em alguns conectores de banco de dados.
Janela do Navegador
Caixa de diálogo de visualização da tabela
7 Observação
7 Observação
Há um limite fixo de 10.000 objetos no Navegador no Power Query Desktop. Esse limite
não ocorre no Power Query Online. Eventualmente, a interface do usuário do Power
Query Online substituirá a da área de trabalho.
4. Destino da consulta
Este é o estágio no qual você especifica onde carregar a consulta. As opções variam de
integração a integração, mas a única opção sempre disponível é carregar dados no
editor do Power Query para transformar e enriquecer ainda mais a consulta.
Experiência do Power Query Online
Os estágios para obter dados no Power Query Online são:
3. Editor de consultas
Configurações de conexão
As credenciais de conexão
Configurações de conexão
Na seção de configurações de conexão, você define as informações necessárias para
estabelecer uma conexão com sua fonte de dados. Dependendo do conector, pode ser
o nome do servidor, o nome de um banco de dados, um caminho de pasta, um caminho
de arquivo ou outras informações exigidas pelo conector para estabelecer uma conexão
com sua fonte de dados. Alguns conectores também permitem subseções específicas ou
opções avançadas para oferecer mais controle e opções ao se conectar à fonte de
dados.
As credenciais de conexão
Na primeira vez que você usar o Power Query para se conectar a uma fonte de dados
específica, será necessário criar uma nova conexão associada a essa fonte de dados.
Uma conexão é a definição completa do gateway, credenciais, níveis de privacidade e
outros campos específicos do conector que compõem as credenciais de conexão
necessárias para estabelecer uma conexão com sua fonte de dados.
7 Observação
Nome da conexão: esse é o nome que você pode definir para identificar
exclusivamente suas conexões. Observe que você não pode duplicar o nome de
uma conexão em seu ambiente.
Gateway de dados: Se a fonte de dados exigir um gateway de dados, selecione o
gateway usando a lista suspensa deste campo.
Tipo de autenticação & credenciais: dependendo do conector, você tem várias
opções de tipo de autenticação disponíveis para estabelecer uma conexão, bem
como campos em que você insere suas credenciais. Neste exemplo, o tipo
autenticação do Windows foi selecionado e você pode ver os campos Nome de
usuário e Senha que precisam ser preenchidos para estabelecer uma conexão.
Nível de privacidade: você pode definir o nível de privacidade da fonte de dados
como Nenhum, Privado, Organizacional ou Público.
7 Observação
Para saber mais sobre o que são os gateways de dados e como registrar um novo
gateway para seu ambiente ou locatário, acesse Usar o gateway de dados local.
) Importante
Depois de definir uma conexão no Power Query Online, você poderá reutilizar a mesma
conexão posteriormente sem inserir todas essas informações novamente. O campo
Conexão oferece um menu suspenso onde você seleciona suas conexões já definidas.
Depois de selecionar sua conexão já definida, não será necessário inserir outros detalhes
antes de selecionar Avançar.
Depois de selecionar uma conexão nesse menu, você também poderá fazer alterações
nas credenciais, no nível de privacidade e em outros campos específicos do conector
para sua fonte de dados em seu projeto. Selecione Editar conexão e altere qualquer um
dos campos fornecidos.
2. Visualização dos dados
O objetivo do estágio de versão prévia de dados é fornecer uma maneira amigável de
visualizar e selecionar os dados.
Janela do Navegador
Caixa de diálogo de visualização da tabela
3. Editor de consultas
Para o Power Query Online, você precisará carregar os dados no editor do Power Query,
onde poderá transformar e enriquecer ainda mais a consulta se optar por fazer isso.
Informações adicionais
Para entender melhor como obter dados usando as diferentes integrações de produtos
do Power Query, acesse Onde obter dados.
Onde obter dados
Artigo • 05/10/2023
Obter dados de fontes de dados disponíveis geralmente é o primeiro encontro que você
tem com o Power Query. Este artigo fornece as etapas básicas para obter dados de cada
um dos produtos da Microsoft que incluem o Power Query.
7 Observação
No Power BI Desktop, você também pode selecionar diretamente uma planilha do Excel,
um conjunto de dados do Power BI, um banco de dados do SQL Server ou dados do
Dataverse sem usar a opção Obter dados. Você também pode fazer a inserção direta de
dados em uma tabela ou selecionar uma fonte de dados que foi usada recentemente.
7 Observação
6. Na página Escolher fonte de dados, use Pesquisar para pesquisar pelo nome do
conector, ou selecione Ver mais no lado direito do conector para ver uma lista de
todos os conectores disponíveis no serviço Power BI.
7. Caso você escolha ver mais conectores, você ainda pode usar Pesquisar para
pesquisar pelo nome do conector, ou escolher uma categoria para ver uma lista de
conectores associados com essa categoria.
Você também pode optar por obter dados diretamente de uma planilha do Excel
sem usar a opção Importar dados.
3. Na página Escolher fonte de dados, use Pesquisar para pesquisar pelo nome do
conector, ou selecione Ver mais no lado direito do conector para ver uma lista de
todos os conectores disponíveis no serviço Power BI.
4. Caso você escolha ver mais conectores, você ainda pode usar Pesquisar para
pesquisar pelo nome do conector, ou escolher uma categoria para ver uma lista de
conectores associados com essa categoria.
2. No painel Tabelas:
Selecione uma tabela no painel Tabelas para a qual você quer importar dados
e, em seguida, selecione Importar>Importar dados.
Abra a tabela em seu painel individual e, em seguida, selecione
Importar>Importar dados.
Em ambos os casos, você também pode optar por obter dados diretamente de
uma planilha do Excel sem usar a opção Importar dados.
b. Na caixa de diálogo Novo fluxo de dados, insira um nome para o novo fluxo de
dados.
c. Selecione Criar.
4. Em Salvar fonte de dados como, insira um nome para sua fonte de dados.
5. Selecione Avançar.
6. Na página Escolher fonte de dados, use Pesquisar para pesquisar pelo nome do
conector, ou selecione Ver mais no lado direito do conector para ver uma lista de
todos os conectores disponíveis no serviço Power BI.
7. Caso você escolha ver mais conectores, você ainda pode usar Pesquisar para
pesquisar pelo nome do conector, ou escolher uma categoria para ver uma lista de
conectores associados com essa categoria.
4. Na página Escolher fonte de dados, use Pesquisar para pesquisar pelo nome do
conector, ou selecione Ver mais no lado direito do conector para ver uma lista de
todos os conectores disponíveis no serviço Power BI.
5. Caso você escolha ver mais conectores, você ainda pode usar Pesquisar para
pesquisar pelo nome do conector, ou escolher uma categoria para ver uma lista de
conectores associados com essa categoria.
2. Na guia Power Apps, siga as instruções para importar dados para uma nova tabela
ou para uma tabela existente na seção Power Apps.
Para obter informações sobre como obter dados no assistente de processo, acesse
Conectar-se a uma fonte de dados.
No entanto, o Azure Data Factory usa o Power Query para transformar dados na
estruturação de dados. Os seguintes artigos do Azure Data Factory descrevem como
usar o Power Query para a estruturação de dados:
Obter dados de fontes de dados disponíveis geralmente é o primeiro encontro que você
tem com o Power Query. Este artigo fornece uma explicação dos diferentes módulos na
experiência moderna de obter dados.
7 Observação
Página Inicial
A página inicial funciona como um resumo de todos os módulos e apresenta diferentes
opções para agilizar o processo e aproximar você dos seus dados. Normalmente, este
módulo contém quaisquer fontes de dados existentes e oferece a opção de usar uma
nova fonte de dados, tabela e fazer upload de arquivos. Na página inicial, você pode
selecionar Exibir mais no lado direito das seções Novas fontes e Hub de dados do
OneLake para visitar esses módulos.
Modelos
Um modelo de fluxo de dados fornece um conjunto predefinido de entidades e
mapeamentos de campo para habilitar o fluxo de dados da origem para o destino, no
Common Data Model. Um modelo de fluxo de dados facilita a movimentação de dados,
o que, por sua vez, reduz a carga geral e o custo para um usuário corporativo. Ele
fornece uma vantagem inicial para ingerir dados em que você não precisa se preocupar
em conhecer e mapear as entidades e campos de origem e destino - nós fazemos isso
para você, por meio de modelos de fluxo de dados. Para obter mais informações sobre
modelos, acesse Introdução aos modelos de fluxo de dados; uma maneira rápida e
eficiente de criar seu placar de líderes de vendas e obter visibilidade sobre seu pipeline
de vendas .
Novo
O novo módulo fornece uma lista completa de conectores que você pode selecionar.
Nesta página, você pode pesquisar um conector em todas as categorias usando a barra
de pesquisa na parte superior da página. Você também pode navegar pelas categorias
para encontrar um conector específico com o qual se integrar. Selecionar um conector
aqui abre a janela de configurações de conexão, que inicia o processo de conexão. Para
obter mais informações sobre como usar conectores, acesse Visão geral de obtenção de
dados.
Upload
O módulo Upload permite que você carregue seus arquivos diretamente. Os seguintes
conectores oferecem suporte a esse recurso:
Excel
JSON
PDF
Texto/CSV
XML
Este módulo é uma extensão desse recurso e permite que você selecione o botão
Procurar para fazer upload de um arquivo local, ou até mesmo arrastar e soltar um
arquivo. Para obter mais informações sobre como carregar arquivos, acesse Fazer
upload um arquivo.
Tabela em branco
O módulo Tabela em branco fornece um início rápido na criação de uma tabela em um
fluxo de dados.
Consulta em branco
O módulo Consulta em branco permite que você escreva ou cole seu próprio script M
para criar uma nova consulta.
Autenticação com uma fonte de dados
Artigo • 23/03/2023
Ao tentar se conectar a uma fonte de dados usando um conector pela primeira vez,
você poderá ser solicitado a selecionar o método de autenticação a ser usado ao
acessar os dados. Depois de selecionar o método de autenticação, você não será
solicitado a selecionar um método de autenticação para o conector usando os
parâmetros de conexão especificados. No entanto, se você precisar alterar o método de
autenticação posteriormente, poderá fazer isso.
No entanto, talvez você não queira definir o endereço de nível superior para um
método de autenticação específico porque subendereços diferentes podem exigir
métodos de autenticação diferentes. Um exemplo poderia ser se você estivesse
acessando duas pastas separadas de um único site do SharePoint e quisesse usar contas
diferentes da Microsoft para acessar cada uma delas.
Esta seção descreve os sintomas de conexão quando o serviço não está configurado
corretamente. Ela também fornece informações sobre como o Power Query interage
com o serviço quando ele está configurado corretamente.
Quando você seleciona Entrar na Etapa 2 acima, o Power Query envia uma solicitação
para o ponto de extremidade de URL fornecido com um Cabeçalho de autorização com
um token de portador vazio.
Espera-se que o serviço responda com uma resposta 401 com um cabeçalho
WWW_Authenticate indicando o URI de autorização do Azure AD a ser usado. Essa
resposta deve incluir o locatário para entrar ou /common/ se o recurso não estiver
associado a um locatário específico.
O Power Query pode iniciar o fluxo OAuth no authorization_uri. O Power Query solicita
um valor de Recurso ou Audiência do Azure AD igual ao domínio da URL que está
sendo solicitada. Esse valor seria o valor que você usaria como valor de URL da ID do
Aplicativo do Azure no registro da API/do serviço. Por exemplo, se estiver acessando
https://api.myservice.com/path/to/data/api , o Power Query esperaria que o valor da
As seguintes IDs de cliente do Azure Active Directory são usadas pelo Power Query.
Talvez seja necessário permitir explicitamente que essas IDs de cliente acessem seu
serviço e a API, dependendo das configurações gerais do Azure Active Directory.
Talvez seja necessário permitir explicitamente que essas IDs de cliente acessem seu
serviço e a API, dependendo das configurações gerais do Azure Active Directory. Confira
a etapa 8, Adicionar um escopo, para obter mais detalhes.
Se você precisar de mais controle sobre o fluxo OAuth (por exemplo, se seu serviço
precisar responder com um 302 em vez de um 401 ), ou se a URL da ID do Aplicativo ou
o valor do Recurso do Azure AD não corresponder à URL do seu serviço, você precisará
usar um conector personalizado. Para obter mais informações sobre como usar nosso
fluxo interno do Azure AD, acesse a Autenticação do Azure Active Directory.
Conexões e autenticação no Power
Query Online
Artigo • 05/10/2023
Nome da O nome que você pode inserir para sua nova Exemplo de conexão
Conexão conexão.
Tipo de O tipo de autenticação que você seleciona para usar Conta organizacional
autenticação que é compatível com o conector.
Por padrão, o campo para o nome da conexão tenta fornecer um nome padrão
quando você cria uma conexão usando as informações das configurações de
conexão.
Dica
7 Observação
Para criar um gateway, você pode ler o artigo sobre como usar um gateway de
dados local em fluxos de dados.
Usando um banco de dados local do SQL Server como exemplo, insira as configurações
do conector para estabelecer uma conexão. Para o conector do SQL Server, a
configuração obrigatória é apenas o nome do servidor, mas você também pode inserir o
nome do banco de dados e selecionar quaisquer outras opções avançadas disponíveis
para o conector. Para fins de demonstração, o nome do servidor e o banco de dados
foram inseridos.
Depois de inserir os valores para o conector em Configurações de conexão, você pode
continuar com a seção Credenciais de conexão. Nesta seção, você pode criar uma
conexão específica para as configurações de conexão inseridas anteriormente.
Nome da O nome que você pode inserir para sua nova localhost;AdventureWorks2019
Conexão conexão.
Tipo de Fonte Obrigatório A fonte de dados para a qual a SQL Server, Arquivo,
de Dados conexão está sendo estabelecida. Pasta, Azure Data
Lake Storage
) Importante
Conexões conhecidas
Quando o Power Query reconhece um conjunto de configurações de conexão, ele tenta
procurar em seu respectivo armazenamento de credenciais para ver se há uma conexão
que corresponda a essas configurações e, em caso afirmativo, seleciona
automaticamente essa conexão.
Para substituir esse comportamento, você pode executar uma das duas ações a seguir:
Exiba o menu suspenso para examinar uma lista de conexões disponíveis para as
configurações de conexão especificadas. Em seguida, você pode selecionar a que
deseja usar ou criar uma nova.
Selecione Editar conexão para modificar a conexão existente ou selecione Criar
nova conexão no menu suspenso para criar uma nova conexão nomeada.
Mais recursos
Lista de conectores no Power Query
Documentação dos gateways de dados locais
Alterar o gateway usado em um fluxo de dados
Solução de problemas de fluxo de dados: conexão com a fonte de dados
Entrada automática em fontes de dados
do Azure Active Directory
Artigo • 05/10/2023
Em nível mais técnico, o recurso de entrada automática para fontes de dados do Azure
Active Directory usa as informações obtidas do usuário autenticado no momento na
experiência do Power Query Online. Essas informações são usadas para solicitar um
novo token de acesso para uma fonte de dados selecionada durante as configurações
de conexão e as etapas de autenticação do processo de obtenção de dados.
7 Observação
Se você quiser se autenticar com outra conta, selecione o link Alternar conta que
aparece na caixa de diálogo.
Leitura adicional
Autenticação no Power Query Online
Plataforma de identidade da Microsoft e o fluxo On-Behalf-Of de OAuth 2.0
Carregar um arquivo (versão prévia)
Artigo • 23/03/2023
Você pode carregar arquivos em seu projeto de Power Query ao usar Power Query
Online.
Excel
JSON
PDF
Texto/CSV
XML
7 Observação
Somente arquivos com as seguintes extensões têm suporte para upload: .csv, .json,
.pdf, .prn, .tsv, .txt, .xl, .xls, .xlsb, .xlsm, .xlsw, .xlsx .xml.
7 Observação
Os arquivos carregados por meio desse recurso são armazenados em sua conta de
Microsoft OneDrive for Business pessoal.
Depois de passar pelo processo de autenticação, uma mensagem Você está atualmente
assinada sob a seleção do Tipo de Autenticação, vamos saber que você entrou com
êxito. Depois de entrar, selecione Avançar. Em seguida, o arquivo é armazenado em sua
conta de Microsoft OneDrive for Business pessoal e uma nova consulta é criada com
base no arquivo que você carregou.
O Power Query oferece uma série de maneiras de obter acesso a arquivos hospedados
no SharePoint ou OneDrive for Business.
Procurar arquivos
7 Observação
2 Aviso
Esse recurso exige que seu navegador permita cookies de terceiros. Se o navegador
tiver bloqueado cookies de terceiros, a caixa de diálogo Procurar será exibida, mas
ficará completamente em branco sem nenhuma opção para fechar a caixa de
diálogo.
Excel
JSON
PDF
XML
TXT/CSV
Ao selecionar esse botão, você será solicitado a passar pelo processo de autenticação.
Depois de concluir esse processo, uma nova janela será exibida com todos os arquivos
dentro do OneDrive for Business do usuário autenticado.
Você pode selecionar o arquivo de sua escolha e, em seguida, selecionar o botão Abrir.
Depois de selecionar Abrir, você será levado de volta para a página de configurações de
conexão inicial em que verá que o caminho do arquivo ou a caixa de texto de URL
agora contém a URL exata para o arquivo selecionado no OneDrive for Business.
Você pode selecionar o botão Avançar no canto inferior direito da janela para continuar
o processo e obter seus dados.
7 Observação
Para usar o link que você acabou de copiar no Power Query, execute as seguintes
etapas:
1. Selecione Obter Dados>Web.
3. Remova a cadeia de caracteres ?web=1 no final do link para que o Power Query
possa navegar corretamente até o arquivo e, em seguida, selecione OK.
4. Se o Power Query solicitar suas credenciais, escolha Windows (para sites locais do
SharePoint) ou Conta Organizacional (para sites do Microsoft 365 ou do OneDrive
for Business). Selecione Conectar.
U Cuidado
7 Observação
Para usar um arquivo do OneDrive for Business como fonte de dados no serviço do
Power BI, com Atualização de Serviço habilitada para esse arquivo, selecione
OAuth2 como o Método de autenticação ao configurar as definições de
atualização. Caso contrário, você pode encontrar um erro (como Falha ao atualizar
as credenciais de fonte de dados) ao tentar se conectar ou atualizar. Selecionar
OAuth2 como método de autenticação resolve esse erro de credenciais.
Depois de estabelecer a conexão com êxito, você será solicitado com uma visualização
de tabela que mostra os arquivos em seu site do SharePoint. Selecione o botão
Transformar dados na parte inferior direita da janela.
Selecionar o botão Transformar Dados levará você a uma exibição dos dados chamados
de exibição do Sistema de arquivos. Cada uma das linhas nesta tabela representa um
arquivo que foi encontrado em seu site do SharePoint.
A tabela tem uma coluna chamada Conteúdo que contém seu arquivo em um formato
binário. Os valores na coluna Conteúdo têm uma cor diferente do restante dos valores
nas outras colunas da tabela, o que indica que eles são selecionáveis.
Por exemplo, na tabela mostrada na imagem anterior, você pode selecionar a segunda
linha em que o campo Nome tem um valor de 02-February.csv. O Power Query criará
automaticamente uma série de etapas para navegar e interpretar o conteúdo do arquivo
como um arquivo CSV.
7 Observação
Você pode interagir com a tabela aplicando filtros, classificações e outras
transformações antes de navegar até o arquivo de sua escolha. Depois de concluir
essas transformações, selecione o valor binário que você deseja exibir.
https://contoso-
my.sharepoint.com/personal/user123_contoso_com/_layouts/15/onedrive.aspx
Você não precisa da URL completa, mas apenas das primeiras partes. A URL que você
precisa usar no Power Query terá o seguinte formato:
https://<unique_tenant_name>.sharepoint.com/personal/<user_identifier>
Por exemplo:
https://contoso-my.sharepoint/personal/user123_contoso_com
Função SharePoint.Contents
Embora o conector de pasta do SharePoint ofereça uma experiência em que você possa
ver todos os arquivos disponíveis em seu site do SharePoint ou OneDrive for Business
de uma só vez, você também pode optar por uma experiência diferente. Nessa
experiência, você pode navegar pelas pastas do SharePoint ou OneDrive for Business e
acessar a pasta ou os arquivos nos quais está interessado.
SharePoint.Contents("https://contoso.sharepoint.com/marketing/data")
7 Observação
Por padrão, essa função tenta usar a API do SharePoint versão 14 para se
conectar. Se você não tiver certeza da versão da API que está sendo usada
pelo seu site do SharePoint, talvez queira tentar usar o seguinte código de
exemplo:
SharePoint.Contents("https://contoso.sharepoint.com/marketing/data",
[ApiVersion="Auto"]) .
3. O Power Query solicitará que você adicione um método de autenticação para sua
conexão. Use o mesmo método de autenticação que você usaria para o conector
de arquivos do SharePoint.
7 Observação
A conexão com o Microsoft Graph (às APIs REST) do Power Query não é recomendada
ou não é compatível. Assim, recomendamos que os usuários explorem soluções
alternativas para recuperar dados de análise baseados no Graph, como a conexão de
dados do Microsoft Graph.
Você pode achar que pode fazer com que determinadas chamadas REST para pontos de
extremidade da API do Microsoft Graph funcionem por meio das funções Web.Contents
ou OData.Feed , mas essas abordagens não são confiáveis como soluções de longo
prazo.
Autenticação
O fluxo interno de autenticação de Conta Organizacional das funções Web.Contents e
OData.Feed do Power Query não é compatível com a maioria dos pontos de
extremidade do Graph. Especificamente, o cliente do Azure Active Directory (Azure AD)
do Power Query solicita o escopo user_impersonation , que não é compatível com o
modelo de segurança do Graph. O Graph usa um conjunto avançado de permissões que
não estão disponíveis em nossos conectores Web e OData genéricos.
Desempenho
A API do Microsoft Graph foi projetada para dar suporte a muitos cenários de aplicativo,
mas é subótima para a recuperação de dados em larga escala, necessária na maioria dos
cenários de análise. Se você tentar recuperar grandes quantidades de dados de APIs do
Graph, poderá se deparar com problemas de desempenho. Detalhes sobre a
aplicabilidade do cenário podem ser encontrados na documentação do Graph.
Embora Power BI Desktop ofereça conectividade pronta para mais de 150 fontes de
dados, pode haver casos em que você deseja se conectar a uma fonte de dados para a
qual nenhum conector pronto para uso está disponível.
Por exemplo, o conector ODBC pode se conectar a serviços com interfaces ODBC e o
conector Web pode se conectar a serviços com interfaces de API REST.
Para saber mais sobre conectividade por meio de interfaces genéricas, acesse Conectar-
se a dados usando interfaces genéricas.
Os usuários que possuem um serviço final ou uma fonte de dados podem criar um
conector personalizado e podem ser qualificados para certificar o conector para que ele
seja disponibilizado publicamente em Power BI Desktop.
Além disso, também é possível conectar-se a fontes de dados que não estão
identificadas na obtenção de dados e na escolha das listas de fontes de dados ao usar
uma das seguintes interfaces genéricas de dados:
ODBC
OLE DB
OData
APIs REST
Scripts de R
Nas seções a seguir, encontre várias listas de fontes de dados que podem ser acessadas
por essas interfaces genéricas.
7 Observação
No momento, esse recurso está disponível apenas no Power Query Online e está
em visualização pública. Este recurso atualmente está disponível apenas no Power
Query Online e está em prévia pública.
Com o Power Query, você pode se conectar a uma infinidade de fontes de dados.
Quando você se conecta a uma fonte de dados, você fundamentalmente cria uma
conexão com ela. Quando você se conecta a uma fonte de dados, fundamentalmente
você cria uma conexão com ela. Essa conexão consiste em sua fonte de dados,
credenciais e mais informações, como níveis de privacidade e parâmetros opcionais para
cada fonte de dados. Essa conexão consiste na sua fonte de dados, credenciais e
informações adicionais, como níveis de privacidade e parâmetros opcionais para cada
fonte de dados. A caixa de diálogo Gerenciar conexões é uma maneira centralizada em
seu projeto do Power Query de gerenciar as conexões que estão sendo referenciadas
pelo seu projeto.
A entrada para a caixa de diálogo Gerenciar conexões está disponível na guia Página
Inicial do Power Query na faixa de opções do grupo Fontes de dados.
Gerenciar conexões exibe uma lista de todas as conexões que estão sendo
referenciadas em seu projeto do Power Query. Também é possível desvincular e editar
qualquer uma das conexões em seu projeto.
Quando você desvincula uma conexão, você está simplesmente removendo a referência
da conexão do seu projeto. Desvincular significa que a definição da conexão não é
removida do back-end, mas não pode ser usada em seu projeto.
Um novo prompt solicita que você confirme que deseja desvincular a conexão.
7 Observação
Ao criar um novo projeto de fluxo de dados no Power Query Online, você pode
selecionar o gateway de dados local usado para suas fontes de dados específicas
durante a experiência de obtenção de dados. Este artigo mostra como você pode
modificar ou atribuir um gateway a um projeto de fluxo de dados existente.
7 Observação
Alterando o gateway
Para mostrar como alterar o gateway em um projeto de fluxo de dados, este artigo usa
uma consulta que se conecta a uma pasta local como exemplo.
Essa consulta usou anteriormente um gateway chamado "Gateway A" para se conectar à
pasta. Mas o "Gateway A" não tem mais acesso à pasta devido a novas políticas da
empresa. Um novo gateway chamado "Gateway B" foi registrado e agora tem acesso à
pasta necessária para a consulta. A meta é alterar o gateway usado neste projeto de
fluxo de dados para que ele use o novo "Gateway B".
7 Observação
O tipo define qual função de conector ou de fonte de dados está sendo usada,
como SQL Server, pasta, pasta de trabalho do Excel ou outros.
O valor do caminho é derivado dos parâmetros necessários da função de fonte de
dados e, para este exemplo, esse seria o caminho da pasta.
Modificar autenticação
Para modificar as credenciais usadas em sua fonte de dados, selecione Obter dados na
faixa de opções do editor Power Query para iniciar a caixa de diálogo Escolher fonte de
dados e, em seguida, definir uma conexão nova ou existente com sua fonte de dados.
Para a finalidade deste exemplo, o conector usado é o conector pasta.
Uma vez nas configurações de Conexão, crie uma nova conexão ou selecione ou
modifique uma conexão diferente para sua fonte de dados.
Depois de definir os detalhes da conexão, selecione Avançar no canto inferior direito e
valide se a consulta está sendo carregada no editor de Power Query.
7 Observação
Neste artigo, você aprenderá a criar consultas com o Power Query descobrindo:
https://services.odata.org/V4/Northwind/Northwind.svc/
7 Observação
Para saber mais sobre onde obter dados de cada um dos produtos da Microsoft
que incluem o Power Query, vá para Onde obter dados.
Para iniciar, localize o conector do feed OData na experiência "Obter Dados". Você pode
procurar OData na barra de pesquisa no canto superior direito.
Depois de selecionar esse conector, a tela exibirá as configurações e as credenciais de
conexão.
Em URL, insira a URL para o feed OData Northwind mostrada na seção anterior.
Em Gateway de dados local, não defina nada.
Em Tipo de autenticação, deixe como anônimo.
7 Observação
Para saber mais sobre o conector de feed OData, vá para Feed OData.
7 Observação
A faixa de opções
A faixa de opções é o componente onde você encontra a maioria das transformações e
ações que pode fazer no editor do Power Query. Ela tem várias guias, cujos valores
dependem da integração do produto. Cada uma das guias fornece botões e opções
específicos, alguns dos quais podem ser redundantes em toda a experiência do Power
Query. Esses botões e opções fornecem acesso fácil às transformações e ações que você
pode precisar.
A interface do Power Query é responsiva e tenta ajustar a resolução de tela para mostrar
a melhor experiência. Em cenários em que você gostaria de usar uma versão compacta
da faixa de opções, também há um botão de recolhimento no canto inferior direito da
faixa para ajudar a alternar para a faixa de opções compacta.
Você pode voltar para o modo de exibição padrão da faixa de opções selecionando o
ícone de expansão no canto inferior direito da faixa de opções.
Experimente todas essas opções para encontrar a exibição e o layout com os quais você
se sente mais confortável trabalhando. Como exemplo, selecione a faixa de opções
Exibição de esquema.
O lado direito da barra de status também contém ícones para exibições de diagrama,
dados e esquema. Você pode usar esses ícones para alternar entre exibições. Também é
possível usar esses ícones para habilitar ou desabilitar a exibição de sua escolha.
7 Observação
Para saber mais sobre o modo de exibição de esquema, vá para Usando o modo
de exibição de esquema.
Por exemplo, na exibição de esquema, marque a opção ao lado das colunas Orders e
CustomerDemographics e, na faixa de opções, selecione a ação Remover colunas. Essa
seleção aplica uma transformação para remover essas colunas de seus dados.
A exibição de diagrama ajuda você a visualizar como sua consulta é estruturada e como
ela pode interagir com outras consultas em seu projeto. Cada etapa em sua consulta
tem um ícone distinto para ajudar a reconhecer a transformação usada. Há também
linhas que conectam etapas para ilustrar dependências. Como as exibições de
visualização de dados e diagrama estão habilitadas, a exibição de diagrama aparece na
parte superior da visualização de dados.
7 Observação
Para saber mais sobre o modo de exibição de diagrama, vá para Modo de exibição
de diagrama.
A caixa de diálogo Agrupar por é exibida. Você pode definir a operação Agrupar por
para agrupar pelo país e contar o número de linhas de cliente por país.
Uma maneira alternativa de iniciar a caixa de diálogo Agrupar por é usar o botão
Agrupar por na faixa de opções ou clicar com o botão direito do mouse na coluna País.
Para mais praticidade, as transformações no Power Query geralmente podem ser
acessadas de vários locais, para que os usuários possam optar por usar a experiência
que preferem.
Selecione Criar para adicionar a nova consulta ao editor do Power Query. Expanda o
painel Consultas, que agora exibe a consulta Clientes e Fornecedores.
Abra a caixa de diálogo Agrupar por novamente, desta vez selecionando o botão
Agrupar por na faixa de opções na guia Transformar.
Na caixa de diálogo Agrupar por, defina a operação Agrupar por para agrupar por país
e contar o número de linhas de fornecedores por país.
7 Observação
Para saber mais sobre a transformação Agrupar por, vá para Agrupar ou resumir
linhas.
Referenciar consultas
Agora que você tem uma consulta para clientes e uma para fornecedores, a próxima
meta é combinar essas consultas em uma. Há muitas maneiras de fazer isso, incluindo
usar a opção Mesclar na tabela Clientes, duplicar uma consulta ou referenciar uma
consulta. Para este exemplo, você cria uma referência clicando com o botão direito do
mouse na tabela Clientes e selecionando Referência, o que efetivamente cria uma nova
consulta que faz referência à consulta Clientes.
Depois de criar essa nova consulta, altere o nome dela para Análise de país e desabilite
a carga da tabela Clientes, desmarcando a opção Habilitar carga da consulta
Fornecedores.
Mesclar consultas
Uma operação de mesclagem de consultas une duas tabelas existentes com base em
valores correspondentes de uma ou várias colunas. Neste exemplo, o objetivo é unir as
tabelas Clientes e Fornecedores em uma tabela somente para os países/regiões que
têm Clientes e Fornecedores.
Dentro da consulta Análise de país, selecione a opção Mesclar consultas na guia Página
Inicial da faixa de opções.
Uma nova caixa de diálogo para a operação de mesclagem é exibida. Em seguida, você
pode selecionar a consulta a ser mesclada com a consulta atual. Na tabela Direita para
mesclagem, selecione a consulta Fornecedores e, em seguida, selecione o campo País
de ambas as consultas. Por fim, selecione o tipo de ingresso Interno, pois você deseja
apenas os países/regiões onde tem Clientes e Fornecedores para essa análise.
Depois de selecionar o botão OK , uma nova coluna é adicionada à consulta Análise de
País que contém os dados da consulta Fornecedores . Selecione o ícone ao lado do
campo Fornecedores, que exibe um menu para selecionar quais campos você deseja
expandir. Selecione apenas o campo Fornecedores e clique no botão OK.
O resultado dessa operação de expansão é uma tabela com apenas 12 linhas. Renomeie
o campo Fornecedores.1 para apenas Fornecedores clicando duas vezes no nome do
campo e inserindo o novo nome.
7 Observação
Para saber mais sobre o recurso Mesclar consultas, vá para Visão geral de
mesclagem de consultas.
Etapas aplicadas
Cada transformação aplicada à sua consulta é salva como uma etapa na seção Etapas
aplicadas do painel de configurações de consulta. Se você precisar verificar como sua
consulta é transformada de etapa em etapa, selecione uma etapa e visualize como a
consulta é resolvida nesse ponto específico.
Você também pode clicar com o botão direito do mouse em uma consulta e selecionar
a opção Propriedades para alterar o nome ou adicionar uma descrição à consulta. Por
exemplo, clique com o botão direito do mouse na etapa Mesclar consultas da consulta
Análise de país e altere o nome da consulta para Mesclar com Fornecedores e a
descrição para Obter dados da consulta Fornecedores para Fornecedores por País.
Após essa alteração, você pode passar o mouse sobre o ícone de consulta de
mesclagem no modo de exibição de diagrama ou passar o mouse sobre o novo ícone
ao lado da etapa no painel Etapas aplicadas para ler sua descrição.
7 Observação
Para saber mais sobre Etapas aplicadas, vá para Usando a lista Etapas aplicadas.
Antes de passar para a próxima seção, desative o Modo de exibição de diagrama para
usar somente a Visualização de dados.
Essa alteração cria uma nova coluna chamada Divisão de inteiro que você pode
renomear para Proporção. Essa alteração é a etapa final da consulta e fornece a relação
cliente/fornecedor para os países/regiões onde os dados têm clientes e fornecedores.
Para saber mais sobre Criação de perfil de dados, acesse Usando as ferramentas
de criação de perfil de dados.
Editor Avançado
Se quiser ver o código que o editor do Power Query está criando a cada etapa ou se
quiser criar seu próprio código de modelagem, você pode usar o editor avançado. Para
abrir o Editor Avançado, selecione a guia Exibir na faixa de opções e clique em Editor
Avançado. Uma janela aparece, mostrando o código de consulta existente.
Você pode editar o código diretamente na janela Editor Avançado . O editor indica se o
código está livre de erros de sintaxe. Para fechar a janela, selecione o botão Concluído
ou Cancelar .
7 Observação
Atualmente, o Azure Analysis Services não contém nenhum link de ajuda embutido
do Power Query. No entanto, é possível obter ajuda para as funções do Power
Query M. Veja mais informações na próxima seção.
Resumo
Neste artigo, você criou uma série de consultas com o Power Query que fazem uma
análise de proporção de clientes para fornecedores no nível do país para a empresa
Northwind.
O Power Query é uma ferramenta poderosa que permite conectar a várias fontes de
dados diferentes e transformar os dados do jeito que você quiser. Os cenários descritos
neste artigo são exemplos para mostrar como você pode usar o Power Query para
transformar dados brutos em insights de negócios importantes e acionáveis.
Usar a lista de Etapas Aplicadas
Artigo • 23/03/2023
Todas as transformações em seus dados serão mostradas na lista Etapas Aplicadas . Por
exemplo, se você alterar o nome da primeira coluna, ele será exibido na lista Etapas
Aplicadas como Colunas Renomeada.
Selecionar qualquer etapa mostrará os resultados dessa etapa específica, para que você
possa ver exatamente como seus dados são alterados à medida que você adiciona
etapas à consulta.
O menu Configurações de Consulta será aberto à direita com a lista Etapas Aplicadas.
Renomear etapa
Para renomear uma etapa, clique com o botão direito do mouse na etapa e selecione
Renomear.
A imagem a seguir mostra a lista de etapas aplicadas depois de usar a opção Excluir até
o fim.
Para definir uma transformação para a nova etapa, selecione a nova etapa na lista e faça
a alteração nos dados. Ele vinculará automaticamente a transformação à etapa
selecionada.
Mover etapa
Para mover um passo acima de uma posição na lista, clique com o botão direito do
mouse na etapa e selecione Mover para cima.
Para mover um passo para baixo de uma posição na lista, clique com o botão direito do
mouse na etapa e selecione Mover para baixo.
Como alternativa, ou para mover mais de uma única posição, arraste e solte a etapa
para o local desejado.
A caixa de pesquisa global está localizada no centro superior do editor do Power Query.
A caixa de pesquisa segue os mesmos princípios de design da Pesquisa da Microsoft no
Office , mas contextualizada ao Power Query.
Resultados da Pesquisa
Para usar a caixa de pesquisa global, selecione a caixa de pesquisa ou pressione Alt + Q.
Antes de inserir qualquer coisa, você verá algumas opções padrão para escolher.
Quando você começar a inserir algo para pesquisar, os resultados serão atualizados em
tempo real, exibindo consultas, ações e conectores de obtenção de dados que
correspondem ao texto inserido.
Se quiser ver todas as opções disponíveis para uma determinada consulta de pesquisa,
você também pode selecionar a opção Ver mais resultados para. Essa opção é
posicionada como o último resultado da consulta da caixa de pesquisa quando há várias
correspondências para sua consulta.
Visão geral da avaliação e da dobragem
de consultas no Power Query
Artigo • 23/03/2023
Neste artigo, você terá uma visão geral básica de como as consultas M são processadas
e transformadas em solicitações de fonte de dados.
Dica
Pense no script M como uma receita que descreve como preparar seus dados.
O jeito mais comum de criar um script M é com o editor do Power Query. Por exemplo,
quando você se conecta a uma fonte de dados, como um banco de dados SQL Server,
vê no lado direito da tela a seção Etapas aplicadas, que exibe todas as etapas ou
transformações usadas na consulta. Dessa maneira, o editor do Power Query serve
como uma interface que ajuda a criar o script M adequado para as transformações que
você deseja, além de garantir que o código usado seja válido.
7 Observação
Fonte: faz a conexão com a fonte de dados. Nesse caso, é uma conexão com um
banco de dados SQL Server.
Navegação: navega para uma tabela específica no banco de dados.
Outras colunas removidas: seleciona as colunas da tabela que serão mantidas.
Linhas classificadas: classifica a tabela usando uma ou mais colunas.
Kept top rows: filtra para manter apenas um determinado número de linhas da
parte superior da tabela.
Esse conjunto de nomes de etapas é uma maneira simples de exibir o script M que
Power Query criou para você. Há várias maneiras de exibir o script M completo. No
Power Query, é possível selecionar Editor Avançado na guia Exibir. Outra opção é
selecionar Editor Avançado no grupo Consulta na guia Página Inicial. Em algumas
versões do Power Query, você também pode alterar a exibição da barra de fórmulas
para mostrar o script de consulta. Basta acessar a guia Exibir e, no grupo Layout,
selecionar Exibição de script>Script de consulta.
Grande parte dos nomes encontrados no painel Etapas aplicadas também são usados
como estão no script M. Vale lembrar que as etapas de uma consulta são nomeadas de
acordo com os identificadores na linguagem M. Às vezes, caracteres extras encapsulam
nomes de etapas em M, mas não são mostrados nas etapas aplicadas. Um exemplo é
#"Kept top rows" , categorizado como um identificador entre aspas devido a esses
caracteres extras. Um identificador entre aspas permite que qualquer sequência de zero
ou mais caracteres Unicode seja usada como um identificador, incluindo palavras-chave,
espaço em branco, comentários, operadores e pontuadores. Para saber mais sobre
identificadores na linguagem M, acesse Estrutura lexical.
Todas as alterações feitas na consulta por meio do editor do Power Query atualizam
automaticamente o script M da sua consulta. Use a imagem anterior como ponto de
partida. Por exemplo, se você alterar o nome da etapa Linhas superiores mantidas para
20 primeiras linhas, essa modificação aparecerá automaticamente na exibição de script.
Embora seja recomendável usar o editor do Power Query para criar todo o script M (ou
grande parte dele), é possível adicionar ou modificar manualmente trechos do script M.
Para saber mais, acesse o site oficial da documentação da linguagem M.
7 Observação
7 Observação
Embora este exemplo mostre uma consulta com um Banco de Dados SQL como
fonte de dados, o conceito se aplica a consultas com ou sem uma fonte de dados.
Quando o Power Query lê o script M, ele executa o script por meio de um processo de
otimização para avaliar sua consulta com mais eficiência. Nesse processo, ele determina
quais etapas (transformações) da consulta podem ser descarregadas para a fonte de
dados. Além disso, identifica quais outras etapas precisam ser avaliadas com o
mecanismo do Power Query. Esse processo de otimização é chamado de dobragem de
consultas, ou seja, o Power Query tenta enviar o máximo possível da execução à fonte
de dados, a fim de otimizar a execução da consulta.
) Importante
Além disso, quando várias fontes estão envolvidas, o nível de privacidade de dados
de cada fonte de dados é levado em consideração ao avaliar a consulta. Mais
informações: Bastidores do Firewall de Privacidade de Dados
7 Observação
Essa operação geralmente proporciona uma execução de consulta muito mais rápida do
que a extração de todos os dados necessários da fonte de dados e a execução de todas
as transformações obrigatórias no mecanismo do Power Query.
Ao usar a experiência Obter dados, o Power Query orienta você pelo processo que, em
última análise, permite que se conectar à sua fonte de dados. Ao fazer isso, o Power
Query usa uma série de funções na linguagem M categorizadas como funções de acesso
a dados. Essas funções específicas usam mecanismos e protocolos para se conectar à
fonte de dados usando uma linguagem compatível com sua fonte de dados.
) Importante
7 Observação
O dobramento de consultas pode ocorrer para uma consulta inteira do Power Query ou
para um subconjunto das etapas. Quando a dobragem de consultas não pode ser
obtida, parcial ou totalmente, o mecanismo de mashup do Power Query deverá
compensar processando as transformações de dados em si. Esse processo pode
envolver a recuperação dos resultados da consulta da origem, o que, em grandes
conjuntos de dados, consome muitos recursos e é lento.
Recomendamos que os você busque alcançar eficiência em seus designs de modelo,
garantindo que a dobragem de consultas ocorra sempre que possível.
Remoção de colunas.
Acrescentar consultas dobráveis com base na mesma fonte (operador UNION ALL).
Power Query M
Date.Year([OrderDate])
Power Query M
Date.ToText([OrderDate], "yyyy")
Para exibir a consulta dobrada, selecione a opção Exibir Consulta Nativa. Em seguida,
será apresentada a você a consulta nativa que o Power Query usará para obter dados.
Se a opção Exibir Consulta Nativa não estiver habilitada (esmaecida), será uma
evidência de que nem todas as etapas da consulta podem ser dobradas. No entanto,
isso pode significar que um subconjunto de etapas ainda pode ser dobrado.
Trabalhando na ordem inversa da última etapa, você poderá verificar cada etapa para
ver se a opção Exibir Consulta Nativa está habilitada. Se isso ocorrer, você saberá em
que lugar da sequência de etapas a dobragem de consultas não pôde mais ser obtida.
Próximas etapas
Para obter mais informações sobre dobramento de consulta e artigos relacionados,
confira os seguintes recursos:
Este artigo fornece alguns cenários de exemplo para cada um dos três resultados
possíveis para dobramento de consulta. Ele também inclui algumas sugestões sobre
como aproveitar ao máximo o mecanismo de dobramento de consulta e o efeito que
ele pode ter em suas consultas.
O cenário
Imagine um cenário em que, usando o banco de dados Wide World Importers para o
banco de dados SQL do Azure Synapse Analytics, você tem a tarefa de criar uma
consulta no Power Query que se conecta à fact_Sale tabela e recupera as últimas 10
vendas com apenas os seguintes campos:
Chave de Venda
Chave de Cliente
Chave da Data da Fatura
Descrição
Quantidade
7 Observação
Para fins de demonstração, este artigo usa o banco de dados descrito no tutorial
sobre como carregar o banco de dados Wide World Importers no Azure Synapse
Analytics. A principal diferença neste artigo é que a fact_Sale tabela contém
apenas dados para o ano 2000, com um total de 3.644.356 linhas.
) Importante
Dica
Para esse caso, a execução dessa operação gera o resultado das últimas dez
vendas. Na maioria dos cenários, recomendamos que você forneça uma lógica mais
explícita que defina quais linhas são consideradas por último aplicando uma
operação de classificação na tabela.
Por fim, dentro da caixa de diálogo Escolher colunas, selecione as colunas Sale Key ,
Customer Key , Invoice Date Key , Description e Quantity , em seguida, selecione OK.
O exemplo de código a seguir é o script M completo para a consulta que você criou:
Power Query M
let
Source = Sql.Database(ServerName, DatabaseName),
Navigation = Source{[Schema = "wwi", Item = "fact_Sale"]}[Data],
#"Kept bottom rows" = Table.LastN(Navigation, 10),
#"Choose columns" = Table.SelectColumns(#"Kept bottom rows", {"Sale Key",
"Customer Key", "Invoice Date Key", "Description", "Quantity"})
in
#"Choose columns""
Você pode clicar com o botão direito do mouse na última etapa da consulta, a chamada
Escolher colunas e selecionar a opção Ver plano de consulta. O objetivo do plano de
consulta é fornecer uma visão detalhada de como sua consulta é executada. Para saber
mais sobre o recurso, acesse Plano de consulta.
Essa solicitação de fonte de dados está no idioma nativo da fonte de dados. Para esse
caso, esse idioma é SQL e essa instrução representa uma solicitação para todas as linhas
e campos da tabela fact_Sale .
Consultar essa solicitação de fonte de dados pode ajudar a entender melhor a história
que o plano de consulta tenta transmitir:
as últimas 10 linhas.
Table.SelectColumns : o Power Query usará a saída do Table.LastN nó e aplicará
uma nova transformação chamada Table.SelectColumns , que seleciona as colunas
específicas que você deseja manter de uma tabela.
Para sua avaliação, essa consulta teve que baixar todas as linhas e campos da tabela
fact_Sale . Essa consulta levou uma média de 6 minutos e 1 segundo para ser
Dentro da caixa de diálogo Escolher colunas, selecione as colunas Sale Key , Customer
Key , Invoice Date Key , Description e Quantity , em seguida, selecione OK.
Agora, você vai criar uma lógica que classificará a tabela para ter as últimas vendas na
parte inferior da tabela. Selecione a coluna Sale Key , que é a chave primária e a
sequência incremental ou o índice da tabela. Classifique a tabela usando somente esse
campo em ordem crescente do menu de contexto da coluna.
O exemplo de código a seguir é o script M completo para a consulta que você criou:
Power Query M
let
Source = Sql.Database(ServerName, DatabaseName),
Navigation = Source{[Schema = "wwi", Item = "fact_Sale"]}[Data],
#"Choose columns" = Table.SelectColumns(Navigation, {"Sale Key", "Customer
Key", "Invoice Date Key", "Description", "Quantity"}),
#"Sorted rows" = Table.Sort(#"Choose columns", {{"Sale Key",
Order.Ascending}}),
#"Kept bottom rows" = Table.LastN(#"Sorted rows", 10)
in
#"Kept bottom rows"
Você pode clicar com o botão direito do mouse na última etapa da consulta, aquela
nomeada Kept bottom rows e selecionar a opção de plano de consulta para entender
melhor como sua consulta pode ser avaliada.
Cada caixa na imagem anterior é chamada de nó. Um nó representa todos os processos
que precisam acontecer (da esquerda para a direita) para que sua consulta seja avaliada.
Alguns desses nós podem ser avaliados em sua fonte de dados, enquanto outros, como
o nó para Table.LastN , representado pela etapa de linhas inferiores mantidas, são
avaliados usando o mecanismo Power Query.
Para ver a solicitação exata enviada à fonte de dados, selecione Exibir detalhes no nó
Value.NativeQuery .
Essa solicitação está no idioma nativo da fonte de dados. Para esse caso, esse idioma é
SQL e essa instrução representa uma solicitação para todas as linhas, com apenas os
campos solicitados da tabela fact_Sale ordenada pelo campo Sale Key .
Consultar essa solicitação de fonte de dados pode ajudá-lo a entender melhor a história
que o plano de consulta completo tenta transmitir. A ordem dos nós é um processo
sequencial que começa solicitando os dados de sua fonte de dados:
as últimas 10 linhas.
Para sua avaliação, essa consulta teve que baixar todas as linhas e somente os campos
solicitados da tabela fact_Sale . Levou em média 3 minutos e 4 segundos para ser
processado em uma instância padrão de fluxos de dados do Power BI (que explica a
avaliação e o carregamento de dados para fluxos de dados).
Exemplo completo de dobramento de consulta
Depois de se conectar ao banco de dados e navegar até a tabela fact_Sale , selecione
as colunas que deseja manter da tabela. Selecione a transformação Escolher colunas
encontradas dentro do grupo Gerenciar colunas na guia Página Inicial. Essa
transformação ajuda você a selecionar explicitamente as colunas que você deseja
manter da tabela e remover o restante.
Em Escolher colunas, selecione as Sale Key , Customer Key , Invoice Date Key ,
Description e Quantity , em seguida, selecione OK.
Agora você cria uma lógica que classificará a tabela para ter as últimas vendas na parte
superior da tabela. Selecione a coluna Sale Key , que é a chave primária e a sequência
incremental ou o índice da tabela. Classifique a tabela apenas usando esse campo em
ordem decrescente do menu de contexto da coluna.
O exemplo de código a seguir é o script M completo para a consulta que você criou:
Power Query M
let
Source = Sql.Database(ServerName, DatabaseName),
Navigation = Source{[Schema = "wwi", Item = "fact_Sale"]}[Data],
#"Choose columns" = Table.SelectColumns(Navigation, {"Sale Key", "Customer
Key", "Invoice Date Key", "Description", "Quantity"}),
#"Sorted rows" = Table.Sort(#"Choose columns", {{"Sale Key",
Order.Descending}}),
#"Kept top rows" = Table.FirstN(#"Sorted rows", 10)
in
#"Kept top rows"
Você pode clicar com o botão direito do mouse na última etapa da consulta, a chamada
Manter linhas superiores e selecionar a opção Ver plano de consulta.
Essa solicitação está no idioma nativo da fonte de dados. Para esse caso, esse idioma é
SQL e essa instrução representa uma solicitação para todas as linhas e campos da tabela
fact_Sale .
Consultar essa consulta de fonte de dados pode ajudar a entender melhor a história que
o plano de consulta completo tenta transmitir:
7 Observação
Embora não haja nenhuma cláusula que possa ser usada para SELECIONAR as
linhas inferiores de uma tabela na linguagem T-SQL, há uma cláusula TOP que
recupera as linhas superiores de uma tabela.
Para sua avaliação, essa consulta baixa apenas 10 linhas, com apenas os campos que
você solicitou da tabela fact_Sale . Essa consulta levou em média 31 segundos para ser
processada em uma instância padrão de fluxos de dados do Power BI (que é
responsável pela avaliação e carregamento de dados para fluxos de dados).
Comparação de desempenho
Para entender melhor o efeito que a dobra de consulta tem nessas consultas, você pode
atualizar suas consultas, registrar o tempo necessário para atualizar totalmente cada
consulta e compará-las. Para simplificar, este artigo fornece os tempos médios de
atualização capturados usando a mecânica de atualização de fluxos de dados do Power
BI ao conectar-se a um ambiente dedicado Azure Synapse Analytics com DW2000c
como o nível de serviço.
Geralmente, é o caso de que uma consulta totalmente dobra para a fonte de dados
supera consultas semelhantes que não se dobram completamente para a fonte de
dados. Pode haver muitas razões pelas quais este é o caso. Esses motivos vão desde a
complexidade das transformações executadas por sua consulta até as otimizações de
consulta implementadas em sua fonte de dados, como índices e computação dedicada
e recursos de rede. Ainda assim, há dois processos importantes específicos que a dobra
de consultas tenta usar que minimiza o efeito que ambos os processos têm com Power
Query:
Dados em trânsito
Transformações executadas pelo mecanismo Power Query
As seções a seguir explicam o efeito que esses dois processos têm nas consultas
mencionadas anteriormente.
Dados em trânsito
Quando uma consulta é executada, ela tenta buscar os dados da fonte de dados como
uma de suas primeiras etapas. Quais dados são obtidos da fonte de dados são definidos
pelo mecanismo de dobramento de consulta. Esse mecanismo identifica as etapas da
consulta que podem ser descarregadas para a fonte de dados.
Dobramento Parcial 3644356 Solicitação para todos os registros, mas apenas campos
parcial de necessários da tabela fact_Sale depois que ele foi
consultas classificado pelo campo Sale Key
Para os exemplos exibidos, Power Query precisou solicitar mais de 3,6 milhões de linhas
da fonte de dados para os exemplos de dobramento sem consulta e de dobramento de
consulta parcial. Para o exemplo de dobramento de consulta completo, ele solicitou
apenas 10 linhas. Para os campos solicitados, o exemplo sem dobramento de consulta
solicitou todos os campos disponíveis da tabela. Tanto a dobra parcial da consulta
quanto os exemplos completos de dobramento de consulta enviaram apenas uma
solicitação para exatamente os campos necessários.
U Cuidado
A tabela a seguir mostra os nós dos planos de consulta das consultas anteriores que
teriam sido avaliadas pelo mecanismo Power Query.
Tipo de Descrição
operador
Remoto Operadores que são nós de fonte de dados. A avaliação desses operadores ocorre
fora de Power Query.
Streaming Os operadores são operadores de passagem. Por exemplo, com um filtro simples
Table.SelectRows geralmente pode filtrar os resultados conforme eles passam pelo
operador e não precisarão coletar todas as linhas antes de mover os dados.
Table.SelectColumns e Table.ReorderColumns são outros exemplos desses tipos de
operadores.
Verificação Operadores que precisam coletar todas as linhas antes que os dados possam passar
completa para o próximo operador na cadeia. Por exemplo, para classificar dados, o Power
Query precisa coletar todos os dados. Outros exemplos de operadores de
verificação completa são Table.Group , Table.NestedJoin e Table.Pivot .
Dica
Considerações e sugestões
Siga as práticas recomendadas ao criar uma nova consulta, conforme indicado nas
práticas recomendadas no Power Query.
Use os indicadores de dobramento de consulta para verificar quais etapas estão
impedindo que sua consulta dobre. Reordene-os, se necessário, para aumentar a
dobra.
Use o plano de consulta para determinar quais transformações estão acontecendo
no mecanismo de Power Query para uma etapa específica. Considere modificar sua
consulta existente reorganizando suas etapas. Em seguida, verifique o plano de
consulta da última etapa da consulta novamente e veja se o plano de consulta está
melhor do que o anterior. Por exemplo, o novo plano de consulta tem menos nós
do que o anterior, e a maioria dos nós são nós de "Streaming" e não "verificação
completa". Para fontes de dados que dão suporte à dobra, todos os nós no plano
de consulta que não sejam Value.NativeQuery e os nós de acesso da fonte de
dados representam transformações que não foram dobradas.
Quando disponível, você pode usar a opção Exibir Consulta Nativa (ou Exibir
consulta de fonte de dados) para garantir que sua consulta possa ser dobrada
novamente para a fonte de dados. Se essa opção estiver desabilitada para sua
etapa e você estiver usando uma origem que normalmente a habilita, você criou
uma etapa que interrompe a dobragem de consulta. Se você estiver usando uma
origem que não dá suporte a essa opção, poderá contar com os indicadores de
dobramento de consulta e o plano de consulta.
Use as ferramentas de diagnóstico de consulta para entender melhor as
solicitações que estão sendo enviadas à fonte de dados quando os recursos de
dobramento de consulta estiverem disponíveis para o conector.
Ao combinar dados provenientes do uso de vários conectores, o Power Query
tenta enviar o máximo de trabalho possível para ambas as fontes de dados,
cumprindo os níveis de privacidade definidos para cada fonte de dados.
Leia o artigo sobre níveis de privacidade para proteger suas consultas de serem
executadas em um erro do Firewall de Privacidade de Dados.
Use outras ferramentas para verificar o dobramento de consulta da perspectiva da
solicitação que está sendo recebida pela fonte de dados. Com base no exemplo
neste artigo, você pode usar o Microsoft SQL Server Profiler para verificar as
solicitações que estão sendo enviadas por Power Query e recebidas pelo Microsoft
SQL Server.
Se você adicionar uma nova etapa a uma consulta totalmente dobrada e a nova
etapa também tiver dobramento, Power Query poderá enviar uma nova solicitação
à fonte de dados em vez de usar uma versão armazenada em cache do resultado
anterior. Na prática, esse processo pode resultar em operações aparentemente
simples em uma pequena quantidade de dados demorando mais para serem
atualizadas na versão prévia do que o esperado. Essa atualização mais longa deve-
se a Power Query requerimento da fonte de dados em vez de trabalhar em uma
cópia local dos dados.
Indicadores de dobramento de
consultas
Artigo • 23/03/2023
7 Observação
Antes de ler este artigo, recomendamos que você leia a visão geral da avaliação de
consulta e do dobramento de consultas no Power Query para entender melhor
como funciona a dobra no Power Query.
Com indicadores de dobramento de consulta, torna-se óbvio quando você faz uma
alteração que quebra a dobra. Esse recurso ajuda você a resolver problemas com mais
facilidade rapidamente, evitar problemas de desempenho em primeiro lugar e ter uma
melhor visão de suas consultas. Na maioria dos casos em que você encontrar, as etapas
terão dobramento ou não. Mas há muitos casos em que o resultado não é tão óbvio, e
esses casos são discutidos em indicadores de diagnóstico de etapa (Dinâmico, Opaco e
Desconhecido).
7 Observação
Essa interpretação funciona mesmo com uma consulta simples em uma fonte SQL. Por
exemplo, usando o banco de dados de exemplo Adventureworks, conecte-se à tabela
Production.Product e carregue os dados. Carregar este exemplo pelo navegador Power
Query fornece a seguinte consulta:
Power Query M
let
Source = Sql.Database("ServerName", "AdventureWorks"),
Navigation = Source{[Schema = "Production", Item = "Product"]}[Data]
in
Navigation
Neste exemplo, as etapas iniciais não podem ser confirmadas para dobrar (é
inconclusiva), mas a etapa final gerada quando você carrega os dados inicialmente
dobra. A maneira como as primeiras etapas (origem e, às vezes, outras etapas de
navegação ) são tratadas depende do conector. Com o SQL, por exemplo, ele é tratado
como um valor de tabela de catálogo, que não é dobrado. No entanto, assim que você
selecionar dados para esse conector, ele será dobrado.
Por outro lado, isso também pode significar que sua consulta se dobra até um ponto e,
em seguida, para de dobrar. Ao contrário do caso em que você tem um indicador de
dobramento para a etapa que mostra que tudo se dobra, quando você tem um
indicador não dobrável, isso não significa que tudo não se dobra. Em vez disso, significa
que "nem tudo" dobra. Geralmente, tudo até o último indicador dobrável será dobrado,
com mais operações acontecendo depois.
Modificando o exemplo acima, você pode dar uma transformação que nunca dobra —
Capitalize Cada Palavra.
Power Query M
let
Source = Sql.Database("ServerName", "AdventureWorks"),
Navigation = Source{[Schema = "Production", Item = "Product"]}[Data],
#"Capitalized each word" = Table.TransformColumns(Navigation, {{"Name",
each Text.Proper(_), type text}})
in
#"Capitalized each word"
Dobragem O indicador de dobramento informa que a consulta até esta etapa será
avaliada pela fonte de dados.
Não está O indicador “não está dobrando” informa que parte da consulta até esta
dobrando etapa será avaliada fora da fonte de dados. Você pode compará-lo com
o último indicador de dobramento, se houver um, para ver se você pode
reorganizar sua consulta para ser mais performante.
Pode dobrar Indicadores de que algo pode dobrar são incomuns. Eles significam que
“pode ser” que uma consulta dobre. Eles indicam que a dobra ou não
será determinada em runtime, ao extrair resultados da consulta e que o
plano de consulta é dinâmico. Esses indicadores provavelmente só
aparecerão com conexões ODBC ou OData.
Exemplo de análise
Para obter uma análise de exemplo, comece conectando-se à tabela
Production.Product em Adventure Works (SQL). A carga inicial, semelhante ao exemplo
acima, se parece com a imagem a seguir.
Adicionar mais etapas que dobram estenderá essa linha verde no lado direito. Essa
extensão ocorre porque essa etapa também é dobrada.
Adicionar uma etapa sem dobramento exibe um indicador diferente. Por exemplo,
maiúsculas de cada palavra nunca têm dobramento. O indicador muda, mostrando que,
a partir desta etapa, ele parou de dobrar. Conforme mencionado anteriormente, as
etapas anteriores ainda terão dobramento.
A adição de mais etapas que dependem do Capitalizar cada etapa continuará a não ser
dobrada.
No entanto, se você remover a coluna à qual aplicou a capitalização para que o plano
de consulta otimizado possa ser dobrado mais uma vez, você obterá um resultado
como a imagem a seguir. Porém, algo assim é incomum. Esta imagem ilustra como não
é apenas a ordem das etapas, mas também as transformações reais que se aplicam.
Plano de consulta para o Power Query
(versão prévia)
Artigo • 23/03/2023
O plano de consulta para o Power Query é um recurso que fornece uma visão melhor da
avaliação da consulta. É útil ajudar a determinar por que uma consulta específica pode
não dobrar em uma etapa específica.
Por meio de um exemplo prático, este artigo demonstrará o caso de uso principal e os
benefícios potenciais de usar o recurso de plano de consulta para examinar as etapas de
consulta. Os exemplos usados neste artigo foram criados usando o banco de dados de
exemplo AdventureWorksLT para o Azure SQL Server, que você pode baixar dos bancos
de dados de exemplo do AdventureWorks.
7 Observação
Este artigo foi dividido em uma série de etapas recomendadas para interpretar o plano
de consulta. Essas etapas são:
Use as etapas a seguir para criar a consulta em seu próprio ambiente do Power Query
Online.
let
Source = Sql.Database("servername", "database"),
Navigation = Source{[Schema = "Sales", Item = "SalesOrderHeader"]}
[Data],
#"Removed other columns" = Table.SelectColumns(Navigation,
{"SalesOrderID", "OrderDate", "SalesOrderNumber",
"PurchaseOrderNumber", "AccountNumber", "CustomerID", "TotalDue"}),
#"Filtered rows" = Table.SelectRows(#"Removed other columns", each
[TotalDue] > 1000),
#"Kept bottom rows" = Table.LastN(#"Filtered rows", 5)
in
#"Kept bottom rows"
3. Altere servername e database pelos nomes corretos para seu próprio ambiente.
5. Selecione Avançar.
7 Observação
Para obter mais informações sobre como se conectar a um SQL Server, acesse
Banco de dados do SQL Server.
Depois de seguir estas etapas, sua consulta será semelhante à imagem a seguir.
Este artigo usa um exemplo simplificado para demonstrar esse recurso, mas os
conceitos descritos neste artigo se aplicam a todas as consultas. Recomendamos
que você tenha um bom conhecimento da dobragem de consultas antes de ler o
plano de consulta. Para saber mais sobre a dobragem de consultas, acesse as
Noções básicas sobre dobragem de consultas.
7 Observação
Antes de ler esta seção, recomendamos que você examine o artigo sobre
Indicadores de dobragem de consultas.
Sua primeira etapa nesse processo é examinar sua consulta e prestar muita atenção aos
indicadores de dobragem de consultas. A meta é examinar as etapas marcadas como
não dobradas. Em seguida, você pode ver se fazer alterações na consulta geral faz com
que essas transformações sejam dobradas completamente.
Neste exemplo, a única etapa que não pode ser dobrada é Manter linhas inferiores, o
que é fácil de identificar por meio do indicador de etapa não dobrada. Essa etapa
também é a última etapa da consulta.
O objetivo agora é examinar essa etapa e entender o que está sendo dobrado para a
fonte de dados e o que não pode ser dobrado.
O Power Query tenta otimizar sua consulta aproveitando a avaliação lenta e a dobragem
de consultas, conforme mencionado nas Noções básicas de dobragem de consultas.
Esse plano de consulta representa a tradução otimizada da consulta M para a consulta
nativa enviada para a fonte de dados. Ele também inclui todas as transformações
executadas pelo Mecanismo do Power Query. A ordem na qual os nós são exibidos
segue a ordem da consulta a partir da última etapa ou saída da consulta, que é
representada no extremo esquerdo do diagrama e, nesse caso, é o nó Table.LastN que
representa a etapa Linhas inferiores mantidas.
Na parte inferior do diálogo, há uma barra com ícones que ajudam você a ampliar ou
reduzir o modo de exibição do plano de consulta e outros botões para ajudá-lo a
gerenciar a exibição. Para a imagem anterior, a opção Ajustar para exibir dessa barra foi
usada para apreciar melhor os nós.
7 Observação
A imagem a seguir mostra os nós dobrados no retângulo vermelho. O restante dos nós
não pôde ser dobrado para a fonte de dados. Você precisará examinar o restante dos
nós, pois a meta é tentar fazer com que esses nós sejam dobrados para a fonte de
dados.
Você pode selecionar Exibir detalhes na parte inferior de alguns nós para exibir
informações estendidas. Por exemplo, os detalhes do nó Value.NativeQuery mostram a
consulta nativa (no SQL) que será enviada à fonte de dados.
A consulta mostrada aqui pode não ser exatamente a mesma consulta enviada à fonte
de dados, mas é uma boa aproximação. Nesse caso, ele informa exatamente quais
colunas serão consultadas da tabela SalesOrderHeader e, em seguida, como ela filtrará
essa tabela usando o campo TotalDue para obter apenas as linhas em que o valor desse
campo é maior que 1000. O nó ao lado, Table.LastN, é calculado localmente pelo
mecanismo de Power Query, pois não pode ser dobrado.
7 Observação
O objetivo é aplicar alterações à sua consulta para que a etapa possa ser dobrada.
Algumas alterações que você pode implementar podem variar desde a reorganização
de suas etapas até a aplicação de uma lógica alternativa à consulta mais explícita à fonte
de dados. Isso não significa que todas as consultas e todas as operações sejam
dobráveis aplicando algumas alterações. Mas é uma boa prática determinar por
tentativa e erro se sua consulta pode ser dobrada novamente.
Como a fonte de dados é um banco de dados SQL Server, se a meta for recuperar os
últimos cinco pedidos da tabela, uma boa alternativa seria aproveitar as cláusulas TOP e
ORDER BY no SQL. Como não há nenhuma cláusula BOTTOM no SQL, a transformação
Table.LastN no PowerQuery não pode ser convertida em SQL. Você pode remover a
etapa Table.LastN e substituí-la por:
Agora é hora de examinar o plano de consulta da última etapa, que agora é Manter
linhas superiores. Agora só há nós dobrados. Selecione Exibir detalhes em
Value.NativeQuery para verificar qual consulta está sendo enviada ao banco de dados.
Embora este artigo sugira qual alternativa aplicar, o objetivo principal é que você saiba
como usar o plano de consulta para investigar a dobragem de consultas. Este artigo
também fornece visibilidade do que está sendo enviado para a fonte de dados e quais
transformações serão feitas localmente.
Você pode ajustar seu código para ver o impacto que ele tem em sua consulta. Usando
os indicadores de dobragem de consultas, você também terá uma ideia melhor de quais
etapas estão impedindo que sua consulta dobre.
Dobramento de consultas em consultas
nativas
Artigo • 23/03/2023
No Power Query, você pode definir uma consulta nativa e executá-la em sua fonte de
dados. O artigo Importar dados de um banco de dados usando consulta de banco de
dados nativo explica como fazer esse processo com várias fontes de dados. Mas, usando
o processo descrito nesse artigo, sua consulta não aproveitará nenhuma dobra de
consulta das etapas de consulta subsequentes.
Este artigo mostra um método alternativo para criar consultas nativas em relação à
fonte de dados usando a função Value.NativeQuery e manter o mecanismo de
dobramento de consulta ativo para as etapas subsequentes da consulta.
7 Observação
Amazon Redshift
Dataverse(ao usar computação aprimorada)
Google BigQuery
PostgreSQL
SAP HANA
Snowflake
SQL Server
7 Observação
Para mostrar esse processo, este artigo usa o conector SQL Server e o banco de
dados de exemplo AdventureWorks2019. A experiência pode variar de conector
para conector, mas este artigo mostra os conceitos básicos sobre como habilitar
recursos de dobramento de consulta em consultas nativas para os conectores com
suporte.
Nessa lista, você precisa selecionar o objeto em que a consulta nativa é executada
(também conhecida como destino). Para este exemplo, esse objeto é o nível do banco
de dados.
SQL
A primeira etapa foi definir o destino correto, que nesse caso é o banco de dados em
que o código SQL será executado. Depois que uma etapa tiver o destino correto, você
poderá selecionar essa etapa , nesse caso, origem nas Etapas Aplicadas e, em seguida,
selecionar o botão fx na barra de fórmulas para adicionar uma etapa personalizada.
Neste exemplo, substitua a Source fórmula pela seguinte fórmula:
Power Query M
7 Observação
Depois de inserir a fórmula, será mostrado um aviso que exigirá que você habilite as
consultas nativas a serem executadas para sua etapa específica. Você pode clicar em
continuar para que esta etapa seja avaliada.
Essa instrução SQL produz uma tabela com apenas três linhas e duas colunas.
Testar dobramento de consulta
Para testar o dobramento de consulta de sua consulta, você pode tentar aplicar um filtro
a qualquer uma de suas colunas e ver se o indicador de dobramento de consulta na
seção etapas aplicadas mostra a etapa como dobrada. Nesse caso, você pode filtrar a
coluna DepartmentID para ter valores que não são iguais a dois.
No modo de exibição do plano de consulta, você pode ver que um nó com o nome
Value.NativeQuery no lado esquerdo da tela que tem um texto de hiperlink que lê
Detalhes da exibição. Você pode clicar neste texto de hiperlink para exibir a consulta
exata que está sendo enviada para o banco de dados SQL Server.
A consulta nativa é encapsulada em torno de outra instrução SELECT para criar uma
subconsulta do original. O Power Query fará o seu melhor para criar a consulta mais
ideal, considerando as transformações usadas e a consulta nativa fornecida.
Dica
Para cenários em que você obtém erros porque o dobramento de consulta não era
possível, é recomendável que você tente validar suas etapas como uma
subconsulta de sua consulta nativa original para verificar se pode haver alguma
sintaxe ou conflitos de contexto.
Usar as ferramentas de criação de perfil
de dados
Artigo • 15/08/2023
Qualidade da coluna
Distribuição de colunas
Perfil da coluna
Para habilitar as ferramentas de criação de perfil de dados, acesse a guia Exibir na faixa
de opções. No Power Query Desktop, habilite as opções desejadas no grupo
Visualização de dados, conforme mostrado na imagem a seguir.
Por padrão, Power Query executa essa criação de perfil de dados nas primeiras
1.000 linhas de seus dados. Para que ele opere em todo o conjunto de dados,
selecione a mensagem Criação de perfil de coluna com base nas 1000 principais
linhas no canto inferior esquerdo da janela do editor para alterar a criação de perfil
de coluna para Criação de perfil de coluna com base em todo o conjunto de
dados.
Qualidade da coluna
O recurso de qualidade da coluna rotula valores em linhas em cinco categorias:
Válido, em verde.
Erro, em vermelho.
Esses indicadores são exibidos diretamente abaixo do nome da coluna como parte de
um pequeno gráfico de barras, conforme aparece na imagem a seguir.
O número de registros em cada categoria de qualidade de coluna também é exibido
como uma porcentagem.
Ao passar o mouse sobre qualquer uma das colunas, você vai ver a distribuição
numérica da qualidade dos valores em toda a coluna. Além disso, selecionar o botão de
reticências (...) abre alguns botões de ação rápida para operações nos valores.
Distribuição de colunas
Esse recurso fornece um conjunto de visuais abaixo dos nomes das colunas, os quais
demostram a frequência e a distribuição dos valores em cada uma das colunas. Os
dados nessas visualizações são classificados em ordem decrescente do valor com a
frequência mais alta.
Ao passar o mouse sobre os dados de distribuição em qualquer uma das colunas, você
verá informações sobre os dados gerais na coluna (com contagem distinta e valores
exclusivos). Também é possível selecionar o botão de reticências e escolher em um
menu de operações disponíveis.
Perfil da coluna
Esse recurso fornece uma visão mais detalhada dos dados em uma coluna. Além do
gráfico de distribuição de colunas, ele contém um gráfico de estatísticas de coluna.
Essas informações são exibidas abaixo da seção de visualização de dados, conforme a
imagem a seguir.
Filtrar por valor
Você pode interagir com o gráfico de distribuição de valor no lado direito e selecionar
qualquer uma das barras passando o mouse sobre as partes do gráfico.
Copiar dados
No canto superior direito das seções de distribuição de valor e de estatísticas de coluna,
você pode selecionar o botão de reticências (...) para exibir um menu de atalho Copiar.
Selecione-o para copiar os dados exibidos em qualquer seção para a área de
transferência.
Agrupar por valor
Quando você seleciona o botão de reticências (...) no canto superior direito do gráfico
de distribuição de valor, além de Copiar, pode selecionar Agrupar por. Esse recurso
agrupa os valores em seu gráfico por um conjunto de opções disponíveis.
A imagem abaixo mostra uma coluna de nomes de produtos que foram agrupados por
tamanho de texto. Depois que os valores forem agrupados no gráfico, você poderá
interagir com valores individuais no gráfico, conforme descrito em Filtrar por valor.
Usar o painel Consultas
Artigo • 23/03/2023
No Power Query, você criará muitas consultas diferentes. Seja de obter dados de muitas
tabelas ou de duplicar a consulta original, o número de consultas aumentará.
7 Observação
Algumas ações no editor do Power Query Online podem ser diferentes das ações
no editor de área de trabalho do Power Query. Essas diferenças serão observadas
neste artigo.
Para duplicar sua consulta, abra o painel de contexto na consulta e selecione Duplicar.
Uma nova consulta duplicada será exibida na lateral do painel de consulta.
7 Observação
Para saber mais sobre como copiar e colar consultas em Power Query, acesse
Compartilhar uma consulta.
Para acessar essas opções, abra o menu de contexto (o menu de clique com o botão
direito do mouse) no painel Consultas.
Para ser mais abrangente, descreveremos mais uma vez todas as ações de menu de
contexto relevantes para qualquer um deles.
Nova Consulta
Você pode importar dados para o editor de Power Query como uma opção no menu de
contexto.
Para saber mais sobre como obter dados no Power Query, acesse Obter dados
Mesclar consultas
Quando você seleciona a opção Mesclar consultas no menu de contexto, a tela de
entrada Mesclar consultas é aberta.
Essa opção funciona da mesma forma que o recurso Mesclar consultas localizado na
faixa de opções e em outras áreas do editor.
7 Observação
Para saber mais sobre como usar o recurso Mesclar consultas , acesse Visão geral
de mesclagem de consultas.
Novo Parâmetro
Quando você seleciona a opção Novo parâmetro no menu de contexto, a tela de
entrada Novo parâmetro é aberta.
Essa opção funciona da mesma forma que o recurso Novo parâmetro localizado na
faixa de opções.
7 Observação
Para saber mais sobre Parâmetros no Power Query, acesse Usando parâmetros.
Novo grupo
Você pode criar pastas e mover as consultas para dentro e para fora das pastas para fins
organizacionais. Essas pastas são chamadas de grupos.
Para mover a consulta para um grupo, abra o menu de contexto na consulta específica.
A exibição de diagrama oferece uma forma visual para preparar dados no editor do
Power Query. Com essa interface, fica fácil criar consultas e visualizar o processo de
preparação de dados. A exibição de diagrama simplifica a experiência de introdução à
estruturação de dados. Ele acelera o processo de preparação de dados e ajuda você a
entender rapidamente o fluxo de dados, tanto a "visão do panorama geral" de como as
consultas estão relacionadas, quanto a "visão detalhada" das etapas de preparação de
dados específicas em uma consulta.
Este artigo fornece uma visão geral das funcionalidades oferecidas pela exibição de
diagrama.
7 Observação
Atualmente, a exibição de diagrama só está disponível no Power Query Online.
Você pode adicionar uma nova etapa em uma consulta, após a etapa atualmente
selecionada, selecionando o botão + e, em seguida, pesquisar a transformação ou
escolher o item no menu de atalho. Essas são as mesmas transformações que você
encontrará na faixa de opções do editor do Power Query.
7 Observação
Para saber mais sobre como criar consultas no Editor de consultas usando a faixa
de opções do editor do Power Query ou a visualização de dados, acesse Início
Rápido do Power Query.
Você pode executar mais ações de nível de consulta, como duplicata, referência e assim
por diante, selecionando o menu de contexto no nível da consulta (os três pontos
verticais). Você também pode clicar com o botão direito do mouse na consulta para
acessar o mesmo menu de contexto.
consulta Delete
Para excluir uma consulta, clique com o botão direito do mouse em uma consulta e
selecione Excluir no menu de contexto. Haverá um pop-up adicional para confirmar a
exclusão.
Renomear consulta
Para renomear uma consulta, clique com o botão direito do mouse em uma consulta e
selecione Renomear no menu de contexto.
Habilitar carregamento
Para garantir que os resultados fornecidos pela consulta estejam disponíveis para uso
downstream, como na criação de relatórios, por padrão, Habilitar carregamento é
definido como verdadeiro. Caso precise desabilitar o carregamento em uma
determinada consulta, clique com o botão direito do mouse em uma consulta e
selecione Habilitar carregamento. As consultas em que Habilitar carregamento está
definida como falso serão exibidas com um contorno cinza.
Duplicar
Para criar uma cópia de uma determinada consulta, clique com o botão direito do
mouse na consulta e selecione Duplicar. Uma nova consulta duplicada será exibida na
exibição de diagrama.
Referência
O referenciamento de uma consulta criará uma nova consulta. A nova consulta usará as
etapas da consulta anterior sem precisar duplicar a consulta. Além disso, todas as
alterações na consulta original serão transferidas para a consulta referenciada. Para
referenciar uma consulta, clique com o botão direito do mouse na consulta e selecione
Referenciar.
Mover para o grupo
Você pode criar pastas e mover as consultas para essas pastas para fins de organização.
Essas pastas são chamadas de grupos. Para mover uma determinada consulta para um
Grupo de consultas, clique com o botão direito do mouse em uma consulta e selecione
Mover para o grupo. Você pode optar por mover as consultas para um grupo existente
ou criar um grupo de consultas.
Você pode ver os grupos de consultas acima da caixa de consulta na exibição de
diagrama.
Criar função
Quando você precisa aplicar o mesmo conjunto de transformações em diferentes
consultas ou valores, a criação de funções personalizadas do Power Query pode ser
valiosa. Para saber mais sobre funções personalizadas, acesse Usar funções
personalizadas. Para converter uma consulta em uma função reutilizável, clique com o
botão direito do mouse em uma determinada consulta e selecione Criar função.
Converter em parâmetro
Um parâmetro fornece a flexibilidade para alterar dinamicamente a saída de suas
consultas dependendo do valor e promove a reutilização. Para converter um valor não
estruturado, como data, texto, número e assim por diante, clique com o botão direito
do mouse na consulta e selecione Converter em Parâmetro.
7 Observação
Editor avançado
Com o editor avançado, você pode ver o código que Power Query editor está criando a
cada etapa. Para exibir o código de uma determinada consulta, clique com o botão
direito do mouse na consulta e selecione Editor avançado.
7 Observação
Para saber mais sobre o código usado no editor avançado, acesse Especificação da
linguagem M do Power Query.
7 Observação
Para saber mais sobre como acrescentar consultas no Power Query, acesse
Acrescentar consultas.
Mesclar consultas/Mesclar consultas como novas
Para mesclar ou fazer JUNÇÃO de consultas, clique com o botão direito do mouse em
uma consulta e selecione Mesclar consultas. Essa ação exibirá a caixa de diálogo
Mesclar, com a consulta selecionada como a tabela à esquerda da operação de
mesclagem. A opção Mesclar consultas como novas também exibirá a caixa de diálogo
Mesclar, mas permitirá mesclar duas tabelas em uma nova consulta.
7 Observação
Para saber mais sobre como mesclar consultas no Power Query, acesse Visão geral
de mesclar consultas.
Editar configurações
Para editar as configurações de nível de etapa, clique com o botão direito do mouse na
etapa e escolha Editar configurações. Você também pode clicar duas vezes na etapa
(que tenha configurações de etapa) e acessar diretamente a caixa de diálogo de
configurações. Na caixa de diálogo de configurações, você pode ver ou alterar as
configurações de nível de etapa. Por exemplo, a imagem a seguir mostra a caixa de
diálogo de configurações da etapa Dividir coluna.
Renomear etapa
Para renomear uma etapa, clique com o botão direito do mouse na etapa e selecione
Renomear. Essa ação abre a caixa de diálogo Definir propriedades. Insira o nome
desejado e selecione OK.
Excluir etapa
Para excluir uma etapa, clique com o botão direito do mouse na etapa e selecione
Excluir. Para excluir uma série de etapas até o final, clique com o botão direito do
mouse na etapa e selecione Excluir até o fim.
Extrair anterior
Para extrair todas as etapas anteriores para colocar em uma nova consulta, clique com o
botão direito do mouse na primeira etapa que você não deseja incluir na consulta e
selecione Extrair anterior.
Você também pode acessar o menu de contexto de nível de etapa passando o mouse
sobre a etapa e selecionando as reticências (três pontos verticais).
Essa ação abrirá uma caixa de diálogo na qual você pode adicionar a descrição da etapa.
Esta descrição da etapa será útil quando você voltar para a mesma consulta após alguns
dias ou quando compartilhar suas consultas ou fluxos de dados com outros usuários.
Ao passar o mouse sobre cada etapa, você exibe um texto explicativo que mostra o
rótulo da etapa, o nome da etapa e as descrições da etapa (que foram adicionadas).
Ao selecionar uma etapa, você pode exibir a visualização de dados correspondente para
aquela etapa.
Você também pode expandir ou recolher uma consulta selecionando as ações de nível
de consulta no menu de contexto da consulta.
Para expandir ou recolher todas as consultas, selecione o botão Expandir tudo/Recolher
tudo próximo das opções de layout no painel da exibição de diagrama.
Você também pode clicar com o botão direito do mouse em qualquer espaço vazio no
painel da exibição de diagrama e ver um menu de contexto para expandir ou recolher
todas as consultas.
Reduzir/ampliar
Com essa opção, você pode ajustar o nível de zoom e reduzir ou ampliar para exibir
todas as consultas na exibição de diagrama.
Minimapa
Com essa opção, você pode ativar ou desativar o minimapa da exibição de diagrama.
Mais informações: Mostrar minimapa
Tela inteira
Com essa opção, você pode exibir todas as consultas e suas relações por meio do modo
Tela inteira. O painel da exibição de diagrama se expande para a tela inteira e o painel
de visualização de dados, o painel de consultas e o painel de etapas permanecem
recolhidos.
Ajustar à exibição
Com essa opção, você pode ajustar o nível de ampliação para que todas as consultas e
suas relações possam ser totalmente exibidas na exibição de diagrama.
Redefinir
Com essa opção, você pode redefinir o nível de ampliação de volta para 100% e
redefinir o painel posicionando-o no canto superior à esquerda.
Da mesma forma, você pode selecionar o dongle à direita para exibir as consultas
dependentes diretas e indiretas.
Você também pode passar o mouse sobre o ícone de link abaixo de uma etapa para
exibir um texto explicativo que mostra as relações da consulta.
Exibição compacta
Quando você tem consultas com várias etapas, pode ser complicado rolar
horizontalmente para exibir todas as etapas no visor.
Para resolver isso, a exibição de diagrama oferece o Modo compacto, que compacta as
etapas de cima para baixo, em vez da esquerda para a direita. Essa exibição pode ser
especialmente útil quando você tem consultas com várias etapas, para que você possa
ver o maior número possível de consultas no visor.
Mostrar minimapa
Depois que o número de consultas começar a exceder a exibição de diagrama, você
poderá usar as barras de rolagem na parte inferior e à direita da exibição de diagrama
para rolar pelas consultas. Outro método de rolagem é usar o controle de minimapa da
exibição de diagrama. O controle de minimapa permite que você acompanhe o "mapa"
do fluxo de dados geral e navegue rapidamente, enquanto observa uma área específica
do mapa na área da exibição de diagrama principal.
Para abrir o minimapa, selecione Mostrar minimapa no menu da exibição de diagrama
ou selecione o botão minimapa nas opções de layout.
Mostrar animações
Quando o item de menu Mostrar animações é selecionado, as transições dos tamanhos
e posições das consultas são animadas. Essas transições são mais fáceis de ver ao
recolher ou expandir as consultas ou ao alterar as dependências de consultas existentes.
Quando desmarcadas, as transições serão imediatas. As animações ficam ativadas por
padrão.
Maximizar a visualização de dados
Pode ser interessante ver mais dados na visualização de dados para entender e analisar
os dados. Para fazer isso, expanda a visualização de dados para que você possa ver
tantos dados quanto antes na visualização de dados, sem sair da exibição de diagrama.
Renomeação embutida
Você pode clicar duas vezes no nome da consulta para renomeá-la.
Clicar duas vezes no nome da etapa permite renomear a etapa, desde que a
configuração da exibição de diagrama esteja mostrando nomes de etapas.
Quando os rótulos de etapa são exibidos na exibição de diagrama, clicar duas vezes no
rótulo da etapa mostrará a caixa de diálogo para renomear o nome da etapa e fornecer
uma descrição.
Acessibilidade
A exibição de diagrama dá suporte a recursos de acessibilidade, como navegação por
teclado, modo de alto contraste e suporte a leitor de tela. A tabela a seguir descreve os
atalhos de teclado disponíveis na exibição de diagrama. Para saber mais sobre os
atalhos de teclado disponíveis no Power Query Online, acesse atalhos de teclado em
Power Query.
Mover o foco do nível de consulta para o nível da etapa Alt + Tecla de seta para baixo
Este artigo orienta você pelo modo de exibição de esquema e pelas funcionalidades que
ele oferece.
7 Observação
O recurso Exibição de esquema está disponível apenas para Power Query Online.
Visão geral
Ao trabalhar em conjuntos de dados com muitas colunas, tarefas simples podem se
tornar incrivelmente complicadas, porque até mesmo encontrar a coluna certa rolando
horizontalmente e analisando todos os dados é ineficiente. A Exibição de esquema
mostra as informações de coluna em uma lista simples de encontrar e analisar, tornando
mais fácil do que nunca trabalhar no esquema.
Reordenação de colunas
Uma tarefa comum ao trabalhar no esquema é reordenar colunas. Na Exibição de
esquema, isso pode ser feito facilmente ao arrastar as colunas na lista e soltando no
local certo até conseguir chegar na ordem desejada das colunas.
Você pode usar o Power Query para extrair e transformar os dados de fontes de dados
externas. Essas etapas de extração e transformações são representadas como consultas.
As consultas criadas com o Power Query são expressas usando a linguagem M e
executadas por meio do Mecanismo M.
Copiar/Colar
No painel de consultas, clique com o botão direito do mouse na consulta que deseja
copiar. No menu suspenso, selecione a opção Copiar. A consulta e sua definição serão
adicionadas à área de transferência.
7 Observação
Atualmente, o recurso de copiar não está disponível em instâncias do Power Query
Online.
Para colar a consulta da área de transferência, acesse o painel de consultas e clique com
o botão direito do mouse em qualquer espaço vazio. No menu, selecioneColar.
Ao colar essa consulta em uma instância que tem o mesmo nome de consulta, a
consulta colada terá um sufixo adicionado no nome e ficará com o formato (#) , em que
o sinal de libra será substituído por um número para diferenciar as consultas coladas.
Também é possível colar consultas entre várias instâncias e integrações de produtos. Por
exemplo, é possível copiar a consulta do Power BI Desktop, conforme mostrado nas
imagens anteriores, e colá-la no Power Query para Excel, conforme mostrado na
imagem a seguir.
2 Aviso
Copiar e colar consultas entre integrações de produtos não garante que todas as
funções e funcionalidades encontradas na consulta colada funcionem no destino.
Algumas funcionalidades podem estar disponíveis somente na integração de
produtos da origem.
Copiar o código M
Também é possível copiar o código completo da consulta.
1. Selecione a consulta que deseja compartilhar.
2. Na faixa de opções, selecione a guia Exibir e clique em Editor avançado.
3. Na janela do Editor avançado, selecione e copie todo o código.
7 Observação
Para criar uma consulta em branco, acesse a janela Obter dados e selecione
Consulta em branco nas opções.
Se você se deparar com uma situação em que precisa aplicar o mesmo conjunto de
transformações a diferentes consultas ou valores, a criação de uma função
personalizada do Power Query que possa ser reutilizada quantas vezes forem
necessárias poderá ser algo benéfico. Uma função personalizada do Power Query é um
mapeamento de um conjunto de valores de entrada em um único valor de saída e é
criada com base em operadores e funções de M nativas.
Embora você possa criar manualmente sua própria função personalizada do Power
Query usando código, conforme mostrado em Noções básicas de funções da M do
Power Query, a interface do usuário do Power Query oferece recursos para acelerar,
simplificar e aprimorar o processo de criação e gerenciamento de uma função
personalizada.
Este artigo se concentra nessa experiência, fornecida apenas por meio da interface do
usuário Power Query, e mostra como aproveitar isso ao máximo.
) Importante
Este artigo descreve como criar uma função personalizada com o Power Query
usando transformações comuns acessíveis na interface do usuário do Power Query.
Ele se concentra nos principais conceitos para criar funções personalizadas e
oferece links para artigos adicionais na documentação do Power Query para obter
mais informações sobre transformações específicas que são referenciadas neste
artigo.
7 Observação
Comece usando a experiência do conector Folder para navegar até a pasta em que seus
arquivos estão localizados e selecione Transformar Dados ou Editar. Isso o levará à
experiência do Power Query. Clique com o botão direito do mouse no valor Binário de
sua preferência no campo Conteúdo e selecione a opção Adicionar como Nova
Consulta. Neste exemplo, você verá que a seleção foi feita para o primeiro arquivo da
lista, que por acaso é o arquivo April 2019.csv.
Essa opção criará efetivamente uma consulta com uma etapa de navegação diretamente
para esse arquivo como um Binário, e o nome dessa nova consulta será o caminho do
arquivo selecionado. Renomeie essa consulta como Arquivo de Exemplo.
Recomendamos que você leia o artigo sobre Parâmetros para entender melhor
como criar e gerenciar parâmetros no Power Query.
Clique com o botão direito do mouse nesta nova consulta Transformar Arquivo de
exemplo e selecione a opção Criar Função.
Essa operação criará efetivamente uma função que será vinculada à consulta
Transformar Arquivo de exemplo. Todas as alterações feitas na consulta Transformar
Arquivo de exemplo serão replicadas automaticamente para sua função personalizada.
Durante a criação dessa função, use Transformar arquivo como o Nome da função.
Depois de criar a função, você observará que um novo grupo será criado para você com
o nome da função. Esse novo grupo conterá:
Todos os parâmetros que foram referenciados em sua consulta Transformar
Arquivo de exemplo.
Sua consulta Transformar Arquivo de exemplo, comumente conhecida como a
consulta de exemplo.
Sua função recém-criada, nesse caso, Transformar arquivo.
A primeira transformação que precisa acontecer com essa consulta é a que interpretará
o binário. Clique com o botão direito do mouse no binário no painel de visualização e
selecione a opção CSV para interpretar o binário como um arquivo CSV.
O formato de todos os arquivos CSV da pasta é o mesmo. Todos eles têm um cabeçalho
que abrange as quatro primeiras linhas. Os cabeçalhos de coluna estão localizados na
linha cinco e os dados começam da linha seis em diante, conforme mostrado na
imagem a seguir.
7 Observação
Para saber mais sobre como remover linhas ou filtrar uma tabela por posição
de linha, vá para Filtrar por posição de linha.
7 Observação
Para saber mais sobre como promover e rebaixar cabeçalhos, acesse Promover ou
rebaixar cabeçalhos de coluna.
U Cuidado
7 Observação
Para saber mais sobre como escolher ou remover colunas de uma tabela, acesse
Escolher ou remover colunas.
Sua função foi aplicada a cada linha da tabela que usa os valores da coluna Conteúdo
como o argumento para sua função. Agora que os dados foram transformados na forma
que você está procurando, expanda a coluna Tabela de Saída, conforme mostrado na
imagem abaixo, sem usar nenhum prefixo para as colunas expandidas.
Você pode verificar se tem dados de todos os arquivos na pasta verificando os valores
na coluna Nome ou Data. Para esse caso, você pode verificar os valores da coluna Data,
pois cada arquivo contém apenas dados para um único mês de um determinado ano. Se
você vir mais de um, significa que você combinou com êxito dados de vários arquivos
em uma única tabela.
7 Observação
O que você leu até agora é fundamentalmente o mesmo processo que acontece
durante a experiência Combinar arquivos, mas feito manualmente.
Recomendamos que você também leia o artigo sobre Visão geral de combinação
de arquivos e Combinar arquivos CSV para entender melhor como a experiência
de combinação de arquivos funciona no Power Query e o papel que as funções
personalizadas desempenham.
Para fazer colocar esse requisito em prática, crie um parâmetro chamado Mercado com
o tipo de dados de texto. Para o Valor Atual, insira o valor Panamá.
Com esse novo parâmetro, selecione a consulta Transformar Arquivo de exemplo e
filtre o campo País usando o valor do parâmetro Mercado.
7 Observação
Para saber mais sobre como filtrar colunas por valores, acesse Filtrar valores.
Mas a consulta de Arquivos CSV tem um sinal de aviso ao lado dela. Agora que a
função foi atualizada, ela requer dois parâmetros. Portanto, a etapa em que você invoca
a função resulta em valores de erro, já que apenas um dos argumentos foi passado para
a função Transformar arquivo durante a etapa Função Personalizada Invocada.
Para corrigir os erros, clique duas vezes em Função Personalizada Invocada nas Etapas
Aplicadas para abrir a janela Invocar Função Personalizada. No parâmetro Mercado,
insira manualmente o valor Panamá.
Agora você pode verificar sua consulta para validar que somente as linhas em que País é
igual a Panamá aparecem no conjunto de resultados final da consulta Arquivos CSV.
Por exemplo, imagine uma consulta que tenha vários códigos como uma cadeia de
caracteres de texto e você queira criar uma função que decodificará esses valores, como
na tabela de exemplo a seguir:
code
PTY-CM1090-LAX
LAX-CM701-PTY
PTY-CM4441-MIA
MIA-UA1257-LAX
LAX-XY2842-MIA
Você começa com um parâmetro que tenha um valor que sirva de exemplo. Para esse
caso, será o valor PTY-CM1090-LAX.
Com base nesse parâmetro, você cria outra consulta em que aplica as transformações
necessárias. Para esse caso, você deseja dividir o código PTY-CM1090-LAX em vários
componentes:
Origem = PTY
Destino = LAX
Airline = CM
FlightID = 1090
O código em linguagem M desse conjunto de transformações é mostrado abaixo.
Power Query M
let
Source = code,
SplitValues = Text.Split( Source, "-"),
CreateRow = [Origin= SplitValues{0}, Destination= SplitValues{2},
Airline=Text.Start( SplitValues{1},2), FlightID= Text.End( SplitValues{1},
Text.Length( SplitValues{1} ) - 2) ],
RowToTable = Table.FromRecords( { CreateRow } ),
#"Changed Type" = Table.TransformColumnTypes(RowToTable,{{"Origin", type
text}, {"Destination", type text}, {"Airline", type text}, {"FlightID", type
text}})
in
#"Changed Type"
7 Observação
Para saber mais sobre a linguagem de fórmula M Power Query, acesse Power
Query linguagem de fórmula M.
Em seguida, você pode transformar essa consulta em uma função, clicando com o botão
direito do mouse na consulta e selecionando Criar Função. Por fim, você pode invocar a
função personalizada em qualquer uma de suas consultas ou seus valores, conforme
mostrado na próxima imagem.
Depois de mais algumas transformações, você poderá ver que alcançou a saída
desejada e aproveitou a lógica dessa transformação de uma função personalizada.
Promover ou rebaixar cabeçalhos de
coluna
Artigo • 23/03/2023
Ao criar uma nova consulta de fontes de dados não estruturadas, como arquivos de
texto, o Power Query analisa o conteúdo do arquivo. Se o Power Query identificar um
padrão diferente para a primeira linha, ele tentará promover a primeira linha de dados
para serem os títulos de coluna da tabela. No entanto, o Power Query pode não
identificar o padrão corretamente 100% do tempo, portanto, este artigo explica como
você pode promover ou rebaixar manualmente cabeçalhos de coluna em linhas.
Para promover os cabeçalhos, remova as quatro primeiras linhas da tabela. Para fazer
isso, selecione o menu da tabela no canto superior esquerdo da janela de visualização e
selecione Remover linhas superiores.
Na janela Remover linhas superiores, insira 4 na caixa Número de linhas.
7 Observação
Para saber mais sobre Remover linhas superiores e outras operações de tabela,
acesse Filtrar por posição de linha.
No menu da tabela.
Depois de fazer a operação Promover cabeçalhos, sua tabela será semelhante à imagem
a seguir.
7 Observação
Os nomes de colunas de tabela devem ser exclusivos. Se a linha que você deseja
promover em uma linha de cabeçalho contiver várias instâncias da mesma cadeia
de caracteres de texto, o Power Query vai evitar ambiguidade nos títulos de coluna
adicionando um sufixo numérico precedido por um ponto em cada cadeia de
caracteres de texto que não seja exclusiva.
Para rebaixar cabeçalhos de coluna em linhas
No exemplo a seguir, os cabeçalhos de coluna estão incorretos: na verdade, fazem parte
dos dados da tabela. É necessário rebaixar os cabeçalhos para que façam parte das
linhas da tabela.
Como última etapa, selecione cada coluna e digite um novo nome para ela. O resultado
final será semelhante à imagem a seguir.
Confira também
Filtrar por posição da linha
Filtrar uma tabela por posição de linha
Artigo • 23/03/2023
O Power Query tem várias opções para filtrar uma tabela com base nas posições de suas
linhas, mantendo ou removendo essas linhas. Este artigo aborda todos os métodos
disponíveis.
Manter Linhas
O conjunto de funções para manter linhas selecionará um conjunto de linhas da tabela e
removerá as outras linhas que não atendem aos critérios.
No menu de tabela.
7 Observação
O resultado dessa alteração lhe dará a tabela de saída que você está procurando.
Depois de definir os tipos de dados para as colunas, sua tabela ficará semelhante à
imagem a seguir.
Manter linhas inferiores
Imagine a tabela a seguir que sai de um sistema com um layout fixo.
Este relatório sempre contém sete linhas de dados no final da página do relatório.
Acima dos dados, o relatório tem uma seção para comentários com um número
desconhecido de linhas. Neste exemplo, você só deseja manter essas últimas sete linhas
de dados e a linha de cabeçalho.
Para fazer isso, selecione Manter as linhas inferiores no menu de tabela. Na caixa de
diálogo Manter linhas inferiores, insira 8 na caixa Número de linhas.
O resultado dessa operação lhe dará oito linhas, mas agora a linha de cabeçalho faz
parte da tabela.
Você precisa promover os cabeçalhos de coluna da primeira linha da tabela. Para fazer
isso, selecione Usar a primeira linha como cabeçalhos no menu de tabela. Depois de
definir tipos de dados para as colunas, você criará uma tabela semelhante à imagem a
seguir.
Para fazer isso, selecione Manter intervalo de linhas no menu de tabela. Na caixa de
diálogo Manter intervalo de linhas, insira 6 na caixa Primeira linha e 8 na caixa Número
de linhas.
Semelhante ao exemplo anterior para manter linhas inferiores, o resultado dessa
operação fornece oito linhas com os cabeçalhos de coluna como parte da tabela. Todas
as linhas acima da Primeira linha definida (linha 6) são removidas.
Você pode executar a mesma operação descrita em Manter linhas inferiores para
promover os cabeçalhos de coluna da primeira linha da tabela. Depois de definir tipos
de dados para as colunas, sua tabela ficará semelhante à imagem a seguir.
Remover linhas
Esse conjunto de funções selecionará um conjunto de linhas da tabela, as removerá e
manterá o restante das linhas na tabela.
Para fazer isso, selecione Remover linhas superiores no menu de tabela. Na caixa de
diálogo Remover linhas superiores, insira 5 na caixa Número de linhas.
Da mesma forma que nos exemplos anteriores de "Manter linhas inferiores" e "Manter
um intervalo de linhas", o resultado dessa operação fornece oito linhas com os
cabeçalhos de coluna como parte da tabela.
Você pode executar a mesma operação descrita nos exemplos anteriores para promover
os cabeçalhos de coluna da primeira linha da tabela. Depois de definir tipos de dados
para as colunas, sua tabela ficará semelhante à imagem a seguir.
Para fazer isso, selecione Remover linhas inferiores no menu de tabela. Na caixa de
diálogo Remover linhas superiores, insira 5 na caixa Número de linhas.
O resultado dessa alteração lhe dará a tabela de saída que você está procurando.
Depois de definir tipos de dados para as colunas, sua tabela ficará semelhante à
imagem a seguir.
Para fazer isso, selecione Remover linhas alternadas no menu de tabela. Na caixa de
diálogo Remover linhas alternadas, insira os seguintes valores:
Você deseja começar a contar da segunda linha em diante. Todas as linhas acima
desta Primeira linha a ser removida serão mantidas.
Aqui você começa a definir o padrão para remover linhas. Depois de encontrar a
segunda linha, você só deseja remover essa linha específica, portanto, especifique
que só precisa remover uma linha.
Depois de remover uma linha, você mantém a próxima linha. O processo é iniciado
novamente para a próxima linha.
O resultado dessa seleção lhe dará a tabela de saída que você está procurando. Depois
de definir os tipos de dados para as colunas, sua tabela ficará semelhante à imagem a
seguir.
Filtrar por valores em uma coluna
Artigo • 23/03/2023
No Power Query, você pode incluir ou excluir linhas de acordo com um valor específico
em uma coluna. Você pode escolher entre três métodos para filtrar os valores em sua
coluna:
Depois de aplicar um filtro a uma coluna, um pequeno ícone de filtro aparece no título
da coluna, conforme mostrado na ilustração a seguir.
Remover vazio
O comando Remover vazio aplica duas regras de filtro à coluna. A primeira regra se livra
de valores nulos. A segunda regra se livra de quaisquer valores em branco. Por exemplo,
imagine uma tabela com apenas uma coluna de texto com cinco linhas, em que você
tem um valor nulo e uma célula em branco.
7 Observação
Você também pode selecionar essa opção na guia Página Inicial no grupo Reduzir
Linhas nas opções suspensa Remover Linhas, conforme mostrado na próxima imagem.
O resultado da operação Remover vazio fornece a mesma tabela sem os valores vazios.
Limpar filtro
Quando um filtro é aplicado a uma coluna, o comando Limpar filtro aparece no menu
classificar e filtrar.
Filtro Automático
A lista no menu classificar e filtrar é chamada de lista de filtro automático, que mostra os
valores exclusivos em sua coluna. Você pode selecionar ou desmarcar manualmente
quais valores incluir na lista. Todos os valores selecionados serão levados em
consideração pelo filtro; todos os valores que não estiverem selecionados serão
ignorados.
Esta seção de filtro automático também tem uma barra de pesquisa para ajudá-lo a
encontrar os valores da sua lista.
7 Observação
7 Observação
O Power Query exibe um filtro específico de tipo com base no tipo de dados da
coluna.
Basic
Com o modo básico, você pode implementar até duas regras de filtro com base em
filtros específicos do tipo. Na imagem anterior, observe que o nome da coluna
selecionada é exibido após o rótulo Manter linhas em que, para informar em qual
coluna essas regras de filtro estão sendo implementadas.
Por exemplo, imagine que, na tabela a seguir, você deseja filtrar o Código da Conta por
todos os valores que começam com PA ou PTY.
Para fazer isso, você pode acessar a caixa de diálogo Filtrar linhas para a coluna Código
da Conta e especificar o conjunto de regras de filtro desejado.
O resultado dessa operação fornecerá o conjunto de linhas que você está procurando.
Avançado
Com o modo avançado, você pode implementar quantos filtros específicos de tipo
forem necessários de todas as colunas da tabela.
Por exemplo, imagine que, em vez de aplicar o filtro anterior no modo básico, você
queria implementar um filtro no Código da Conta para mostrar todos os valores que
terminam com 4. Além disso, você deseja mostrar valores acima de US$ 100 na coluna
Vendas.
O resultado dessa operação fornecerá apenas uma linha que atenda a ambos os
critérios.
7 Observação
Escolher colunas e Remover colunas são operações que ajudam a definir quais colunas
precisam ser mantidas e quais precisam ser removidas em uma tabela. Este artigo
mostrará como usar os comandos Escolher colunas e Remover colunas usando a tabela
de exemplo a seguir para ambas as operações.
Escolher colunas
Na guia Página Inicial, no grupo Gerenciar colunas, selecione Escolher colunas.
Remover colunas
Ao selecionar Remover colunas na guia Página Inicial, você terá duas opções:
Depois de selecionar OK, você terá criado uma tabela que contém apenas as colunas
Date, Product, SalesPerson e Units.
Depois de selecionar Remover outras colunas, você terá criado uma tabela que contém
apenas as colunas Date, Product, SalesPerson e Units.
Agrupar ou resumir linhas
Artigo • 23/03/2023
No Power Query, é possível agrupar valores de diversas linhas em um único valor. Basta
agrupar as linhas de acordo com os valores em uma ou mais colunas. Existem dois tipos
de operações de agrupamento para escolher:
Agrupamentos de colunas.
Agrupamentos de linha.
Operações disponíveis
Com o recurso Agrupar por, é possível categorizar as operações disponíveis de duas
maneiras:
7 Observação
País
Canal de vendas
Após a conclusão da operação, veja que a coluna Produtos apresenta valores [Tabela]
dentro de cada célula. Cada valor [Tabela] contém todas as linhas agrupadas pelas
colunas País e Canal de vendas da tabela original. É possível selecionar o espaço em
branco dentro da célula para ver uma pré-visualização do conteúdo da tabela na parte
inferior da caixa de diálogo.
7 Observação
Em seguida, é necessário extrair a linha com o valor mais alto na coluna Unidades das
tabelas dentro da nova coluna Produtos. Depois, dê o nome Produto de melhor
desempenho para a nova coluna.
Com a nova coluna Produto de melhor desempenho que contém valores [Registro], é
possível clicar no ícone expandir, selecionar os campos Produto e Unidades e, em
seguida, clicar em OK.
Depois de remover a coluna Produtos e definir o tipo de dados para ambas as colunas
recém-expandidas, o resultado será semelhante à imagem a seguir.
Agrupamento difuso
7 Observação
Para fazer o agrupamento difuso, siga as mesmas etapas descritas anteriormente neste
artigo. A única diferença é que, desta vez, na caixa de diálogo Agrupar por, marque a
caixa de seleção Usar agrupamento difuso.
Em cada grupo de linhas, o Power Query escolhe a instância mais frequente como
"canônica". Vale lembrar que se várias instâncias ocorrerem na mesma frequência, o
Power Query escolherá a primeira. Depois de clicar em OK na caixa de diálogo Agrupar
por, você receberá o resultado esperado.
No entanto, você tem mais controle sobre a operação de agrupamento difuso com a
expansão das Opções de agrupamento difuso.
Confira as opções disponíveis para agrupamento difuso:
) Importante
Volte à caixa de diálogo Agrupar por, expanda Opções de agrupamento difuso, altere a
operação de Linhas de contagem para Todas as linhas, marque a opção Mostrar
pontuações de similaridade e selecione a Tabela de transformação no menu suspenso.
7 Observação
Confira também
Adicionar uma coluna personalizada
Remover duplicatas
Transformar colunas em linhas
Artigo • 23/03/2023
Por exemplo, considerando uma tabela como a seguir, em que linhas de país e colunas
de data criam uma matriz de valores, é difícil analisar os dados de maneira escalonável.
No entanto, você pode transformar a tabela em uma tabela com colunas transformadas
em linhas, conforme mostrado na imagem a seguir. Na tabela transformada, é mais fácil
usar a data como um atributo para filtrar.
O importante nessa transformação é que você tem um conjunto de datas na tabela, que
deve fazer parte de uma única coluna. O respectivo valor de cada data e país deve estar
em uma coluna diferente, criando efetivamente um par de atributo-valor.
Considerações especiais
Depois de criar sua consulta com base nas etapas acima, imagine que sua tabela inicial
seja atualizada para ficar semelhante à captura de tela a seguir.
Observe que você adicionou uma nova coluna para a data de 1/9/2020 (1º de setembro
de 2020) e duas novas linhas para os países Reino Unido e México.
Se você atualizar a consulta, observará que a operação será feita na coluna atualizada,
mas não afetará a coluna que não foi selecionada originalmente (País, neste exemplo).
Isso significa que qualquer coluna nova adicionada à tabela de origem também será
transformada em linha.
A imagem a seguir mostra como ficará sua consulta após a atualização com a nova
tabela de origem atualizada.
Transformar outras colunas em linhas
Você também pode selecionar as colunas que não deseja transformar em linhas e
transformar em linhas o restante das colunas da tabela. Essa operação é aquela em que
Transformar outras colunas em linhas entra em jogo.
O resultado dessa operação produzirá exatamente o mesmo resultado que você obteve
em Transformar colunas em linhas.
7 Observação
Considerações especiais
Semelhante à operação Transformar colunas em linhas, se a consulta for atualizada e
mais dados forem coletados na fonte de dados, todas as colunas serão transformadas
em linhas, exceto as que foram selecionadas anteriormente.
Para ilustrar isso, digamos que você tenha uma nova tabela como a da imagem a seguir.
Você pode selecionar a coluna País e selecionar Transformar outras colunas em linhas,
que produzirá o resultado a seguir.
Transformar somente as colunas selecionadas
em linhas
A finalidade dessa última opção é transformar somente colunas específicas da sua
tabela em linhas. Isso é importante para cenários em que você está lidando com um
número desconhecido de colunas da fonte de dados e deseja apenas transformar as
colunas selecionadas em linhas.
Para executar essa operação, selecione as colunas a serem transformadas em linhas, que
neste exemplo são todas as colunas, exceto a coluna País. Em seguida, clique com o
botão direito do mouse em qualquer uma das colunas selecionadas e escolha
Transformar somente as colunas selecionadas em linhas.
Observe como essa operação produzirá a mesma saída que os exemplos anteriores.
Considerações especiais
Depois de fazer uma atualização, se nossa tabela de origem mudar para ter uma nova
coluna 1/9/2020 e novas linhas para Reino Unido e México, a saída da consulta será
diferente dos exemplos anteriores. Digamos que, após uma atualização, nossa tabela
original mude para a tabela na imagem a seguir.
A saída da nossa consulta será semelhante à imagem a seguir.
Isso ocorre porque a operação transformar colunas em linhas foi aplicada somente nas
colunas 1/6/2020, 1/7/2020 e 8/1/2020, portanto, a coluna com o cabeçalho 1/9/2020
permanece inalterada.
Dinamizar colunas
Artigo • 23/03/2023
No Power Query, é possível criar uma tabela que contém um valor agregado para cada
valor exclusivo em uma coluna. O Power Query agrupa cada valor exclusivo, faz um
cálculo de agregação para cada um deles e dinamiza a coluna em uma nova tabela.
Esta tabela contém valores por país e data em uma tabela simples. Neste exemplo, você
transformará essa tabela na tabela que tem a coluna de data dinâmica, conforme
mostrado na imagem a seguir.
7 Observação
Durante a operação de colunas dinâmicas, o Power Query classificará a tabela com
base nos valores encontrados na primeira coluna, no lado esquerdo da tabela, em
ordem crescente.
Por padrão, o Power Query tentará fazer uma soma como a agregação, mas é
possível selecionar a opção Avançado para ver outras agregações disponíveis.
As opções disponíveis são:
Não agregar
Contagem (tudo)
Contagem (não está em branco)
Mínimo
Máximo
Mediana
Soma
Média
Você dinamizará essa tabela usando a coluna Data e usar os valores da coluna Valor.
Como essa dinamização faria com que a tabela tivesse apenas os valores de País como
linhas e de Datas como colunas, você obteria um erro para cada valor de célula única
porque haveria várias linhas para cada combinação de País e Data. O resultado da
operação Dinamizar coluna produzirá os resultados mostrados na imagem a seguir.
Imagine uma tabela como a da imagem a seguir, com três linhas e quatro colunas.
O objetivo deste exemplo é transpor essa tabela para que se obtenha quatro linhas e
três colunas.
7 Observação
Para saber mais sobre a operação para promover cabeçalhos, também conhecida
como Usar a primeira linha como cabeçalhos, acesse Promover ou despromover
cabeçalhos de coluna.
Inverter linhas
Artigo • 23/03/2023
Com o Power Query, é possível inverter a ordem das linhas em uma tabela.
Imagine uma tabela com duas colunas, ID e País, conforme mostrado na imagem a
seguir.
Os tipos de dados no Power Query são usados para classificar valores para ter um
conjunto de dados mais estruturado. Os tipos de dados são definidos no nível do
campo – os valores dentro de um campo são definidos para conformidade com o tipo
de dados do campo.
O tipo de dados de uma coluna é exibido no lado esquerdo do título da coluna com um
ícone que simboliza o tipo de dados.
7 Observação
Os tipos de dados mais comuns usados no Power Query estão listados na tabela a
seguir. Embora esteja além do escopo deste artigo, você pode encontrar a lista
completa de tipos de dados no artigo Tipos da linguagem de fórmula M do Power
Query.
Número decimal Também conhecido como tipo Moeda, esse tipo de dados tem um
fixo local fixo para o separador decimal. O separador decimal tem sempre
quatro dígitos à direita e permite 19 dígitos de significância. O maior
valor que ele pode representar é 922.337.203.685.477,5807 (positivo
ou negativo). Ao contrário do Número Decimal, o tipo Número
Decimal Fixo é sempre preciso e, portanto, é útil em casos em que a
imprecisão da notação de ponto flutuante pode introduzir erros.
Data Representa apenas uma data (sem a parte referente à hora). Quando
convertido para o modelo, uma Data é o mesmo que um valor de
Data/Hora com zero como o valor fracionário.
Tipo de dados ícone Descrição
Binary O tipo de dados Binary pode ser usado para representar outros
dados com um formato binário.
Qualquer O tipo de dados Qualquer é o status fornecido a uma coluna que não
tem uma definição de tipo de dados explícita. Qualquer um é o tipo
de dados que classifica todos os valores. Recomendamos que você
sempre defina explicitamente os tipos de dados da coluna em suas
consultas de fontes não estruturadas e evite ter colunas com o tipo
de dados Qualquer como o resultado da sua consulta.
Fontes não estruturadas, como Excel, CSV e arquivos de texto; o Power Query
detecta automaticamente os tipos de dados inspecionando os valores na tabela.
Por padrão, a detecção automática de tipo de dados é habilitada no Power Query
para fontes não estruturadas.
Você também pode usar o comando Detectar tipo de dados no grupo Qualquer coluna
na guia Transformar para detectar automaticamente os tipos de dados das colunas em
sua tabela.
Como definir o tipo de dados de uma coluna
Você pode definir ou alterar o tipo de dados de uma coluna em qualquer um desses
quatro locais:
Por padrão, essa configuração está habilitada. Para desabilitar ou habilitar essa
configuração, siga as etapas que se aplicam à sua experiência do Power Query.
Para configurar a detecção automática de tipo de dados no Power Query Online
Para configurar a detecção automática de tipo de dados no Power Query for Desktop
Você pode definir esse comportamento no nível global e por arquivo na janela Opções
(no Editor do Power Query, na guia Arquivo, selecione Opções e
configurações>Opções).
Localização: o componente que informa o Power Query em qual idioma ele deve
ser exibido.
Globalização: o componente que manipula a formatação dos valores, além da
interpretação dos valores de texto.
Quando o Power Query define o tipo de dados de uma coluna ou converte de um tipo
de dados em outro, ele precisa interpretar os valores a serem convertidos antes de
poder transformá-los em um tipo de dados diferente.
Ao tentar definir o tipo de dados da coluna Data para ser Data, você obterá valores de
erro.
Esses erros ocorrem porque a localidade que está sendo usada está tentando interpretar
a data no formato Inglês (Estados Unidos), que é mês/dia/ano. Como não há nenhum
mês 22 no calendário, isso causa um erro.
Em vez de tentar apenas selecionar o tipo de dados Data, clique com o botão direito do
mouse no título da coluna, selecione Alterar tipo e selecione Usar localidade.
Na caixa de diálogo Alterar tipo de coluna com localidade, você seleciona o tipo de
dados que deseja definir, mas também seleciona qual localidade usar, que nesse caso
precisa ser Inglês (Reino Unido).
Usando essa localidade, o Power Query será capaz de interpretar os valores
corretamente e converter esses valores no tipo de dados correto.
A formatação dos valores é controlada pelo valor de globalização. Se você tiver dúvidas
sobre o valor exibido pelo Power Query, poderá verificar a conversão de valores de data
adicionando novas colunas para o dia, mês e ano com base no valor. Para fazer isso,
selecione a coluna Data e vá para a guia Adicionar coluna na faixa de opções. No grupo
Coluna de data e hora, você verá as opções para uma coluna de data.
Aqui você pode extrair partes do valor da data, como o número do ano, o número do
mês, o número do dia e até outras colunas extraídas da coluna Data.
Usando essas colunas, você pode verificar se o valor da data foi convertido
corretamente.
A conversão nessa matriz começa com o tipo de dados original na coluna Tipos de
dados. Cada resultado de uma conversão para o novo tipo é mostrado na linha do
tipo de dados original.
Tipos de dados
Número decimal —
Moeda —
Número inteiro —
Percentual —
Data/Hora —
Data —
Hora —
Data/Hora/Fuso —
horário
Duração —
Texto —
Verdadeiro/Falso —
ícone Descrição
Possível
Impossível
Este artigo fornece sugestões de como corrigir os erros mais comuns que você poderá
encontrar em cada nível e descreve o motivo do erro, a mensagem de erro e os detalhes
do erro para cada nível.
Motivo do erro: a primeira seção antes dos dois pontos. No exemplo acima, o
motivo do erro é Expression.Error.
Mensagem de erro: a seção diretamente após o motivo. No exemplo acima, a
mensagem de erro é A coluna "Column" da tabela não foi encontrada.
Detalhe do erro: a seção diretamente após a cadeia de caracteres Detalhes:. No
exemplo acima, o detalhe do erro é Coluna.
Soluções possíveis: você pode alterar o caminho do arquivo de texto para um caminho
ao qual ambos os usuários têm acesso. Como usuário B, você pode alterar o caminho
do arquivo para que seja uma cópia local do mesmo arquivo de texto. Se o botão Editar
configurações estiver disponível no painel de erros, você poderá selecioná-lo e alterar o
caminho do arquivo.
Exemplo: você tem uma consulta de um arquivo de texto em que um dos nomes de
coluna era Coluna. Em sua consulta, você tem uma etapa que renomeia essa coluna
como Data. Mas houve uma alteração no arquivo de texto original e ele não tem mais
um título de coluna com o nome Coluna porque ele foi alterado manualmente para
Data. O Power Query não consegue encontrar um título de coluna chamado Coluna,
portanto, ele não consegue renomear nenhuma coluna. Ele exibe o erro mostrado na
imagem a seguir.
Soluções possíveis: há várias soluções para esse caso, mas todas elas dependem do que
você gostaria de fazer. Para este exemplo, como o cabeçalho correto da coluna Data já
vem do arquivo de texto, você pode simplesmente remover a etapa que renomeia a
coluna. Isso permitirá que sua consulta seja executada sem esse erro.
Esse erro pode ser causado por vários motivos, como os níveis de privacidade dos
dados entre fontes de dados ou a forma como essas fontes de dados estão sendo
combinadas ou mescladas. Para obter mais informações sobre como diagnosticar esse
problema, acesse Firewall de privacidade de dados.
7 Observação
Nas próximas seções, os exemplos fornecidos usarão a mesma consulta de exemplo que
o ponto de partida. Nesta consulta, você tem uma coluna Vendas que tem uma célula
com um erro causado por um erro de conversão. O valor dentro dessa célula era NA,
mas quando você transformou essa coluna em um número inteiro, o Power Query não
pôde converter NA em um número, portanto, ela exibirá o erro a seguir.
Remover erros
Para remover linhas com erros no Power Query, primeiro selecione a coluna que contém
erros. Na guia Página Inicial, no grupo Reduzir linhas, selecione Remover linhas. No
menu suspenso, selecione Remover erros.
O resultado dessa operação lhe fornecerá a tabela que você esperava.
Substituir erros
Se, em vez de remover linhas com erros você quiser substituir os erros por um valor
corrigido, também poderá fazer isso. Para substituir as linhas que têm erros, primeiro
selecione a coluna que contém erros. Na guia Transformar, no grupo Qualquer coluna,
selecione Substituir valores. No menu suspenso, selecione Substituir erros.
Na caixa de diálogo Substituir erros, insira o valor 10 porque você deseja substituir
todos os erros pelo valor 10.
Exemplo: você tem uma consulta que inclui uma coluna chamada Vendas. Uma célula
nessa coluna tem NA como um valor de célula, enquanto o restante tem números
inteiros como valores. Você decide converter o tipo de dados da coluna de texto para
número inteiro, mas a célula com o valor NA causa um erro.
Soluções possíveis: depois de identificar a linha com o erro, você pode modificar a
fonte de dados para refletir o valor correto em vez de NA ou aplicar uma operação
Substituir erro para fornecer um valor para os valores NA que causam o erro.
Erros de operação
Ao tentar aplicar uma operação que não tem suporte, como multiplicar um valor de
texto por um valor numérico, ocorre um erro.
Exemplo: você deseja criar uma coluna personalizada para sua consulta criando uma
cadeia de caracteres de texto que contém a frase "Total de Vendas: " concatenada com o
valor da coluna Vendas. Ocorre um erro porque a operação de concatenação dá suporte
apenas a colunas de texto, mas não a colunas numéricas.
Soluções possíveis: antes de criar essa coluna personalizada, altere o tipo de dados da
coluna Vendas para texto.
Ao trabalhar com dados que contêm valores estruturados aninhados (como tabelas,
listas ou registros), às vezes, você pode encontrar o seguinte erro:
Expression.Error: We cannot return a value of type {value} in this context
Details: In the past we would have returned a text value of {value}, but we
now return this error. Please see https://go.microsoft.com/fwlink/?
linkid=2099726 for more information.
Soluções possíveis:
Remova a coluna que contém o erro ou defina um tipo de Any dados que não seja
para essa coluna.
Altere os níveis de privacidade das fontes de dados envolvidas para uma que
permita que elas sejam combinadas sem serem armazenadas em buffer.
Nivele as tabelas antes de fazer uma mesclagem para eliminar colunas que contêm
valores estruturados aninhados (como tabela, registro ou lista).
Como trabalhar com valores duplicados
Artigo • 05/10/2023
2 Aviso
Neste artigo, os exemplos usam a tabela a seguir com as colunas id, Category e Total.
Remover duplicatas
Uma das operações que se pode executar é remover valores duplicados da tabela.
Há quatro linhas duplicadas. O objetivo é remover essas linhas duplicadas para que haja
apenas linhas exclusivas na tabela. Selecione todas as colunas da tabela e clique em
Remover duplicidades.
Confira também
Ferramentas de perfil de dados
Preencher valores em uma coluna
Artigo • 23/03/2023
Você pode usar preenchimento e preenchimento para substituir valores nulos pelo
último valor não vazio em uma coluna. Por exemplo, imagine a tabela a seguir na qual
você gostaria de preencher a coluna Data e preencher a coluna Comentários.
Preencher
A operação de preenchimento pega uma coluna e percorre os valores nela para
preencher todos os valores nulos nas próximas linhas até encontrar um novo valor. Esse
processo continua em linha por linha até que não haja mais valores nessa coluna.
No exemplo a seguir, você deseja preencher a coluna Data. Para fazer isso, clique com o
botão direito do mouse para selecionar a coluna Data e selecione Preencher>Para
Baixo.
No exemplo a seguir, você deve preencher a coluna Comentários de baixo para cima.
Você observará que sua coluna Comentários não tem valores nulos. Em vez disso, tem o
que parece ser células vazias. Antes de fazer a operação de preenchimento, você precisa
transformar essas células vazias em valores nulos: selecione a coluna, vá para a guia
Transformar e selecione Substituir valores.
Na caixa de diálogo Substituir valores, deixe o Valor em branco. Para Substituir por,
insira nulo.
Depois que todas as células vazias forem substituídas por nulas, selecione a coluna
Comentários, vá para a guia Transformar e selecione Preencher>.
O resultado dessa operação será semelhante à imagem a seguir.
3. Remova Vendedor: valores da coluna Sales Person para que você obtenha apenas
os nomes dos vendedores.
Agora você deve ter exatamente a tabela que você estava procurando.
Confira também
Substituir valores
Classificar colunas
Artigo • 05/10/2023
Você pode classificar uma tabela no Power Query por uma coluna ou várias colunas. Por
exemplo, use a tabela a seguir com as colunas denominadas Competition, Competitor e
Position.
Neste exemplo, a meta é classificar essa tabela pelos campos Competition e Position
em ordem crescente.
Na guia Página Inicial, no grupo Classificar, há ícones para classificar sua coluna
em ordem crescente ou decrescente.
Um indicador visual, exibido como uma seta apontando para cima, é adicionado ao
ícone do menu suspenso de Competitor para mostrar que a coluna está sendo
classificada em ordem crescente.
Agora você também classificará o campo Position em ordem crescente, mas desta vez
você usará o menu suspenso do cabeçalho da coluna Position.
Observe que essa ação não cria uma etapa Linhas classificadas, mas a modifica para
executar ambas as operações de classificação em uma etapa. Quando você classifica
várias colunas, a ordem em que as colunas são classificadas é baseada na ordem em
que as colunas foram selecionadas. Um indicador visual, exibido como um número à
esquerda do indicador do menu suspenso, mostra o lugar que cada coluna ocupa na
ordem de classificação.
Como exemplo, comecemos com um conjunto de dados que tem duas colunas.
Coluna 1 Coluna 2
Panamá Panamá
Canadá Toronto
Os cabeçalhos de coluna são Column 1 e Column 2, mas você deseja alterar esses
nomes para nomes mais amigáveis.
Por exemplo, na primeira tabela de exemplo fornecida neste artigo, imagine que você
tenta renomear a Column 1 e a Column 2 como "Geography". Uma mensagem de erro
será exibida, impedindo que você renomeie a segunda coluna como "Geography".
Para saber mais sobre como promover a primeira linha para os cabeçalhos,
acessePromover ou despromover cabeçalhos de coluna.
Expansão de uma coluna com um nome de campo que também existe na tabela
atual: isso pode acontecer, por exemplo, quando você executa uma operação de
mesclagem e a coluna com a tabela mesclada tem nomes de campo que também
existem na tabela. Quando você tenta expandir os campos dessa coluna, o Power
Query tenta excluir a ambiguidade automaticamente para evitar erros de Conflito
de nome de coluna.
Mover colunas
Artigo • 18/12/2023
Para realizar essa movimentação, você pode selecionar a opção Mover ou arrastar e
soltar a coluna.
Opção de mover
O exemplo a seguir mostra as diferentes maneiras para mover colunas. Este exemplo se
concentra em mover a coluna Nome do Contato.
Você move a coluna usando a opção Mover. Essa opção está localizada no grupo
Qualquer coluna na guia Transformar. Na opção Mover, as opções disponíveis são:
Antes
Após
Para o início
Para o fim
Você também pode encontrar essa opção ao clicar com o botão direito do mouse em
uma coluna.
Agora o novo local da coluna é uma coluna à esquerda de seu local original.
Se você quiser mover uma coluna para a direita, selecione Depois.
Agora o novo local da coluna é uma coluna à direita de seu local original.
Se você quiser mover a coluna para o espaço mais à esquerda do conjunto de dados,
selecione Para o início.
Agora o novo local da coluna é na extremidade à esquerda da tabela.
Se você quiser mover a coluna para o espaço mais à direita do conjunto de dados,
selecione Para o fim.
Arrastar e soltar
Outra maneira de mover uma coluna no conjunto de dados é arrastar e soltá-la. Mova a
coluna para o local em que você gostaria de colocá-la.
Recurso Ir para a coluna
Se você quiser encontrar uma coluna específica, acesse a guia Exibir na faixa de opções
e selecione Ir para a coluna.
Nesse local, você pode selecionar especificamente a coluna que deseja exibir, o que é
especialmente útil se houver muitas colunas.
Substituir valores e erros
Artigo • 23/03/2023
Com o Power Query, você pode substituir um valor por outro valor onde quer que esse
valor seja encontrado em uma coluna. O comando Substituir valores pode ser
encontrado:
No menu de atalho da célula. Clique com o botão direito do mouse na célula para
substituir o valor selecionado na coluna por outro valor.
No Power Query, você pode analisar o conteúdo de uma coluna com cadeias de
caracteres de texto identificando o conteúdo como uma cadeia de texto JSON ou XML.
Você pode executar essa operação de análise selecionando o botão Analisar encontrado
nos seguintes locais no Editor do Power Query:
Adicionar guia coluna — Este botão adicionará uma nova coluna à tabela
analisando o conteúdo da coluna selecionada.
Para este artigo, você usará a seguinte tabela de exemplo que contém as seguintes
colunas que você precisa analisar:
JSON
{
"id" : 249319,
"FirstName": "Lesa",
"LastName": "Byrd"
}
País — contém cadeias de caracteres de texto XML não analisadas com
informações sobre o País e a Divisão à qual a conta foi atribuída, como no
exemplo a seguir.
XML
<root>
<id>1</id>
<Country>USA</Country>
<Division>BI-3316</Division>
</root>
Como .json
Selecione a coluna Vendedor. Em seguida, selecioneJSON no menu suspenso Analisar
dentro da guia Transformar. Essas etapas transformarão a coluna Vendedor de ter
cadeias de caracteres de texto para ter valores de Registro, conforme mostrado na
próxima imagem. Você pode selecionar qualquer lugar no espaço em branco dentro da
célula do valor de Registro para obter uma visualização detalhada do conteúdo do
registro na parte inferior da tela.
Selecione o ícone expandir ao lado do cabeçalho da coluna Vendedor. No menu
expandir colunas, selecione apenas os campos Nome e Sobrenome , conforme
mostrado na imagem a seguir.
Como XML
Selecione a coluna País. Em seguida, selecione o botão XML no menu suspenso Analisar
dentro da guia Transformar. Essas etapas transformarão a coluna País de strings de
texto em valores de Tabela, conforme mostrado na próxima imagem. Você pode
selecionar qualquer lugar no espaço em branco dentro da célula do valor de Tabela
para obter uma visualização detalhada do conteúdo da tabela na parte inferior da tela.
Você pode definir todas as novas colunas como colunas de texto. O resultado dessa
operação fornecerá a tabela de saída que você está procurando.
Adicionar uma coluna dos exemplos
Artigo • 23/03/2023
Ao adicionar colunas de exemplos, você pode criar colunas rápidas e facilmente que
atendam às suas necessidades. Isso é útil para as seguintes situações:
Você conhece os dados que deseja inserir na nova coluna, mas não tem certeza de
qual transformação ou coleção de transformações produzirá esse resultado.
Você já conhece quais transformações são necessárias, mas não tem certeza do
que selecionar na interface do usuário para fazer isso.
Você sabe tudo sobre as transformações de que precisa usando uma expressão de
coluna personalizada na linguagem M, mas uma ou mais dessas transformações
não estão disponíveis na interface do usuário.
A coluna dos exemplos está localizado na guia Adicionar coluna, no grupo Geral .
Para fazer isso, selecione a coluna Renda Mensal, selecione a Coluna no comando de
exemplos e selecione De seleção.
O painel de visualização exibe uma nova coluna editável na qual você pode inserir seus
exemplos. Para o primeiro exemplo, o valor da coluna selecionada é 19500. Portanto, em
sua nova coluna, insira o texto 15000 a 20000, que é a lixeira em que esse valor cai.
Depois de selecionar OK, você verá sua nova coluna como parte de sua consulta. Você
também verá uma nova etapa adicionada à consulta.
Depois de selecionar OK, você verá sua nova coluna como parte de sua consulta. Você
também verá uma nova etapa adicionada à consulta.
Sua última etapa é remover as colunas Nome, Sobrenome e Renda Mensal. Sua tabela
final agora contém as colunas Intervalo e Nome Completo com todos os dados que
você produziu nas etapas anteriores.
Dicas e considerações
Ao fornecer exemplos, Power Query oferece uma lista útil de campos, valores e
transformações sugeridas disponíveis para as colunas selecionadas. Você pode exibir
essa lista selecionando qualquer célula da nova coluna.
É importante observar que a experiência Coluna de exemplos funciona apenas nas 100
principais linhas da visualização de dados. Você pode aplicar etapas antes da etapa
Coluna de exemplos para criar seu próprio exemplo de dados. Depois que a Coluna de
exemplos tiver sido criada, você poderá excluir essas etapas anteriores; a coluna recém-
criada não será afetada.
Coluna Condicional
Referência
Transformações de texto
7 Observação
Transformações de data
Dia
Dia da semana
Nome do dia da semana
Dia do ano
Month
Month Name
Trimestre do ano
Semana do mês
Semana do ano
Ano
Idade
Início do ano
Fim do ano
Início do mês
Fim do mês
Início do trimestre
Dias do mês
Fim do trimestre
Início da semana
Fim da semana
Dia do mês
Início do dia
Fim do dia
Transformações de hora
Hora
Minuto
Segundo
Para a hora local
7 Observação
Transformações de número
Valor absoluto
Arco cosseno
Arco seno
Arco tangente
Converter em número
Cosseno
Cubo
Dividir
Expoente
Fatorial
Divisão de inteiro
É par
É ímpar
Ln
Logaritmo de base 10
Módulo
Multiplicar
Arredondar para baixo
Arredondar para cima
Sinal
Seno
Raiz quadrada
Quadrado
Subtrair
Somar
Tangente
Particionamento/intervalos
Adicionar uma coluna de índice
Artigo • 23/03/2023
O comando Coluna de índice adiciona uma nova coluna à tabela com valores de
posição explícitos e, geralmente, é criado para dar suporte a outros padrões de
transformação.
Por padrão, o índice inicial começará a partir do valor 0 e terá um incremento de 1 por
linha.
Para configurar o comportamento desta etapa, selecione a opção Personalizar e
configure dois parâmetros:
Para o exemplo neste artigo, comece com a tabela a seguir que tem apenas uma coluna,
mas observe o padrão de dados na coluna.
Digamos que sua meta seja transformar essa tabela de acordo com a imagem a seguir,
com as colunas Data, Conta e Venda.
Na caixa de diálogo Módulo, insira o número do qual localizar o restante para cada
valor na coluna. Nesse caso, seu padrão se repete a cada três linhas, portanto, você
entrará em 3.
Na caixa de diálogo Divisão de inteiros, insira um número pelo qual dividir cada valor
na coluna. Nesse caso, seu padrão se repete a cada três linhas, portanto, você entrará no
valor 3.
Remova a coluna Índice, pois você não precisa mais dela. Sua tabela agora tem a
aparência da imagem a seguir.
Etapa 4. Dinamizar uma coluna
Sua tabela tem três colunas em que:
Para alcançar a tabela desejada, você precisa dinamizar a coluna Módulo usando os
valores da Coluna1 em que esses valores não são agregados. Na guia Transformar,
selecione a coluna Módulo e Dinamizar coluna no grupo Qualquer coluna. Na caixa de
diálogo Dinamizar coluna, selecione o botão de opção Avançado. Verifique se a coluna
Valor está definida como Coluna1 e Agregar função de valores está definido como Não
agregar.
Mais informações: Dinamizar colunas
O resultado dessa operação será uma tabela com quatro colunas, conforme mostrado
na imagem a seguir.
Depois de definir os tipos de dados corretos para as colunas, você criará uma tabela
semelhante à tabela a seguir, exatamente com as três colunas necessárias e a forma que
você estava procurando.
Adicionar uma coluna personalizada
Artigo • 23/03/2023
Se você precisar de mais flexibilidade para adicionar novas colunas além daquelas que
são fornecidas prontas para usar no Power Query, você poderá criar sua própria coluna
personalizada usando a linguagem de fórmula M do Power Query.
Imagine que você tem uma tabela com o seguinte conjunto de colunas.
Usando as colunas Unidades, Preço Unitário e Desconto, você gostaria de criar duas
novas colunas:
A meta é criar uma tabela com novas colunas que contenham o total de vendas antes
do desconto e o total de vendas após o desconto.
O nome inicial da coluna personalizada na caixa Nome da nova coluna. Você pode
renomear essa coluna.
Um menu suspenso em que você pode selecionar o tipo de dados da nova coluna.
Uma caixa de diálogo Fórmula da coluna personalizada na qual você pode inserir
uma Fórmula da M do Power Query.
Para adicionar uma nova coluna personalizada, selecione uma coluna na lista de
Colunas disponíveis. Em seguida, selecione o botão Inserir coluna abaixo da lista para
adicioná-la à fórmula da coluna personalizada. Adicione também uma coluna
selecionando-a na lista. Como alternativa, você pode escrever sua própria fórmula
usando a linguagem de fórmula M do Power Query na Fórmula de coluna
personalizada.
7 Observação
O resultado dessa operação adiciona uma coluna Total de Vendas antes do Desconto à
sua tabela.
7 Observação
Se você estiver usando o Power Query Desktop, observará que o campo Tipo de
dados não está disponível na Coluna personalizada. Isso significa que você
precisará definir um tipo de dados para qualquer coluna personalizada depois de
criar as colunas. Para mais informações: Tipos de dados no Power Query
O resultado dessa operação adiciona uma coluna Total de Vendas após o Desconto à
sua tabela.
Modificar uma coluna personalizada existente
O Power Query adiciona a coluna personalizada à tabela e adiciona a etapa
Personalização adicionada à lista Etapas aplicadas em Configurações de consulta.
7 Observação
Próximas etapas
Você pode criar uma coluna personalizada de outras formas, como a criação de
uma coluna com base nos exemplos fornecidos ao Editor do Power Query. Para
mais informações: Adicionar uma coluna de um exemplo
Para obter informações de referência da linguagem M do Power Query, acesse
Referência de função da M do Power Query.
Adicionar uma coluna condicional
Artigo • 23/03/2023
Com Power Query, você pode criar novas colunas cujos valores serão baseados em uma
ou mais condições aplicadas a outras colunas em sua tabela.
Nesta tabela, há um campo que fornece o CustomerGroup. Você também tem preços
diferentes aplicáveis a esse cliente nos campos Preço da Camada 1, Preço da Camada 2
e Preço da Camada 3. Neste exemplo, sua meta é criar uma nova coluna com o nome
Preço Final com base no valor encontrado no campo CustomerGroup. Se o valor no
campo CustomerGroup for igual a 1, você vai usar o valor do campo Preço da Camada
1; caso contrário, você vai usar o valor do preço da Camada 3.
3. Cláusula “Final Else”: se nenhuma das cláusulas acima produzir um teste positivo,
a saída dessa operação será definida aqui, como um valor inserido manualmente
ou um valor de uma coluna. Nesse caso, a saída será o valor da coluna Preço da
Camada 3.
O resultado dessa operação será uma nova coluna chamada Preço Final.
7 Observação
Novas colunas condicionais não terão um tipo de dados definido. Você pode
adicionar uma nova etapa para definir um tipo de dados para essa coluna recém-
criada seguindo as etapas descritas em tipos de dados no Power Query.
7 Observação
No final de cada cláusula, você pode selecionar o botão de reticências (...) para
excluir, mover para cima ou mover para baixo a cláusula.
O comando Classificar coluna adiciona uma nova coluna a uma tabela com a
classificação definida por uma ou mais colunas da tabela. Uma opção do Método de
classificação pode ser usada para definir como os empates devem ser tratados.
7 Observação
A 20 0.5
B 30 0.8
C 40 0,2
D 10 0,45
E 20 0,75
As equipes compartilharam uma lista de maneiras pelas quais desejam classificar umas
às outras:
Usando somente os valores do campo Total de Pontos, em que os valores mais
altos têm classificação mais alta usando a competição padrão como o método de
classificação
Usando somente os valores do campo Total de Pontos, em que os valores mais
altos têm classificação mais alta usando denso como o método de classificação
Classificação primeiro pelo Total de Pontos e depois pelo Modificador de bônus, em
que os valores mais altos têm classificação mais alta usando a competição padrão
como método de classificação
Classificar coluna.
2. A caixa de diálogo de classificação aparece com sua seção avançada aberta, com
ambos os campos selecionados na coluna Classificar por. Total de pontos está na
primeira linha e Modificador de bônus está abaixo dela. Ambas as linhas usam o
Critério de classificação de Valor mais alto tem classificação mais alta.
4. Depois de verificar os pontos acima, selecione OK. Essa ação fornecerá a você uma
nova etapa com a coluna Rank adicionada.
Métodos de classificação
Um método de classificação estabelece a estratégia na qual os empates são
manipulados pelo algoritmo de classificação. Essa opção só está disponível na seção
avançada da caixa de diálogo Classificação.
A tabela a seguir lista todos os três métodos de classificação disponíveis e fornece uma
descrição para cada um.
Método de Descrição
classificação
Ordinal Todos os itens recebem números ordinais distintos, incluindo itens que se
comparam igualmente. Por exemplo, 1234.
Valores do cluster
Artigo • 23/03/2023
Considere uma tabela de exemplo com uma coluna de ID que contém um conjunto de
IDs e uma coluna Pessoa contendo um conjunto de versões ortográficas e maiúsculas
dos nomes Miguel, Mike, William e Bill.
Neste exemplo, o resultado que você está procurando é uma tabela com uma nova
coluna que mostra os grupos corretos de valores da coluna Pessoa e não todas as
diferentes variações das mesmas palavras.
7 Observação
O recurso valores de cluster está disponível apenas para o Power Query Online.
Na caixa de diálogo Valores do Cluster, confirme a coluna da qual você deseja usar para
criar os clusters e insira o novo nome da coluna. Para esse caso, nomeie este novo
cluster de colunas.
Para cada cluster de valores, Power Query escolhe a instância mais frequente da
coluna selecionada como a instância "canônica". Se várias instâncias ocorrerem
com a mesma frequência, o Power Query escolherá a primeira.
Para este exemplo, uma nova tabela de transformação com o nome Minha tabela de
transformação é usada para demonstrar como os valores podem ser mapeados. Esta
tabela de transformação tem duas colunas:
) Importante
Usando a consulta criada anteriormente, clique duas vezes na etapa Valores agrupados
e, na caixa de diálogo Valores do Cluster, expanda as opções de Cluster Difuso. Em
Opções de cluster difuso, habilite a opção Mostrar pontuações de similaridade. Para a
tabela Transformação (opcional), selecione a consulta que tem a tabela de
transformação.
Depois de selecionar sua tabela de transformação e habilitar a opção Mostrar
pontuações de similaridade, selecione OK. O resultado dessa operação lhe dará uma
tabela que contém as mesmas colunas de ID e Pessoa que a tabela original, mas
também inclui duas novas colunas à direita chamadas Cluster e
Person_Cluster_Similarity. A coluna Cluster contém as versões corretamente
ortográficas e maiúsculas dos nomes Miguel para versões de Miguel e Mike, e William
para versões de Bill, Billy e William. A coluna Person_Cluster_Similarity contém as
pontuações de similaridade para cada um dos nomes.
Acrescentar consultas
Artigo • 23/03/2023
7 Observação
Quando tabelas que não têm os mesmos cabeçalhos de coluna são acrescentadas,
todos os cabeçalhos de coluna de todas as tabelas são acrescentados à tabela
resultante. Se uma das tabelas acrescentadas não tiver um cabeçalho de coluna
vindo das outras tabelas, a tabela resultante mostrará valores nulos na respectiva
coluna, conforme mostrado na imagem anterior, nas colunas C e D.
7 Observação
Para acrescentar essas tabelas, primeiro selecione a tabela Vendas online. Na guia
Página Inicial, selecione Acrescentar consultas, que criará uma nova etapa na consulta
Online Sales. A tabela Online Sales será a tabela primária. A tabela a ser acrescentada à
tabela primária será Store Sales.
O Power Query executa a operação de acréscimo com base nos nomes dos cabeçalhos
de coluna encontrados em ambas as tabelas e não com base na posição relativa nas
seções de cabeçalhos das respectivas tabelas. A tabela final conterá todas as colunas de
todas as tabelas acrescentadas.
No caso de uma tabela não encontrar as mesmas colunas na outra tabela, valores nulos
aparecerão nas colunas correspondentes, conforme mostrado na coluna Referenciador
da consulta final.
Depois de selecionar OK, uma nova consulta será criada com todas as tabelas
acrescentadas.
Visão geral da combinação de arquivos
Artigo • 23/03/2023
Com o Power Query, você pode combinar vários arquivos que têm o mesmo esquema
em uma única tabela lógica.
Esse recurso é útil quando você deseja combinar todos os arquivos que tem na mesma
pasta. Por exemplo, se você tiver uma pasta que contenha arquivos mensais com todas
as ordens de compra da empresa, poderá combinar esses arquivos para consolidar as
ordens em uma única exibição.
Os arquivos podem vir de várias fontes, como (mas não limitados a):
Pastas locais
Sites do SharePoint
Armazenamento de Blobs do Azure
Azure Data Lake Storage (Gen1 e Gen2)
Ao trabalhar com essas fontes, você observará que elas compartilham o mesmo
esquema de tabela, normalmente chamado de exibição do sistema de arquivos. A
captura de tela a seguir mostra um exemplo da exibição do sistema de arquivos.
7 Observação
Visualização de tabela
caixa de diálogo Combinar arquivos
Saída de arquivos combinados
Visualização de tabela
Quando você se conecta a uma fonte de dados usando qualquer um dos conectores
mencionados anteriormente, uma visualização de tabela é aberta. Se você tiver certeza
de que deseja combinar todos os arquivos na pasta, selecione Combinar no canto
inferior direito da tela.
Como alternativa, você pode selecionar Transformar dados para acessar o Editor do
Power Query e criar um subconjunto da lista de arquivos (por exemplo, usando filtros na
coluna de caminho da pasta para incluir apenas arquivos de uma subpasta específica).
Em seguida, combine arquivos selecionando a coluna que contém os binários na coluna
Conteúdo e selecionando:
Na imagem a seguir, o Power Query detectou que o primeiro arquivo tem uma extensão
de nome de arquivo .csv, portanto, ele usa o conector de Texto/CSV para interpretar o
arquivo.
Saída de arquivos combinados
Depois que o processo Combinar arquivos for concluído, o Power Query executará
automaticamente as seguintes ações:
7 Observação
Você pode modificar as etapas dentro da consulta de exemplo para alterar a função
aplicada a cada binário na consulta. A consulta de exemplo está vinculada à função,
portanto, todas as alterações feitas na consulta de exemplo serão refletidas na
consulta de função.
Confira também
Combinar arquivos CSV
Combinar arquivos CSV
Artigo • 23/03/2023
No Power Query, você pode combinar vários arquivos de uma determinada fonte de
dados. Este artigo descreve como a experiência funciona quando os arquivos que você
deseja combinar são arquivos CSV. Mais informações: Visão geral da combinação de
arquivos
Dica
Para simplificar, o exemplo neste artigo usa o conector Pasta. Mais informações: Pasta
Há 12 arquivos CSV, um para cada mês do ano civil de 2019. A imagem a seguir mostra
as primeiras 15 linhas do arquivo para o mês de janeiro.
O número de linhas varia de arquivo para arquivo, mas todos os arquivos têm uma
seção de cabeçalho nas quatro primeiras linhas. Eles têm cabeçalhos de coluna na
quinta linha, e os dados da tabela começam na sexta linha e continuam em todas as
linhas subsequentes.
A meta é combinar todos os 12 arquivos em uma única tabela. Essa tabela combinada
contém a linha de cabeçalho na parte superior da tabela e inclui o nome de origem,
data, país, unidades e dados de receita para o ano inteiro em colunas separadas após a
linha de cabeçalho.
Visualização de tabela
Ao se conectar à pasta que hospeda os arquivos que você deseja combinar, neste
exemplo, o nome dessa pasta é Arquivos CSV, aparece caixa de diálogo a visualização
da tabela, que exibe o caminho da pasta no canto superior esquerdo. A visualização de
dados mostra a exibição do sistema de arquivos.
7 Observação
Em uma situação diferente, você pode selecionar Transformar dados para filtrar e
transformar seus dados antes de combinar os arquivos. Selecionar Combinar só é
recomendado quando você tem certeza de que a pasta contém apenas os arquivos
que você deseja combinar.
7 Observação
O Power Query detecta automaticamente qual conector usar com base no primeiro
arquivo encontrado na lista. Para saber mais sobre o conector CSV, acesse
Texto/CSV.
Para este exemplo, deixe todas as configurações padrão (exemplo de arquivo definido
como Primeiro arquivo e os valores padrão para a origem do arquivo, delimitador e
detecção de tipo de dados).
Agora selecione Transformar dados no canto inferior direito para ir para a consulta de
saída.
Consulta de saída
Depois de selecionar Transformar dados na caixa de diálogo Combinar arquivos, você
será levado de volta para o Editor do Power Query na consulta que você criou
inicialmente a partir da conexão com a pasta local. A consulta de saída agora contém o
nome do arquivo de origem na coluna mais à esquerda, juntamente com os dados de
cada um dos arquivos de origem nas colunas restantes.
No entanto, os dados não estão na forma correta. Você precisa remover as quatro
principais linhas de cada arquivo antes de combiná-las. Para fazer essa alteração em
cada arquivo antes de combiná-los, selecione a consulta arquivo de exemplo de
transformação no painel Consultas no lado esquerdo da tela.
1. Remova as linhas superiores: para executar essa operação, selecione o menu ícone
de tabela no canto superior esquerdo da tabela e selecione Remover linhas
superiores.
Na caixa de diálogo Remover Linhas Superiores, digite 4 e, em seguida, selecione
OK.
Depois de selecionar OK, sua tabela não terá mais as quatro primeiras linhas.
No entanto, observe que nenhuma das colunas derivadas dos arquivos (Data, País,
Unidades, Receita) tem um tipo de dados específico atribuído a eles. Atribua o tipo de
dados correto a cada coluna usando a tabela a seguir.
Nome da coluna Tipo de dados
Data Data
País Texto
Receita Moeda
Depois de definir os tipos de dados para cada coluna, você estará pronto para carregar
a tabela.
7 Observação
Para saber como definir ou alterar tipos de dados de coluna, acesse Tipos de
dados.
Verificação
Para validar se todos os arquivos foram combinados, você pode selecionar o ícone de
filtro no título da coluna Source.Name, que exibirá todos os nomes dos arquivos que
foram combinados. Se você receber o aviso "A lista pode estar incompleta", selecione
Carregar mais na parte inferior do menu para exibir mais valores disponíveis na coluna.
Depois de selecionar Carregar mais, todos os nomes de arquivo disponíveis serão
exibidos.
Visão geral das consultas de mesclagem
Artigo • 27/05/2023
Uma operação de consultas de mesclagem une duas tabelas existentes com base em
valores correspondentes de uma ou várias colunas. Você pode optar por usar diferentes
tipos de junções, dependendo da saída desejada.
Mesclar consultas
O comando Mesclar consultas está na guia Página Inicial, no grupo Combinar. No
menu suspenso, há duas opções:
Tabela esquerda para mesclagem: a primeira seleção, de cima para baixo na tela.
Tabela direita para mesclagem: a segunda seleção, de cima para baixo na tela.
7 Observação
7 Observação
Embora este exemplo mostre o mesmo cabeçalho de coluna para ambas as tabelas,
isso não é um requisito para a operação de mesclagem. Os cabeçalhos de coluna
não precisam corresponder entre tabelas. No entanto, é importante observar que
as colunas devem ser do mesmo tipo de dados; caso contrário, a operação de
mesclagem talvez não produza resultados corretos.
Você também pode selecionar várias colunas para executar a junção selecionando Ctrl
ao especificar as colunas. Quando você faz isso, a ordem na qual as colunas foram
selecionadas é exibida em números pequenos ao lado dos títulos de coluna, começando
com 1.
Para este exemplo, você tem as tabelas Vendas e Países. Cada uma das tabelas tem as
colunas ID do País e ID do Estado, que você precisa emparelhar para a junção entre as
duas colunas.
Pode haver muitas sugestões em vigor, mas, para esse cenário, há apenas uma sugestão
do recurso, em que ele mapeia a coluna CountryID da tabela Sales para a coluna
CountryID da tabela Countries. Você pode selecioná-lo e o mapeamento de par de
colunas será aplicado automaticamente à caixa de diálogo.
7 Observação
A partir daqui, você pode optar por expandir ou agregar os campos desta nova coluna
de tabela, que serão os campos da tabela direita.
7 Observação
Tipos de junção
Um tipo de junção especifica como uma operação de mesclagem será executada. A
tabela a seguir descreve os tipos de junção disponíveis no Power Query.
Correspondência difusa
Use a mesclagem difusa para aplicar algoritmos de correspondência difusa ao comparar
colunas, para tentar encontrar correspondências entre as tabelas que você está
mesclando. Para habilitar esse recurso, marque a caixa de seleção Usar correspondência
difusa para executar a mesclagem na caixa de diálogo Mesclar. Expanda Opções de
correspondência difusa para exibir todas as configurações disponíveis.
7 Observação
Este artigo usa dados de exemplo para mostrar como fazer uma operação de
mesclagem com a junção externa esquerda. As tabelas de origem de exemplo para este
exemplo são:
Sales: esta tabela inclui os campos Date, CountryID e Units. CountryID é um valor
numérico inteiro que representa o identificador exclusivo da tabela Countries.
CountryID id
O objetivo é criar uma tabela como a seguir, em que o nome do país aparece como uma
nova coluna Country na tabela Sales, desde que a CountryID exista na tabela Countries.
Se não houver correspondências entre as tabelas à esquerda e à direita, o valor nulo
será o resultado da mesclagem dessa linha. Na imagem a seguir, este é o caso do
CountryID 4, que foi trazido da tabela Sales.
Este artigo usa dados de exemplo para mostrar como fazer uma operação de
mesclagem com a junção externa direita. As tabelas de origem de exemplo para este
exemplo são:
Sales: esta tabela inclui os campos Date, CountryID e Units. CountryID é um valor
numérico inteiro que representa o identificador exclusivo da tabelaCountries.
CountryID id
O objetivo é criar uma tabela como a seguinte, onde o nome do país/região aparece
como uma nova coluna País na tabela Vendas. Devido à forma como a junção externa
direita funciona, todas as linhas da tabela direita serão trazidas, mas somente as linhas
correspondentes da tabela esquerda serão mantidas.
Um dos tipos de junção disponíveis na caixa de diálogo Mesclar no Power Query é uma
junção interna total, que traz todas as linhas das tabelas à esquerda e à direita. Para
mais informações, consulte: Visão geral das operações de mesclar
Este artigo usa dados de exemplo para mostrar como fazer uma operação de
mesclagem com a junção externa completa. As tabelas de origem de exemplo para este
exemplo são:
Sales: esta tabela inclui os campos Date, CountryID e Units. CountryID é um valor
numérico inteiro que representa o identificador exclusivo da tabela Countries.
CountryID id
A meta é criar uma tabela como a seguinte, em que o nome do país aparece como uma
nova coluna Country na tabela Sales. Devido à forma como a junção externa completa
funciona, todas as linhas das tabelas esquerda e direita serão trazidas,
independentemente de elas aparecerem apenas em uma das tabelas.
Dica
Analise com atenção a mensagem na parte inferior da caixa de diálogo que diz: "A
seleção corresponde a 4 de 4 linhas da primeira tabela e a 3 de 4 linhas da segunda
tabela". Essa mensagem é crucial para entender o resultado obtido nessa operação.
Na tabela Countries, existe o Country Espanha com uma id de 4, mas não há registros
para CountryID 4 na tabela Sales. É por isso que apenas três das quatro linhas da tabela
direita encontraram uma correspondência. Todas as linhas da tabela direita que não
tinham linhas correspondentes da tabela esquerda serão agrupadas e mostradas em
uma nova linha na tabela de saída sem valores para os campos da tabela esquerda.
Depois de executar essa operação, você terá criado uma tabela semelhante à imagem a
seguir.
Junção interna
Artigo • 23/03/2023
Um dos tipos de junção disponíveis na caixa de diálogo Mesclar no Power Query é uma
junção interna, que traz apenas as linhas correspondentes das tabelas à esquerda e à
direita. Para mais informações: Visão geral das operações de mesclar
Este artigo usa dados de exemplo para mostrar como fazer uma operação de
mesclagem com a junção interna. As tabelas de origem de exemplo para este exemplo
são:
Sales: esta tabela inclui os campos Date, CountryID e Units. CountryID é um valor
numérico inteiro que representa o identificador exclusivo da tabela Countries.
CountryID id
A meta é criar uma tabela como a seguinte, em que o nome do país aparece como uma
nova coluna Country na tabela Sales. Devido ao funcionamento da junção interna,
somente as linhas correspondentes das tabelas à esquerda e à direita serão trazidas.
Analise com atenção a mensagem na parte inferior da caixa de diálogo que diz: "A
seleção corresponde a 1 de 4 linhas da primeira tabela e a 1 de 2 linhas da segunda
tabela". Essa mensagem é crucial para entender o resultado obtido nessa operação.
Na tabela Countries, existe o Country Espanha com a id 4, mas não há registros para
CountryID 4 na tabela Sales. É por isso que apenas uma das duas linhas da tabela à
direita (segunda) encontrou uma correspondência.
Na coluna Countries recém-criada, expanda o campo Country. Não marque a seleção
Usar nome da coluna original como prefixo.
Depois de executar essa operação, você criará uma tabela semelhante à imagem a
seguir.
Antijunção esquerda
Artigo • 05/10/2023
Este artigo usa dados de exemplo para mostrar como fazer uma operação de
mesclagem com a junção anti-junção esquerda. As tabelas de origem de exemplo para
este exemplo são:
Sales: esta tabela inclui os campos Date, CountryID e Units. CountryID é um valor
numérico inteiro que representa o identificador exclusivo da tabela Countries.
CountryID id
O objetivo é criar uma tabela como a seguinte, em que somente as linhas da tabela
esquerda que não correspondem a nenhuma linha da tabela direita serão mantidas.
Analise com atenção a mensagem na parte inferior da caixa de diálogo que diz: "A
seleção exclui 1 de 4 linhas da primeira tabela". Essa mensagem é crucial para
entender o resultado obtido nessa operação.
Na tabela Countries, existe o Country Espanha com uma id de 4, mas não há registros
para CountryID 4 na tabela Sales. É por isso que apenas uma das duas linhas da tabela
à direita (segunda) encontrou uma correspondência.
Na coluna Countries recém-criada, expanda o campo Country. Não marque a caixa de
seleção Usar nome da coluna original como prefixo.
Depois de fazer essa operação, você criará uma tabela semelhante à imagem a seguir. O
campo Country recém-expandido não tem valores. Isso ocorre porque a antijunção
esquerda não traz nenhum valor da tabela à direita, apenas mantém as linhas da tabela
à esquerda.
Antijunção direita
Artigo • 23/03/2023
Este artigo usa dados de exemplo para mostrar como fazer uma operação de mesclar
com a antijunção direita. Neste exemplo, as amostras das tabelas de origem são:
Sales: esta tabela inclui os campos Date, CountryID e Units. CountryID é um valor
numérico inteiro que representa o identificador exclusivo da tabela Countries.
CountryID id
O objetivo é criar uma tabela como a seguinte, em que somente as linhas da tabela
direita que não correspondem a nenhuma linha da tabela esquerda serão mantidas.
Sendo um caso de uso comum, você pode encontrar todas as linhas que estão
disponíveis na tabela à direita, mas que não são encontradas na tabela à esquerda.
Analise com atenção a mensagem na parte inferior da caixa de diálogo que diz: "A
seleção exclui 1 de 2 linhas da segunda tabela". Essa mensagem é crucial para
entender o resultado obtido nessa operação.
Na tabela Countries, existe o Country Espanha com uma id de 4, mas não há registros
para CountryID 4 na tabela Sales. É por essa razão que apenas uma das duas linhas da
tabela à direita (segunda) encontrou uma correspondência. Devido à forma como a
antijunção direita funciona, você nunca verá nenhuma linha da tabela à esquerda
(primeira) no resultado dessa operação.
Na coluna Countries recém-criada, expanda o campo Country. Não marque a seleção
Usar nome da coluna original como prefixo.
Depois de executar essa operação, você terá criado uma tabela semelhante à imagem a
seguir. O campo Country recém-expandido não tem valores. Isso ocorre porque a
antijunção direita não traz nenhum valor da tabela à esquerda, apenas mantém as linhas
da tabela à direita.
Mesclagem difusa
Artigo • 23/03/2023
7 Observação
Cenário de exemplo
Um caso de uso comum para correspondência difusa é com campos de texto de forma
livre, como em uma pesquisa. Neste artigo, a tabela de exemplo foi tirada diretamente
de uma pesquisa online enviada a um grupo com apenas uma pergunta: Qual é a sua
fruta favorita?
Para ajudar a padronizar esses valores, neste exemplo, você tem uma tabela de
referência Frutas.
7 Observação
Para simplificar, essa tabela de referência Frutas inclui apenas o nome das frutas
que serão necessárias nesse cenário. Sua tabela de referência pode ter quantas
linhas você precisar.
O objetivo é criar uma tabela como a seguinte, em que você tenha padronizado todos
esses valores para que possa fazer mais análises.
Tabela de transformação
Para o exemplo deste artigo, você pode usar uma tabela de transformação para mapear
o valor que tem um par ausente. Esse valor é maca, que precisa ser mapeado para
Maçã. Sua tabela de transformação tem duas colunas:
De Para
maca Apple
A junção cruzada é um tipo de junção que retorna o produto cartesiano das linhas das
tabelas na junção. Em outras palavras, ela combina cada linha da primeira tabela com
cada linha da segunda tabela.
Este artigo demonstra, com um exemplo prático, como fazer uma junção cruzada no
Power Query.
Colors: tabela com todas as variações do produto, como cores, que se pode ter no
estoque.
O objetivo é executar uma operação de junção cruzada com essas duas tabelas para
criar uma lista de todos os produtos exclusivos que se pode ter no estoque, conforme
mostrado na tabela a seguir. Essa operação é necessária porque a tabela Product
contém apenas o nome genérico do produto e não fornece o nível de detalhes
necessário para ver quais variações de produto (como cor) existem.
Executar uma junção cruzada
Para fazer uma operação de junção cruzada no Power Query, primeiro acesse a tabela
Product. Na guia Adicionar coluna da faixa de opções, selecione Personalizar coluna.
Para mais informações, consulte: Adicionar uma coluna personalizada
Na caixa de diálogo Personalizar coluna, insira um nome desejado na caixa Novo nome
de coluna e insira Colors na caixa Fórmula da coluna personalizada.
) Importante
Se o nome da consulta tiver espaços, como Cores do produto, o texto que você
deve inserir na seção Fórmula da coluna personalizada precisará seguir a sintaxe
#"Query name" . Para Cores do Produto, você precisa inserir #"Product Colors" .
Depois de selecionar OK na caixa de diálogo Personalizar coluna, uma nova coluna será
adicionada à tabela. No novo título da coluna, selecione Expandir para expandir o
conteúdo dessa coluna recém-criada e selecione OK.
Depois de selecionar OK, você atingirá o objetivo de criar uma tabela com todas as
combinações possíveis de Product e Colors.
Dividir coluna por delimitador
Artigo • 23/03/2023
No Power Query, é possível dividir uma coluna usando métodos diferentes. Nesse caso,
as colunas selecionadas podem ser divididas por um delimitador.
Clique com o botão direito do mouse em uma coluna - dentro da opção Dividir
coluna.
Dividir colunas por delimitador em colunas
Neste exemplo, a tabela inicial será a mostrada na imagem abaixo, com apenas a coluna
Accounts.
Esta coluna contém dois valores:
Número da conta
Nome da conta
Neste exemplo, dividiremos essa coluna em duas colunas. Os valores estão delimitados
por um espaço, o primeiro espaço da esquerda para a direita. Para fazer essa divisão,
selecione a coluna e a opção para dividir a coluna por um delimitador. Em Dividir
coluna por delimitador, aplique a seguinte configuração:
7 Observação
A coluna Accounts tem valores em pares, separados por uma vírgula. Esses pares são
separados por ponto e vírgula (;). O objetivo deste exemplo é dividir essa coluna em
novas linhas usando o ponto e vírgula como delimitador.
Para fazer essa divisão, selecione a coluna Accounts. Selecione a opção para dividir a
coluna por delimitador. Em Dividir coluna por delimitador, aplique a seguinte
configuração:
Divisão final
A tabela ainda precisa de uma última operação de dividir coluna. Você precisa dividir a
coluna Accounts na primeira vírgula encontrada. Essa divisão criará uma coluna para o
nome da conta e outra para o número da conta.
Para fazer essa divisão, selecione a coluna Accounts e clique em Dividir coluna > por
delimitador. Dentro da janela Dividir coluna, aplique a seguinte configuração:
Selecionar ou inserir delimitador: vírgula
Dividir no: cada ocorrência do delimitador
O resultado dessa operação será uma tabela com duas colunas, conforme esperado.
Renomeie as colunas da seguinte maneira:
No Power Query, é possível dividir uma coluna usando métodos diferentes. Nesse caso,
as colunas selecionadas podem ser divididas pelo número de caracteres.
Guia Página Inicial – menu suspenso Dividir coluna, dentro do grupo Transformar.
Clique com o botão direito do mouse em uma coluna - dentro da opção Dividir
coluna.
Dividir colunas em colunas por número de
caracteres
A tabela inicial para este exemplo será a mostrada abaixo, com apenas a coluna
Column1.
Neste exemplo, dividiremos essa coluna em três colunas, contendo os valores descritos
na lista acima.
Para fazer essa divisão, selecione a coluna e selecione a opção para dividir a coluna pelo
número de caracteres. Em Dividir coluna por número de caracteres, aplique a seguinte
configuração:
Número de caracteres: 6
Dividir: uma vez, o mais à esquerda possível
O resultado dessa operação será uma tabela com duas colunas. Uma com o nome da
conta e a outra contendo os valores combinados para a data e as unidades.
7 Observação
O Power Query dividirá a coluna em apenas duas colunas. O nome das novas
colunas conterá os mesmos nomes das colunas originais. Um sufixo contendo um
ponto e um número que representa a seção dividida da coluna será acrescentado
aos nomes das novas colunas.
Agora, continue fazendo a mesma operação na nova coluna Column1.2, mas com a
seguinte configuração:
Número de caracteres: 8
Dividir: uma vez, o mais à esquerda possível
O resultado dessa operação produzirá uma tabela com três colunas. Observe os novos
nomes das duas colunas na extrema direita. Column1.2.1 e Column1.2.2 foram criadas
automaticamente pela operação de divisão de coluna.
Agora, você pode alterar o nome das colunas e também definir os tipos de dados de
cada coluna da seguinte maneira:
A coluna Account pode conter vários valores na mesma célula. Cada valor tem o mesmo
comprimento em caracteres, com um total de seis caracteres. Neste exemplo,
dividiremos esses valores para que cada linha contenha seu respectivo valor.
Para fazer essa divisão, selecione a coluna Account e selecione a opção para dividir a
coluna pelo número de caracteres. Em Dividir coluna por número de caracteres,
aplique a seguinte configuração:
Número de caracteres: 6
Divisão: repetidamente
Dividir em: linhas
O resultado dessa operação produzirá uma tabela com o mesmo número de colunas,
mas muito mais linhas, pois os segmentos dentro dos valores das células originais na
coluna Account estarão divididos em várias linhas.
Dividir coluna por posições
Artigo • 23/03/2023
No Power Query, é possível dividir uma coluna usando métodos diferentes. Nesse caso,
as colunas selecionadas podem ser divididas por posições.
Guia Página Inicial – menu suspenso Dividir coluna, dentro do grupo Transformar.
Clique com o botão direito do mouse em uma coluna - dentro da opção Dividir
coluna.
Dividir colunas por posições em colunas
A tabela inicial será a mostrada na imagem abaixo, com apenas a coluna Column1.
Neste exemplo, você vai dividir essa coluna nas três colunas feitas com base nos valores
na lista acima. Para fazer essa divisão, selecione a coluna e selecione a opção para
dividir a coluna por posições. Em Dividir coluna por posição, aplique a seguinte
configuração:
Posições: 0,6,14
As posições são baseadas em zero e separadas por vírgula, onde a posição zero
é o início da cadeia de caracteres.
7 Observação
O resultado dessa operação lhe dará uma tabela com três colunas.
7 Observação
O Power Query dividirá a coluna em apenas duas colunas. O nome das novas
colunas conterá os mesmos nomes das colunas originais. Um sufixo criado por um
ponto e um número que representa a seção dividida da coluna será acrescentado
ao nome das novas colunas.
Agora, você pode alterar o nome das colunas e também definir os tipos de dados de
cada coluna da seguinte maneira:
A coluna Conta só pode conter dois valores na mesma célula. Cada valor tem o mesmo
comprimento em caracteres, com um total de seis caracteres. Neste exemplo,
dividiremos esses valores para que cada linha contenha seu respectivo valor. Para fazer
isso, selecione a coluna Conta e selecione a opção para dividir a coluna por posições.
Em Dividir coluna por posição, aplique a seguinte configuração:
Posições: 0, 6
Dividir em: linhas
7 Observação
Essa operação começará a criar uma coluna da posição 0 para a posição 6. Haverá
outra coluna caso haja valores com um comprimento de 8 ou mais caracteres no
conteúdo de visualização de dados atual.
O resultado dessa operação lhe dará uma tabela com o mesmo número de colunas, mas
muito mais linhas porque os valores dentro das células agora estão em suas próprias
células.
Dividir colunas por letra minúscula a
letra maiúscula
Artigo • 05/10/2023
No Power Query, você pode dividir uma coluna usando métodos diferentes. Se seus
dados contiverem texto CamelCased ou um padrão semelhante, as colunas selecionadas
poderão ser divididas facilmente em cada instância da última letra minúscula até a
próxima letra maiúscula.
Guia Página Inicial – menu suspenso Dividir coluna, dentro do grupo Transformar.
Clique com o botão direito do mouse em uma coluna – dentro da opção Dividir
Coluna.
Dividir colunas por minúsculas a maiúsculas em
colunas
A tabela inicial deste exemplo será a mostrada na imagem abaixo, com uma coluna para
Palavra e uma coluna extra chamada Sílabas. Você só se concentrará na primeira coluna.
Esta única coluna será dividida em várias colunas, considerando cada instância da última
letra minúscula até a próxima letra maiúscula. Nesse caso, ela é dividida em apenas duas
colunas.
No Power Query, é possível dividir uma coluna usando métodos diferentes. Nesse caso,
as colunas selecionadas podem ser divididas por cada instância da última letra
maiúscula para a próxima letra minúscula.
Guia Página Inicial – menu suspenso Dividir coluna, dentro do grupo Transformar.
Clique com o botão direito do mouse em uma coluna – dentro da opção Dividir
coluna.
Dividir colunas por maiúsculas para minúsculas
em colunas
A tabela inicial será a mostrada na imagem abaixo, com apenas a coluna Column1.
Neste exemplo, você deve dividir essa coluna nas duas colunas descritas na lista acima.
Selecione a coluna e selecione a opção para dividir a coluna por maiúsculas e
minúsculas.
Essa única coluna será dividida em várias colunas, considerando cada instância da última
letra maiúscula para a próxima letra minúscula. Nesse caso, ela é dividida em apenas
duas colunas.
No Power Query, você pode dividir uma coluna usando métodos diferentes. Nesse caso,
as colunas selecionadas podem ser divididas por cada instância de um dígito seguido
por um não dígito.
Guia Página Inicial – menu suspenso Dividir coluna, dentro do grupo Transformar.
Clique com o botão direito do mouse em uma coluna – dentro da opção Dividir
Coluna.
Dividir colunas por dígito a não dígito em
colunas
A tabela inicial neste exemplo será a mostrada na imagem abaixo, com uma coluna para
Animais de estimação e outras colunas adicionais. Este exemplo se concentrará apenas
na coluna Animais de estimação.
Essa coluna única será dividida em várias colunas, concedendo à cada instância um
dígito com um não dígito. Nesse caso, ela se divide apenas em duas.
No Power Query, você pode dividir uma coluna usando métodos diferentes. Nesse caso,
as colunas selecionadas podem ser divididas por cada instância de um não dígito
seguido por um dígito.
Guia Página Inicial – menu suspenso Dividir coluna, dentro do grupo Transformar.
Clique com o botão direito do mouse em uma coluna - dentro da opção Dividir
coluna.
Dividir colunas por não dígito para dígito em
colunas
A tabela inicial neste exemplo será a mostrada na imagem abaixo, com uma coluna para
Animais de estimação e outras colunas adicionais. Neste exemplo, você se concentrará
apenas na coluna Animais de estimação.
Essa coluna única será dividida em várias colunas, concedendo à cada instância, um
dígito seguido por um não dígito. Nesse caso, ela é dividida em apenas duas colunas.
Dica
Por exemplo, os aplicativos Power BI, Power Apps, Power Automate, Power Virtual
Agents e Dynamics 365 podem obter os dados produzidos pelo fluxo de dados
conectando-se ao Dataverse, a um conector de fluxo de dados do Power Platform ou
diretamente pelo lake, de acordo com o destino configurado no momento da criação
do fluxo de dados.
Você tem várias opções para começar a trabalhar com os fluxos de dados, usando
as licenças do Power Apps, do Power BI e do Customer Insights.
Os fluxos de dados criados no Power BI são sempre fluxos de dados analíticos. Os fluxos
de dados criados no Power Apps podem ser padrão ou analíticos, dependendo da
seleção ao criar o fluxo de dados.
Você pode criar fluxos de dados analíticos no Power BI. Por padrão, eles carregarão
dados no armazenamento gerenciado do Power BI. Mas, você também pode configurar
o Power BI para armazenar os dados no Azure Data Lake Storage da organização.
Você também pode criar fluxos de dados analíticos nos portais de insights de clientes
do Power Apps e do Dynamics 365. Ao criar um fluxo de dados no portal do Power
Apps, você pode escolher entre o armazenamento analítico gerenciado do Dataverse ou
a conta do Azure Data Lake Storage da sua organização.
Integração de IA
Às vezes, dependendo do requisito, talvez seja necessário aplicar algumas funções de IA
e machine learning nos dados por meio do fluxo de dados. Essas funcionalidades estão
disponíveis em fluxos de dados do Power BI e exigem um workspace Premium.
Observe que os recursos listados acima são específicos do Power BI e não estão
disponíveis ao criar um fluxo de dados nos portais de insights de clientes do Power
Apps ou do Dynamics 365.
Tabelas computadas
Um dos motivos para usar uma tabela computada é a capacidade de processar grandes
quantidades de dados. A tabela computada ajuda nesses cenários. Se você tiver uma
tabela em um fluxo de dados e outra tabela no mesmo fluxo de dados usar a saída da
primeira tabela, essa ação criará uma tabela computada.
Para saber mais sobre tabelas computadas, acesse Criando tabelas computadas em
fluxos de dados.
Funções de IA No Yes
Pode ser usado Sim, por meio do Dataverse Fluxos de dados do Power BI: somente no
em outros Power BI
aplicativos Fluxos de dados do Power Platform ou fluxos
de dados externos do Power BI: sim, por meio
do Azure Data Lake Storage
No mundo dos dados em constante expansão, a preparação de dados pode ser difícil e
cara. Ele pode consumir de 60 a 80% do tempo e do custo de um projeto de análise
típico. Esses projetos podem exigir estruturação de dados fragmentados e incompletos,
integração complexa do sistema, dados com inconsistência estrutural e uma barreira de
conjunto de habilidades alta.
Para facilitar a preparação de dados e ajudar você a obter mais valor dos dados, os
fluxos de dados do Power Query e do Power Platform foram criados.
O Azure Data Lake Storage permite que você colabore com pessoas em sua
organização usando o Power BI, Dados do Azure e serviços de IA ou usando
aplicativos de linha de negócios personalizados que leem dados no lake. Fluxos
de dados que carregam dados em uma conta do Azure Data Lake Storage
armazenam dados em pastas do Common Data Model. As pastas do Common
Data Model contêm dados e metadados esquematizados em um formato
padronizado, para facilitar a troca de dados e permitir a interoperabilidade total
entre serviços que produzem ou consomem dados armazenados na conta do
Azure Data Lake Storage de uma organização como a camada de
armazenamento compartilhado.
Análise Avançada e IA com o Azure: os fluxos de dados do Power Platform
armazenam dados no Dataverse ou Azure Data Lake Storage, o que significa que
os dados ingeridos por meio de fluxos de dados agora estão disponíveis para
engenheiros de dados e cientistas de dados aplicarem todo o poder dos Serviços
de Dados do Azure, como o Azure Machine Learning, o Azure Databricks e o Azure
Synapse Analytics para análise avançada e IA. Isso permite que analistas de
negócios, engenheiros de dados e cientistas de dados colaborem nos mesmos
dados em suas organizações.
Tabelas vinculadas de fluxo de dados Para fluxos de dados com o Azure Yes
Data Lake Storage como destino
Tabelas computadas (transformações Para fluxos de dados com o Azure Somente Power BI
no armazenamento usando M) Data Lake Storage como destino Premium
Atualização incremental do fluxo de Para fluxos de dados com o Azure Somente Power BI
dados Data Lake Storage como destino; Premium
requer o Power Apps Plan2
Limitações conhecidas
Não há suporte para a cópia de fluxos de dados como parte de uma operação de
cópia de ambientes do Power Platform .
Próximas etapas
Mais informações sobre fluxos de dados no Power Apps:
Os artigos a seguir oferecem mais detalhes sobre cenários de uso comuns para fluxos
de dados.
Para obter mais informações sobre o Common Data Model e o padrão da pasta do
Common Data Model, leia os seguintes artigos:
O Microsoft Dataverse para Teams fornece uma plataforma interna de dados de baixo
código para o Microsoft Teams. Ele fornece armazenamento de dados relacional, tipos
de dados avançados, governança de nível empresarial e implantação de solução com
um clique. O Dataverse para Teams permite que todos criem e implantem aplicativos
facilmente.
Antes de hoje, a maneira de obter dados no Dataverse para Teams era adicionando
manualmente dados diretamente em uma tabela. Esse processo pode ser propenso a
erros e não pode ser escalonável. Mas agora, com a preparação de dados de
autoatendimento, você pode encontrar, limpar, formatar e importar seus dados para o
Dataverse para o Teams.
Com seus dados organizacionais já em um local diferente, você pode usar Power Query
fluxos de dados para acessar diretamente seus dados por meio dos conectores e
carregar os dados no Dataverse para Teams. Ao atualizar em seus dados
organizacionais, você pode atualizar seus fluxos de dados com apenas um clique e os
dados no Dataverse para Teams também são atualizados. Você também pode usar as
transformações de dados Power Query para validar e limpar facilmente seus dados e
impor a qualidade dos dados para seus Aplicativos.
7. Limpe e transforme seus dados usando o Power Query. Você pode usar as
transformações prontas para excluir valores ausentes, excluir colunas
desnecessárias ou filtrar seus dados. Com Power Query, você pode aplicar mais de
300 transformações diferentes em seus dados. Para saber mais sobre Power Query
transformações, consulte Usar Power Query para transformar dados. Depois de
terminar de preparar seus dados, selecione Avançar.
8. Em tabelas de mapa, selecione Carregar na nova tabela para criar uma nova
tabela no Dataverse para Teams. Você também pode optar por carregar seus
dados em uma tabela existente. Na tela Tabelas do Mapa , você também pode
especificar uma coluna de nome primário exclusivo e uma coluna de chave
alternativa (opcional). Neste exemplo, deixe essas seleções com os valores padrão.
Para saber mais sobre como mapear seus dados e as diferentes configurações,
consulte considerações de mapeamento de campo para fluxos de dados padrão.
9. Selecione Criar para finalizar seu fluxo de dados. Depois de criar o fluxo de dados,
os dados começam a ser carregados no Dataverse para Teams. Esse processo pode
levar algum tempo e você pode usar a página de gerenciamento para verificar o
status. Quando um fluxo de dados conclui uma execução, seus dados estão
disponíveis para uso.
Na coluna Última Atualização, você pode ver quando os dados foram atualizados pela
última vez. Se a atualização falhar, uma indicação de erro será exibida. Se você
selecionar a indicação de erro, os detalhes do erro e as etapas recomendadas para
resolvê-lo serão exibidos.
Na coluna Status, você pode ver o status atual do fluxo de dados. Os possíveis estados
são:
Para navegar até a barra de ações, selecione os três pontos "..." ao lado do fluxo de
dados.
Aqui, você pode ver:
Excel (OneDrive)
Texto/CSV (OneDrive)
PDF (OneDrive)
Pasta do SharePoint Online
Lista do SharePoint Online
XML (OneDrive)
JSON (OneDrive)
OData
API Web
7 Observação
Os fluxos de dados no Teams não dão suporte a fontes de dados locais, como
locais de arquivo.
Tipo de armazenamento
Um fluxo de dados pode gravar em vários tipos de destino de saída. Em suma, você
deve usar o Conector de fluxos de dados, a não ser que o destino seja uma tabela do
Dataverse. Nesse caso, você usa o Conector Dataverse/CDS.
Ao conectar o data lake, você ainda deverá usar o conector do fluxos de dados. Se o
conector não atender às suas necessidades, você poderá considerar o uso do conector
do Azure Data Lake.
Dataverse
Um fluxo de dados padrão grava os dados de saída em uma tabela do Dataverse. O
Dataverse permite que você armazene e gerencie com segurança os dados que são
usados pelos aplicativos de negócios. Depois de carregar dados na tabela do Dataverse,
você poderá consumi-los usando o conector do Dataverse.
Quando você obtém dados da saída de outro fluxo de dados, uma tabela vinculada é
criada. As tabelas vinculadas fornecem uma maneira de tornar os dados criados em um
fluxo de dados upstream disponíveis em um fluxo de dados downstream, sem copiar os
dados para o fluxo de dados downstream. Como as tabelas vinculadas são apenas
ponteiros para tabelas criadas em outros fluxos de dados, elas são mantidas atualizadas
pela lógica de atualização do fluxo de dados upstream. Se ambos os fluxos de dados
residirem no mesmo workspace ou ambiente, esses fluxos de dados serão atualizados
juntos para manter os dados em ambos os fluxos de dados sempre atualizados. Mais
informações: Vincular tabelas entre fluxos de dados
Perguntas frequentes
Minha tabela de fluxo de dados não aparece no conector de fluxo de dados no Power
BI
Provavelmente você está usando uma tabela do Dataverse como o destino do fluxo de
dados padrão. Use o conector Dataverse/CDS ou considere mudar para um fluxo de
dados analítico.
Há uma diferença nos dados quando removo as duplicidades nos fluxos de dados.
Como posso resolver isso?
Pode haver uma diferença nos dados entre o momento da criação e o momento da
atualização. Não podemos garantir qual instância está sendo mantida durante o tempo
de atualização. Para obter informações que ajudarão você a evitar inconsistências em
seus dados, acesse Trabalhar com valores duplicados.
Próximas etapas
Os artigos a seguir fornecem mais detalhes sobre artigos relacionados.
Quando você inclui seus fluxos de dados em uma solução, suas definições se tornam
portáteis, tornando mais fácil movê-los de um ambiente para outro, economizando
tempo necessário para criar o fluxo de dados.
Os fluxos de dados adicionados a uma solução são conhecidos como fluxos de dados
com reconhecimento de solução . É possível adicionar vários projetos a uma única
solução.
7 Observação
Depois que o fluxo de dados e a tabela para os quais ele carrega os dados são
adicionados à solução, ele tem os dois artefatos adicionados à solução. Nesse
caso, os artefatos são cr0c8_FullOrderDetails e importar dados de vendas.
Para salvar seu trabalho, não deixe de publicar todas as personalizações. Agora, a
solução está pronta para exportar do ambiente de origem e importar para o
ambiente de destino.
2. Na lista fluxo de dados, localize e clique duas vezes no fluxo de dados que foi
adicionado como parte da solução importada.
É isso. Seu fluxo de dados agora atualiza e carrega dados para a tabela de destino.
Limitações conhecidas
Fluxos de dados não podem ser criados de dentro de soluções. Para adicionar um
fluxo de dados a uma solução, siga as etapas descritas neste artigo.
Os fluxos de dados não podem ser editados diretamente de dentro de soluções.
Em vez disso, o fluxo de dados deve ser editado na experiência de fluxos de dados.
Os fluxos de dados não podem usar referências de conexão para nenhum
conector.
Variáveis de ambiente não podem ser usadas por fluxos de dados.
Os fluxos de dados não dão suporte à adição de componentes necessários, como
tabelas personalizadas às quais eles carregam dados. Em vez disso, a tabela
personalizada deve ser adicionada manualmente à solução.
Os fluxos de dados não podem ser implantados por usuários do aplicativo
(entidades de serviço).
Não há suporte para a configuração de atualização incremental ao implantar
soluções. Após a implantação do fluxo de dados por meio da solução, a
configuração de atualização incremental deve ser reaplicada.
Não há suporte para tabelas vinculadas a outros fluxos de dados ao implantar
soluções. Após a implantação do fluxo de dados por meio da solução, edite o fluxo
de dados e edite a conexão com o fluxo de dados vinculado.
Usar a atualização incremental com
fluxos de dados
Artigo • 05/08/2023
Com fluxos de dados, você pode trazer grandes quantidades de dados para o Power BI
ou o armazenamento fornecido pela sua organização. Porém, em alguns casos não é
muito prático atualizar uma cópia completa dos dados de origem em cada atualização.
Uma boa alternativa é a atualização incremental, que oferece os seguintes benefícios
para os fluxos de dados:
A atualização ocorre com mais rapidez: somente os dados alterados precisam ser
atualizados. Por exemplo, atualizar apenas os últimos cinco dias de um fluxo de
dados de 10 anos.
A atualização é mais confiável: por exemplo, não é necessário manter conexões
de execução prolongada com sistemas de origem voláteis.
O consumo de recursos é reduzido: uma quantidade menor de dados para
atualização reduz o consumo geral da memória e de outros recursos.
7 Observação
Depois que o fluxo de dados for criado e salvo, selecione Atualização incremental No
modo de exibição de tabela, conforme mostrado na imagem a seguir.
Neste exemplo, definimos uma política de atualização para armazenar cinco anos
de dados no total e atualizar incrementalmente 10 dias de dados. Supondo que a
tabela seja atualizada diariamente, as seguintes ações são executadas para cada
operação de atualização:
Remover os anos civis com mais de cinco anos antes da data atual. Por exemplo,
se a data atual for 1º de janeiro de 2019, o ano de 2013 será removido.
Dica
O design atual requer que a coluna usada para detectar as alterações nos
dados seja mantida e fique armazenada em cache na memória. É interessante
considerar uma das técnicas a seguir para reduzir a cardinalidade e o
consumo de memória:
Mantenha apenas o valor máximo dessa coluna no momento da
atualização, talvez usando uma função do Power Query.
Reduza a precisão a um nível aceitável, considerando seus requisitos de
frequência de atualização.
7 Observação
A atualização incremental também pode ser invocada por APIs. Nesse caso, a chamada
à API pode ter uma configuração de fuso horário que é usada na atualização. O uso de
APIs pode ser útil para fins de teste e validação.
Detalhes de implementação de atualização
incremental
Os fluxos de dados usam o particionamento para a atualização incremental. A
atualização incremental nos fluxos de dados mantém o número mínimo de partições
para atender aos requisitos da política de atualização. As partições antigas que saem do
intervalo são descartadas, mantendo uma janela rolante. As partições são mescladas
oportunamente, reduzindo o número total de partições necessárias. Isso melhora a
compactação e, em alguns casos, pode melhorar o desempenho da consulta.
Mesclar partições
Neste exemplo, as partições de dia são mescladas automaticamente com o nível do mês
depois de extrapolarem o intervalo incremental. As partições no intervalo incremental
precisam ser mantidas na granularidade diária para permitir que somente esses dias
sejam atualizados. A operação de atualização com Data da Execução 11/12/2016 mescla
os dias em novembro, por ficarem fora do intervalo incremental.
Confira também
Este artigo descreveu a atualização incremental para fluxos de dados. Confira outros
artigos que podem ser úteis:
Confira mais informações sobre o Power Query e a atualização agendada nestes artigos:
Para saber mais sobre o Common Data Model, leia este artigo de visão geral:
Este artigo descreve como criar fluxos de dados usando essas fontes de dados. Para
obter uma visão geral de como criar e usar fluxos de dados, acesse Criar um fluxo de
dados para serviço do Power BI e Criar e usar fluxos de dados no Power Apps.
Serviço do Power BI
1. Abra um workspace.
2. Selecione Novo.
3. Selecione o Fluxo de dados no menu suspenso.
4. Em Definir novas tabelas, selecione Adicionar novas tabelas.
Fontes de dados para fluxos de dados
Depois de criar o fluxo de dados na ferramenta de criação de fluxo de dados, será
exibida a caixa de diálogo Escolher fonte de dados.
As fontes de dados para os fluxos de dados são organizadas nas categorias a seguir,
que aparecem como guias na caixa de diálogo Escolher fonte de dados:
Todas as categorias
Arquivo
Banco de dados
Power Platform
Azure
Serviços Online
Outros
Para obter uma lista de todas as fontes de dados com suporte no Power Query, acesse
Conectores no Power Query.
O Power Query Online inicia e estabelece a conexão com a fonte de dados. Em seguida,
ele apresenta as tabelas disponíveis dessa fonte de dados na janela do Navegador.
Selecione as tabelas e os dados a serem carregados ao marcar a caixa de seleção ao
lado de cada um no painel esquerdo. Para transformar os dados escolhidos, selecione
Transformar dados na parte inferior da janela do Navegador. Será exibida uma caixa de
diálogo do Power Query Online, na qual você pode editar as consultas e executar outras
transformações desejadas nos dados selecionados.
Você pode executar as seguintes etapas para criar uma conexão com um conector que
não é exibido na interface do usuário:
2. Abra o Editor do Power Query no Power BI Desktop e clique com o botão direito
do mouse na consulta relevante e selecione o Editor Avançado, conforme
mostrado na imagem a seguir. Agora, você pode copiar o script M que aparece na
janela do Editor Avançado.
3. Abra o fluxo de dados do Power BI e selecione Obter dados para obter uma
consulta em branco.
A lista a seguir mostra quais conectores você pode usar no momento copiando e
colando a consulta M em uma consulta em branco:
Próximas etapas
Este artigo mostrou a quais fontes de dados você pode se conectar para fluxos de
dados. Os seguintes artigos oferecem mais detalhes sobre cenários de uso comuns para
fluxos de dados:
Confira mais informações sobre o Power Query e a atualização agendada nestes artigos:
Para saber mais sobre o Common Data Model, leia este artigo de visão geral:
Uma conta Power BI Pro está disponível mensalmente. Várias opções estão disponíveis
para capacidades premium ou inseridas.
Se você quiser criar fluxos de dados analíticos que armazenam dados na conta do Azure
Data Lake Storage Gen2 da sua organização, você ou seu administrador precisará
acessar uma assinatura do Azure e uma conta do Azure Data Lake Storage Gen2.
Recursos Premium
Alguns dos recursos de fluxo de dados são limitados a licenças premium. Se quiser usar
o mecanismo de computação avançado para acelerar o desempenho de suas consultas
de fluxo de dados em tabelas computadas ou usar a opção de conexão DirectQuery
com o fluxo de dados, você precisará ter o Power BI P1 ou A3 ou capacidades
superiores.
Lista de recursos
A tabela a seguir contém uma lista de recursos e a licença necessária para que eles
estejam disponíveis.
Armazenar dados no Azure Data Lake Storage (fluxo Sim Sim, usando fluxos de
de dados analítico) dados analíticos
Armazenar dados no cliente fornecidos Azure Data Sim Por plano de aplicativo
Lake Storage (fluxo de dados analíticos; use seu Por plano de usuário
próprio Azure Data Lake Storage)
O plano por aplicativo do Power Apps abrange até uma capacidade de banco de dados
de 50 MB. O plano do Power Apps por usuário permite que você tenha um banco de
dados com capacidade de 250 MB.
Uma atualização de fluxo de dados pode ser executada por no máximo 24 horas.
Cada consulta/partição tem uma duração máxima de execução de quatro horas.
Para cada atualização, há um limite de simultaneidade de quatro
consultas/partições que podem ser atualizadas simultaneamente.
Os limites de atualização do Power Query Online aplicam-se a cada usuário. Mais
informações: Atualizar limites
Power BI Pro
Power BI Pro oferece a capacidade de criar fluxos de dados analíticos, mas não usa
nenhum dos recursos premium. Com uma conta do Power BI Pro, você não pode usar
tabelas vinculadas ou computadas, não pode usar recursos de IA no Power BI nem pode
usar o DirectQuery para se conectar ao fluxo de dados. O armazenamento para seus
fluxos de dados é limitado ao espaço deixado em sua conta Power BI Pro, que é um
subconjunto de armazenamento de 10 GB para todo o conteúdo do Power BI. No
momento, não relatamos o uso atual de armazenamento de fluxos de dados no Portal
do Power BI. Você será notificado se estiver quase atingindo o limite da capacidade
restante.
Power BI Premium
Se você usar o Power BI Premium (licenciamento baseado em capacidade), poderá usar
todos os recursos de IA do Power BI, tabelas computadas e tabelas vinculadas, com a
capacidade de ter uma conexão do DirectQuery com o fluxo de dados. Você também
pode usar o mecanismo de computação avançado. No entanto, o fluxo de dados criado
sob uma licença de capacidade premium usa apenas o Azure Data Lake Storage interno
e não é acessível por outras plataformas, exceto o próprio Power BI. Você não pode criar
fluxos de dados externos apenas por ter uma licença de Power BI Premium; você precisa
ter uma assinatura do Azure para Azure Data Lake Storage também.
Tarefas paralelas
Uma capacidade premium pode executar várias avaliações em paralelo. Por exemplo,
você tem uma capacidade P4 e um fluxo de dados que consiste em 84 tarefas. Você
atualiza seu fluxo de dados e as primeiras 64 tarefas são alocadas para a atualização. As
20 avaliações restantes para esse fluxo de dados estão agrupadas em uma fila. Uma vez
que uma das avaliações é concluída, ela começa a próxima avaliação da fila. Se você
iniciar outro fluxo de dados em seu espaço de trabalho na mesma capacidade premium
enquanto o outro ainda estiver em execução, ele ficará estacionado na mesma fila da
capacidade premium e precisará aguardar os outros fluxos de dados no espaço de
trabalho para iniciar a atualização de seus dados.
Você pode usar os seguintes indicadores para estimar o número de tarefas da
atualização do fluxo de dados:
Próxima etapa
Se você quiser ler mais detalhes sobre os conceitos discutidos neste artigo, acesse
qualquer um dos links a seguir.
Preços
Preços do Power BI
Preço do Power Apps
Preços do Azure Data Lake Storage Gen2
Recursos
Tabelas computadas
Tabelas vinculadas
Recursos de IA no Power BI
Comparação entre fluxos de dados padrão e analíticos
O mecanismo de computação aprimorado
Como migrar consultas do Power Query
da área de trabalho (Power BI e Excel)
para fluxos de dados
Artigo • 05/10/2023
Se você já tem consultas no Power Query, seja no Power BI Desktop ou no Excel, talvez
queira migrá-las para fluxos de dados. O processo de migração é simples e direto. Neste
artigo, você aprenderá as etapas para fazer isso.
Para saber como criar um fluxo de dados no Microsoft Power Platform, acesse Criar e
usar fluxos de dados no Power Platform. Para saber como criar um fluxo de dados no
Power BI, acesse Criar e usar fluxos de dados no Power BI.
b. Selecione Ctrl+C.
Se você não tiver pastas:
b. Selecione Ctrl+C.
3. Cole as consultas copiadas em um fluxo de dados:
Se a fonte de dados for uma fonte local, você precisará executar uma etapa extra.
Exemplos de fontes locais podem ser arquivos do Excel em uma pasta
compartilhada em um domínio local ou um banco de dados do SQL Server
hospedado em um servidor local.
O gateway não é necessário para fontes de dados que residem na nuvem, como
um banco de dados SQL do Azure.
6. Verifique a conexão:
Se você tiver feito todas as etapas corretamente, verá uma pré-visualização dos
dados no Editor do Power Query.
Instale um gateway de dados local para transferir dados de maneira rápida e segura
entre o fluxo de dados do Power Platform e uma fonte de dados que não esteja na
nuvem, como um banco de dados SQL Server local ou um site local do SharePoint. É
possível exibir todos os gateways para os quais você tem permissões administrativas e
gerenciar permissões e conexões com eles.
Pré-requisitos
Serviço do Power BI
Uma conta de serviço do Power BI. Não tem uma? Inscreva-se gratuitamente por
60 dias.
Power Apps
Uma conta do Power Apps. Não tem uma? Inscreva-se gratuitamente por 30 dias.
Uma licença que dá suporte ao acesso a dados locais usando um gateway local.
Para saber mais sobre a linha "Conectar-se aos seus dados" da tabela "Explorar
planos do Power Apps", visite a página Preços do Power Apps .
Instale um gateway
É possível instalar um gateway de dados local diretamente do serviço online.
7 Observação
É uma boa prática geral garantir que você esteja usando uma versão com
suporte do gateway de dados local. Lançamos novas atualizações do gateway
de dados local todos os meses. Atualmente, a Microsoft dá suporte ativo
apenas às últimas seis versões do gateway de dados local.
A partir de abril de 2022, a versão mínima necessária do gateway será a de
fevereiro de 2021. Os fluxos de dados que são atualizados usando uma versão
anterior do gateway podem ter falhas na atualização.
7 Observação
1. Se for detectado que uma fonte de dados existente está disponível para o gateway
selecionado, os campos Nome de usuário e Senha serão preenchidos
previamente.
a. Neste momento, se você selecionar Avançar, será considerado que você está
usando essa fonte de dados existente e, portanto, só precisa ter permissões
para ela.
2. Se não detectarmos que uma fonte de dados existente está disponível para o
gateway selecionado, os campos Nome de usuário e Senha ficarão em branco e,
se você editar os campos de credencial e clicar em Avançar, será considerado que
você está criando uma fonte de dados no gateway, o que exige que você seja um
administrador do gateway.
7 Observação
Limitações
Há algumas limitações conhecidas ao usar fluxos de dados e gateways corporativos.
Cada fluxo de dados pode usar apenas um gateway. Como tal, todas as consultas
devem ser configuradas usando o mesmo gateway.
Solução de problemas
Ao tentar usar uma fonte de dados local para publicar um fluxo de dados, é possível
que você se depare com o seguinte erro MashupException:
Geralmente, esse erro ocorre porque você está tentando se conectar a um ponto de
extremidade do Azure Data Lake Storage por meio de um proxy, mas não definiu
corretamente as configurações de proxy para o gateway de dados local. Para saber
como definir essas configurações de proxy, confira Definir as configurações de proxy
para o gateway de dados local.
Em caso de problemas com a versão do gateway sendo usada, tente atualizar para a
versão mais recente, pois seu problema pode ter sido resolvido nela. Para saber como
atualizar seu gateway, acesse Atualizar um gateway de dados local.
Próximas etapas
Criação e uso de fluxos de dados no Power Apps
Fabric dataflows and Power Platform dataflows are Microsoft 365 services that enable
users to easily connect to, extract, move, and transform data across hundreds of
supported data sources. Dataflows build upon an underlying service called Power Query
Online, which hosts the data movement engine (Mashup Engine) as a cloud service. By
default, connectivity originates from this cloud location and has unrestricted access to
the internet. Therefore, when using dataflows to access and move sensitive data,
organizations should consider strategies to deter insiders from accidental or malicious
data exfiltration. This article outlines known risk factors and best practices for
safeguards.
Considerations
A trusted user who has access to sensitive data can author a program to push the data
to an untrusted data store. Since the Mashup Engine runs entirely in the cloud, it doesn't
go through corporate firewalls and proxy servers. So, it isn't subject to any data loss
prevention (DLP) policies that might be enforced by these networks. Since the point of
access is on the public internet, data can travel to any destination that the user has
access to—either through authentication or anonymous access. Here are some
examples of ways in which these programs can exfiltrate sensitive data:
Anonymous web requests: By using Web.Contents, users can make web requests
with sensitive data in the body of the request.
Cross data source filtering and joins: Sensitive data can be used as filtering or join
conditions against another untrusted data source. Specifically, data can travel to
the untrusted data source in the form of query strings or parameters.
Output destinations: By using Fabric dataflows, users can specify output
destinations for their queries, thereby transferring data to a list of supported data
sinks, which includes Azure SQL databases and data warehouses, Fabric
Lakehouses, Warehouses, and KQL databases.
Network isolation
We recommend that all data stores containing sensitive data be network isolated to
permit access only from selected networks. This isolation restriction must be defined
and operated at the network layer or lower. For example, layer 3 firewalls, Network
Security Groups (NSGs), and Azure Private Links are good examples of mechanisms that
can be used. However, location-based conditional access policies in Azure Active
Directory (Azure AD) operate at the application layer and are considered insufficient for
this purpose.
These network isolation policies must obstruct line of sight from dataflows' cloud
execution engine to sensitive data stores (since the cloud engine runs on the public
internet). Dataflows' connectivity to these data stores is then forced to originate from
within one of the permitted networks by binding connections to an on-premises data
gateway or VNet data gateway. An important execution characteristic of dataflows is
that cloud-based evaluation and gateway-based evaluation are never blended. If a
dataflow needs to access a network isolated data store (and is therefore bound to a
gateway), all data access is then required to flow through the gateway. Additionally,
since gateways physically reside in networks controlled by the user tenant, they comply
with network level restrictions such as firewalls and DLP protection solutions. These
restrictions make gateway environments as secure and safe as any corporate managed
devices and mitigate risks associated with arbitrary code execution in a cloud
environment.
It's worth noting that network isolation must be applied to all data stores that might
contain sensitive data. Consider an example where a user creates a dataflow to read
data from OneDrive for Business into Power BI. Then the user later creates a linked
dataflow to transform the data in Power BI into downstream entities. In this scenario, it's
not sufficient to just isolate OneDrive for Business to trusted networks. Since sensitive
data might also reside within Power BI, it's important to isolate such data by enabling
private links and disabling public Internet access for Power BI. Learn more about secure
access to Power BI using private endpoints.
Force gateway execution
The goal for isolating sensitive data store to selected networks is to force the origin of
access back to trusted networks, so that existing policies governing managed devices
can be used to govern data movement from dataflows. In certain cases, a full network
isolation solution might take time to develop, test, and deploy. As an alternative, you
can file a dataflows support ticket to apply a tenant-wide policy that turns off the
Mashup Engine. This policy affects all query evaluations that use the Power Query
Online Mashup Engine. Impacted capabilities include:
Fabric dataflows
Power Platform dataflows
Azure Data Factory wrangling dataflows
Dataflows in Dynamics 365 (Customer Insights, Intelligent Order Management, and
so on)
Power BI Datamart
Power BI Quick Import from SharePoint
After application of the policy, all cloud-based execution fails with the following error:
Cloud evaluation request denied based on tenant policies. Please use a data gateway
and try again. This error effectively forces all query evaluations in the tenant to occur
on gateways, without first rolling out a full network isolation solution. Note that the
policy is applied to the entire tenant and not a subset of workloads. This policy means
existing workloads fail immediately and require manual intervention to convert to run
on gateways. Organizations applying this policy should also ensure that they have
enough capacity in their gateway clusters to accommodate all their workloads.
Tenant isolation
For most software-as-a-service (SaaS) layer data stores, such as Fabric Lakehouse and
Power Platform Dataverse, there's usually a multi-tenant endpoint that one
communicates with to gain access to the data. These endpoints are common across all
users of the service, so they can be difficult to isolate and protect solely using network
(Layer 3) isolation techniques. The recommended approach for this kind of data store is
to use Layer 7 policies, typically provided by Azure Active Directory:
This approach restricts access to the tenant’s sensitive data stores to a set of managed
devices where signing into another tenant isn't permitted, effectively isolating data
movement across the tenant.
Roadmap
The following list contains some of the features that are currently planned to help
organizations better manage data exfiltration risks in Fabric:
Data source connection allowlisting: Allows Fabric tenant admins to control the
kinds of connectors that can be used within the tenant, and the endpoints the
connectors can connect to.
Connection usage auditing: Support for auditing logs that track connection
creation, updating, deletion, and usage.
Criar tabelas computadas em fluxos de
dados
Artigo • 05/10/2023
Você pode executar cálculos no armazenamento ao usar fluxos de dados com uma
assinatura do Power BI Premium. Isso permite realizar cálculos em seus fluxos de dados
e retornar resultados que permitem que você se concentre na criação e na análise de
relatórios.
Para executar cálculos em armazenamento, primeiro você deve criar o fluxo de dados e
trazer dados para esse armazenamento de fluxo de dados do Power BI. Depois de ter
um fluxo de dados que contém dados, você pode criar tabelas computadas, que são
tabelas que fazem computações no armazenamento.
As seções a seguir descrevem como criar tabelas computadas em seus dados de fluxo
de dados.
Para que a tabela seja qualificada como uma tabela computada, é necessário selecionar
Habilitar carga conforme mostrado na imagem a seguir. Clique com o botão direito na
tabela para exibir esse menu de atalho.
Ao selecionar Habilitar carga, você cria uma nova tabela cuja origem é a tabela
referenciada. O ícone mudará para o de computado, conforme mostrado na imagem a
seguir.
Qualquer transformação que você fizer nessa tabela recém-criada será executada nos
dados que já residem no armazenamento de fluxo de dados do Power BI. Isso significa
que a consulta não será executada na fonte de dados externa da qual os dados foram
importados (por exemplo, o banco de dados SQL do qual os dados foram obtidos).
Considere o exemplo a seguir. Você tem a tabela Conta que contém os dados brutos de
todos os clientes de sua assinatura do Dynamics 365. Você também tem dados brutos
de ServiceCalls da central de atendimento, com dados das chamadas de suporte que
foram realizadas de contas diferentes em cada dia do ano.
Imagine que você deseja enriquecer a tabela Account com dados de ServiceCalls.
Primeiro, você precisaria agregar os dados das ServiceCalls para calcular o número de
chamadas de suporte que foram feitas para cada conta no último ano.
Esse é o processo. A transformação foi feita nos dados no fluxo de dados que residem
na assinatura do Power BI Premium, não nos dados da fonte.
Considerações e limitações
É importante observar que, se você remover o workspace da capacidade do Power BI
Premium, o fluxo de dados associado não será mais atualizado.
Ao trabalhar com fluxos de dados criados especificamente na conta do Azure Data Lake
Storage de uma organização, as tabelas vinculadas e as tabelas computadas só
funcionam corretamente quando as tabelas residem na mesma conta de
armazenamento. Mais informações: Conectar o Azure Data Lake Storage Gen2 para
armazenamento de fluxo de dados
As tabelas vinculadas estão disponíveis somente para fluxos de dados criados no Power
BI e no Power Apps. Como prática recomendada, ao fazer computações em dados
unidos por dados locais e na nuvem, crie uma nova tabela para executar essas
computações. Isso fornece uma experiência melhor do que usar uma tabela existente
para computações, como uma tabela que também está consultando dados de ambas as
fontes e fazendo transformações no armazenamento.
Confira também
Cenários e casos de uso de tabela computada
Este artigo descreveu tabelas computadas e fluxos de dados. Confira outros artigos que
podem ser úteis:
Para obter mais informações sobre Power Query e atualização agendada, você pode ler
esses artigos:
Para obter mais informações sobre o Common Data Model, leia este artigo com uma
visão geral:
Com fluxos de dados no Microsoft Power Platform, você pode ter uma única fonte de
armazenamento de dados organizacionais em que os analistas de negócios podem
preparar e gerenciar seus dados uma vez e, em seguida, reutilizá-los entre aplicativos de
análise diferentes na organização.
Ao vincular tabelas entre fluxos de dados, você pode reutilizar tabelas já ingeridas,
limpas e transformadas por fluxos de dados que pertencem a outras pessoas, sem
precisar manter esses dados. As tabelas vinculadas simplesmente apontam para as
tabelas em outros fluxos de dados e não copiam ou duplicam os dados.
7 Observação
Você pode selecionar Obter dados na ferramenta de criação de fluxo de dados, que
exibe uma caixa de diálogo para selecionar as categorias e cada fonte de dados.
Selecione o conector de Fluxo de dados do Power Platform.
Você também pode selecionar Adicionar tabelas vinculadas no menu Adicionar tabelas
no serviço do Power BI.
Uma janela do Navegador é aberta e você pode escolher um conjunto de tabelas para
se conectar. A janela exibe tabelas às quais você tem permissões em todos os
workspaces e ambientes da organização.
Você também pode exibir o fluxo de dados de origem a partir das configurações de
fluxo de dados da tabela vinculada.
7 Observação
Uma tabela pode ser referenciada por outros fluxos de dados. Outros fluxos de
dados podem referenciar a tabela de referência, e assim por diante, até cinco
vezes.
Não há permissão para dependências cíclicas de tabelas vinculadas.
O fluxo de dados deve estar em um novo workspace do Power BI ou em um
ambiente do Power Apps.
Uma tabela vinculada não pode ser unida a uma tabela normal que obtém seus
dados de uma fonte de dados local.
Ao usar parâmetros M para endereçar tabelas vinculadas, se o fluxo de dados de
origem for atualizado, ele não afetará automaticamente os dados no fluxo de
dados de destino.
Não há suporte para a tentativa de conectar duas tabelas de fluxo de dados entre
dois workspaces de tipos de armazenamento distintos: BYOSA (traga seu próprio
armazenamento) e Interno.
Próximas etapas
Os seguintes artigos podem ser úteis para criar ou trabalhar com fluxos de dados:
Os seguintes artigos fornecem mais informações sobre os fluxos de dados e o Power BI:
Para obter mais informações sobre Power Query e atualização agendada, você pode ler
esses artigos:
Para obter mais informações sobre o Common Data Model, leia este artigo com uma
visão geral:
Common Data Model - visão geral
Conectar-se ao Azure Data Lake Storage
Gen2 para armazenamento de fluxo de
dados
Artigo • 23/03/2023
Você pode configurar fluxos de dados para armazenar seus dados na conta Azure Data
Lake Storage Gen2 da sua organização. Este artigo descreve as etapas gerais necessárias
para fazer isso e fornece diretrizes e práticas recomendadas ao longo do caminho.
) Importante
O fluxo de dados com recurso de Tabelas analíticas utiliza o serviço Link do Azure
Synapse para o Dataverse, que pode oferecer diferentes níveis de compromissos de
conformidade, privacidade, segurança e localização de dados. Para obter mais
informações sobre Azure Synapse Link para Dataverse, acesse O que é Azure
Synapse Link para Dataverse?.
Requisitos
Para usar o Azure Data Lake Storage Gen2 para fluxo de dados, é necessário o seguinte:
Um ambiente do Power Apps. Qualquer plano do Power Apps permitirá que você
crie fluxos de dados com Azure Data Lake Storage Gen2 como destino. Você
precisará ser autorizado no ambiente como um criador.
Uma assinatura do Azure. Você precisa de uma assinatura do Azure para usar o
Azure Data Lake Storage Gen2.
Um grupo de recursos. Use um grupo de recursos existente ou crie um.
Uma conta de armazenamento do Azure. A conta de armazenamento deve ter o
recurso Data Lake Storage Gen2 habilitado.
Dica
Se você não tiver uma assinatura do Azure, crie uma conta de avaliação gratuita
antes de começar.
Para conectar sua conta do Azure Data Lake Storage Gen2 ao fluxo de dados, siga estas
etapas:
5. Selecione Salvar.
Depois que essas etapas forem concluídas com êxito, a conta do Azure Data Lake
Storage Gen2 estará conectada aos fluxos de dados do Power Platform e você poderá
continuar para criar um fluxo de dados.
Considerações e limitações
Há algumas considerações e limitações para ter em mente ao trabalhar com o
armazenamento de fluxo de dados:
Não há suporte para a vinculação de uma conta do Azure Data Lake Store Gen2
para armazenamento de fluxo de dados no ambiente padrão.
Depois que um local de armazenamento de fluxo de dados for configurado para
um fluxo de dados, ele não poderá ser alterado.
Depois que uma conta de armazenamento é vinculada, não há suporte para a
alteração do nome do ambiente e os fluxos de dados vinculados à conta de
armazenamento falharão. A alteração do nome do ambiente reabilitará esses
fluxos de dados.
Por padrão, qualquer membro do ambiente poderá acessar dados do fluxo de
dados usando o Conector de Fluxos de Dados do Power Platform. No entanto,
somente os proprietários de um fluxo de dados podem acessar os arquivos
diretamente no Azure Data Lake Storage Gen2. Para autorizar mais pessoas a
acessar os dados de fluxos de dados diretamente no lake, você deve autorizá-los
para a Pasta CDM do fluxo de dados no data lake ou no próprio data lake.
Quando um fluxo de dados é excluído, a respectiva Pasta do CDM no lake também
é excluída.
Não há suporte para a tentativa de conectar duas entidades de fluxo de dados
entre dois workspaces de diferentes tipos de armazenamento: BYOSA (Traga sua
Própria Conta de Armazenamento) e armazenamentos internos.
) Importante
Você não deve alterar os arquivos criados por fluxos de dados no lake da sua
organização nem adicionar arquivos à Pasta CDM de um fluxo de dados. A
alteração de arquivos poderá danificar os fluxos de dados ou alterar seu
comportamento e não tem suporte. Os Fluxos de dados do Power Platform só
concedem acesso de leitura aos arquivos que eles criam no lake. Se você autorizar
outras pessoas ou serviços no sistema de arquivos usado pelos Fluxos de dados do
Power Platform, conceda-lhes apenas acesso de leitura a arquivos ou pastas desse
sistema de arquivos.
Aviso de privacidade
Ao habilitar a criação de fluxos de dados com Tabelas analíticas em sua organização por
meio do serviço Link do Azure Synapse para Dataverse, os detalhes sobre a conta de
armazenamento do Azure Data Lake, como o nome da conta de armazenamento, serão
enviados e armazenados no Link do Azure Synapse para o serviço Dataverse, que
atualmente está localizado fora do limite de conformidade do PowerApps e poderá
empregar medidas de privacidade e segurança menores ou diferentes do que as
normalmente usadas no PowerApps. Observe que você pode remover a associação do
data lake a qualquer momento para descontinuar o uso dessa funcionalidade e os
detalhes da conta de armazenamento do Azure Data Lake serão removidos do serviço
Link do Azure Synapse para Dataverse. Há mais informações sobre o Link do Azure
Synapse para Dataverse disponíveis neste artigo.
Perguntas frequentes
E se eu tivesse criado fluxos de dados anteriormente no Azure Data Lake Storage Gen2 da
minha organização e gostaria de alterar o local de armazenamento?
Não é possível alterar o local de armazenamento de um fluxo de dados depois que ele
foi criado.
Próximas etapas
Este artigo fornece diretrizes sobre como se conectar uma conta do Azure Data Lake
Storage Gen2 para armazenamento de fluxo de dados.
Para obter mais informações sobre fluxos de dados, o Common Data Model e o Azure
Data Lake Storage Gen2, acesse estes artigos:
Para obter mais informações sobre o armazenamento do Azure, acesse este artigo:
Para obter mais informações sobre o Common Data Model, acesse estes artigos:
As pastas common data model definem como o esquema de uma tabela e seus dados
devem ser armazenados. Em Azure Data Lake Storage, os dados são organizados em
pastas. As pastas podem representar um espaço de trabalho ou ambiente. Nessas
pastas, subpastas para cada fluxo de dados são criadas.
Você pode usar esse arquivo JSON para migrar (ou importar) seu fluxo de dados para
outro espaço de trabalho ou ambiente.
Para saber exatamente o que o arquivo de metadados model.json inclui, acesse o
arquivo de metadados (model.json) do Common Data Model.
Arquivos de dados
Além do arquivo de metadados, a pasta de fluxo de dados inclui outras subpastas. Um
fluxo de dados armazena os dados de cada tabela em uma subpasta com o nome da
tabela. Os dados de uma tabela podem ser divididos em várias partições de dados,
armazenadas no formato CSV.
Se sua organização habilitou fluxos de dados para aproveitar sua conta de Data Lake
Storage e foi selecionada como um destino de carga para fluxos de dados, você ainda
poderá obter dados do fluxo de dados usando o conector de fluxo de dados do Power
Platform, conforme mencionado acima. Mas você também pode acessar a pasta
Common Data Model do fluxo de dados diretamente por meio do lago, mesmo fora das
ferramentas e serviços do Power Platform. O acesso ao lago é possível por meio do
portal do Azure, Gerenciador de Armazenamento do Microsoft Azure ou qualquer outro
serviço ou experiência que dê suporte a Azure Data Lake Storage. Par obter mais
informações, confira Conectar-se ao Azure Data Lake Storage Gen2 para
armazenamento de fluxo de dados
Próximas etapas
Usar o Common Data Model para otimizar o Azure Data Lake Storage Gen2
Adicionar uma pasta do CDM ao Power BI como um fluxo de dados (versão prévia)
Conectar o Azure Data Lake Storage Gen2 para armazenamento de fluxo de dados
(fluxos de dados do Power BI)
Conectar o Azure Data Lake Storage Gen2 para armazenamento de fluxo de dados
(fluxos de dados do Power Platform)
Criar tabelas computadas em fluxos de dados
O mecanismo de computação aprimorado
Noções básicas sobre as diferenças entre fluxos de dados padrão e analíticos
Cenários e casos de uso de tabela
computada
Artigo • 05/10/2023
Embora seja possível repetir as consultas que criaram uma tabela e aplicar novas
transformações a elas, essa abordagem tem desvantagens: os dados são ingeridos duas
vezes e a carga na fonte de dados é dobrada.
As tabelas computadas podem ser criadas fazendo referência a uma tabela no mesmo
fluxo de dados ou fazendo referência a uma tabela criada em um outro fluxo de dados.
Por exemplo, se duas tabelas compartilharem até mesmo uma parte de sua lógica de
transformação, sem uma tabela computada, será necessário realizar a transformação
duas vezes.
No entanto, se uma tabela computada for usada, a parte comum (compartilhada) da
transformação será processada uma vez e armazenada no Azure Data Lake Storage. Em
seguida, as transformações restantes são processadas a partir da saída da
transformação comum. Em geral, esse processamento é muito mais rápido.
Usando uma referência dessa tabela, você pode criar uma tabela computada.
A tabela computada pode ter transformações adicionais. Por exemplo, você pode usar
Agrupar por para agregar os dados no nível do cliente.
Isso significa que a tabela Pedidos agregados está obtendo dados da tabela Pedidos e
não da fonte de dados novamente. Como algumas das transformações que precisam ser
feitas já foram feitas na tabela Pedidos, o desempenho é melhor e a transformação de
dados é mais rápida.
Você pode se perguntar "qual é a vantagem de criar uma tabela de origem que só
ingere dados?" Essa tabela ainda pode ser útil, porque, se os dados da fonte forem
usados em mais de uma tabela, isso reduzirá a carga na fonte de dados. Além disso,
agora os dados podem ser reutilizados por outras pessoas e outros fluxos de dados. As
tabelas computadas são especialmente úteis em cenários em que o volume de dados é
grande ou quando uma fonte de dados é acessada por meio de um gateway de dados
local, porque reduzem o tráfego do gateway e a carga nas fontes de dados por trás
delas.
Se o fluxo de dados que você está desenvolvendo estiver ficando maior e mais
complexo, veja aqui o que você pode fazer para melhorar o design original.
A função personalizada ajuda pois tem apenas uma versão do código-fonte, de modo
que você não precise duplicar o código. Como resultado, manter a lógica de
transformação do Power Query e todo o fluxo de dados é muito mais fácil. Para obter
mais informações, vá para o seguinte post de blog: Funções personalizadas facilitadas
no Power BI Desktop .
7 Observação
Às vezes, você pode receber uma notificação informando que uma capacidade
premium é necessária para atualizar um fluxo de dados com uma função
personalizada. Você pode ignorar essa mensagem e reabrir o editor de fluxo de
dados. Isso geralmente resolve seu problema, a menos que sua função se refira a
uma consulta "habilitada para carga".
Este artigo discute as práticas recomendadas para reutilizar fluxos de dados de forma
eficaz e eficiente. Leia este artigo para evitar armadilhas de design e possíveis
problemas de desempenho ao desenvolver fluxos de dados para reutilização.
Esses níveis de endosso ajudam os usuários a encontrar fluxos de dados confiáveis cada
vez mais rápidos. O fluxo de dados com um nível de endosso mais alto aparece
primeiro. O administrador do Power BI pode delegar a capacidade de endossar fluxos
de dados para o nível certificado para outras pessoas. Mais informações: Endosso –
Como promover e certificar o conteúdo do Power BI
Separar tabelas em vários fluxos de dados
Você pode ter várias tabelas em um fluxo de dados. Um dos motivos pelos quais você
pode dividir tabelas em vários fluxos de dados é o que você aprendeu anteriormente
neste artigo sobre como separar os fluxos de dados de ingestão de dados e
transformação de dados. Outro bom motivo para ter tabelas em vários fluxos de dados
é quando você deseja uma agenda de atualização diferente de outras tabelas.
Criar um modelo dimensional é uma das tarefas mais comuns que você pode fazer com
um fluxo de dados. Este artigo destaca algumas das melhores práticas para criar um
modelo dimensional usando um fluxo de dados.
Recomendamos que você siga a mesma abordagem usando fluxos de dados. Crie um
conjunto de fluxos de dados que são responsáveis por apenas carregar dados do
sistema de origem (e apenas para as tabelas necessárias), no estado em que se
encontram. O resultado é armazenado na estrutura de armazenamento do fluxo de
dados (Azure Data Lake Storage ou Dataverse). Essa alteração garante que a operação
de leitura no sistema de origem seja mínima.
Em seguida, você pode criar outros fluxos de dados que obtém os dados de fluxos de
dados de preparo. Os benefícios dessa abordagem incluem:
Essa separação também ajuda no caso da conexão do sistema de origem ser lenta. O
fluxo de dados de transformação não precisará esperar muito tempo para obter
registros provenientes de uma conexão lenta do sistema de origem. O fluxo de dados
de preparo já fez essa parte e os dados estarão prontos para a camada de
transformação.
Arquitetura em camadas
Uma arquitetura em camadas é aquela na qual você executa ações em camadas
separadas. Os fluxos de dados de preparo e transformação podem ser duas camadas de
uma arquitetura de fluxo de dados de várias camadas. Tentar executar ações em
camadas garante a manutenção mínima necessária. Quando você deseja alterar algo,
basta alterá-lo na camada na qual ele está localizado. Todas as outras camadas devem
continuar funcionando bem.
A imagem a seguir mostra uma arquitetura de várias camadas para fluxos de dados nos
quais suas tabelas são usadas em conjuntos de dados do Power BI.
Usar uma tabela computada o máximo possível
Ao usar o resultado de um fluxo de dados em outro fluxo de dados, você está usando o
conceito da tabela computada, o que significa obter dados de uma tabela "já
processada e armazenada". A mesma coisa pode acontecer em um fluxo de dados. Ao
fazer referência a uma tabela de outra tabela, você pode usar a tabela computada. Isso é
útil quando você tem um conjunto de transformações que precisam ser feitas em várias
tabelas, que são chamadas de transformações comuns.
Não é ideal trazer dados no mesmo layout do sistema operacional para um sistema de
BI. As tabelas de dados devem ser remodeladas. Algumas das tabelas devem assumir a
forma de uma tabela de dimensão, que mantém as informações descritivas. Algumas
das tabelas devem assumir a forma de uma tabela de fatos, para manter os dados que
podem ser agregados. O melhor layout para formatar tabelas de fatos e tabelas de
dimensão é um esquema de estrela. Para obter mais informações: Entender o esquema
em estrela e sua importância no Power BI
Usar um valor de chave exclusivo para dimensões
Ao criar tabelas de dimensão, tenha uma chave para cada uma delas. Isso garante que
não haja relações de muitos para muitos (ou, em outras palavras, "fracas") entre
dimensões. Você pode criar a chave aplicando alguma transformação para garantir que
uma coluna ou uma combinação de colunas esteja retornando linhas exclusivas na
dimensão. Em seguida, essa combinação de colunas pode ser marcada como uma chave
na tabela no fluxo de dados.
Fazer uma atualização incremental para grandes tabelas
de fatos
Tabelas de fatos são sempre as maiores tabelas do modelo dimensional.
Recomendamos reduzir o número de linhas transferidas para essas tabelas. Se você tiver
uma tabela de fatos muito grande, certifique-se de usar a atualização incremental para
essa tabela. Uma atualização incremental pode ser feita no conjunto de dados do Power
BI e também nas tabelas de fluxo de dados.
Você pode usar a atualização incremental para atualizar apenas a parte dos dados que
foi alterada. Há várias opções para escolher a parte dos dados a ser atualizada e qual
parte deve ser mantida. Para obter mais informações: Usar a atualização incremental
com os fluxos de dados do Power BI
Usar referenciamento para criar dimensões e
tabelas de fatos
No sistema de origem, você geralmente tem uma tabela que usa para gerar tabelas de
fatos e dimensões no data warehouse. Essas tabelas são boas candidatas para tabelas
computadas e também fluxos de dados intermediários. A parte comum do processo,
como limpeza de dados e remoção de linhas e colunas extras, pode ser feita uma vez.
Usando uma referência da saída dessas ações, você pode produzir as tabelas de
dimensão e fatos. Essa abordagem usará a tabela computada para as transformações
comuns.
Melhorar o desempenho e a reutilização
separando a ingestão de dados dos
fluxos de dados de transformação de
dados
Artigo • 23/03/2023
Essa separação não é útil apenas devido à melhoria de desempenho, mas também é útil
para os cenários em que um antigo sistema de fonte de dados herdado foi migrado
para um novo sistema. Nesses casos, somente os fluxos de dados de ingestão de dados
precisam ser alterados. Os fluxos de dados de transformação de dados permanecem
intactos para esse tipo de alteração.
O Azure Machine Learning pode consumir a saída de fluxos de dados e usá-la para
cenários de machine learning (por exemplo, análise preditiva).
O Azure Data Factory pode pegar a saída de fluxos de dados em uma escala muito
maior, combinada com os dados de fontes de Big Data, para soluções avançadas
de integração de dados.
O Azure Databricks pode consumir a saída de fluxos de dados para usar em
algoritmos de ciência de dados aplicada e ampliar a IA com a escala de Big Data
no back-end do Apache Spark.
Outros serviços de dados do Azure podem usar a saída de fluxos de dados do
Power Platform para realizar mais ações nesses dados.
Em qualquer um desses serviços, use o Azure Data Lake Storage como a fonte. Você
poderá inserir os detalhes do armazenamento e se conectar aos dados que lá estão. Os
dados são armazenados no formato CSV e podem ser lidos por meio de qualquer uma
dessas ferramentas e serviços. A captura de tela a seguir mostra como o Azure Data
Lake Storage é uma opção de fonte de dados para o Azure Data Factory.
No fluxo de dados padrão, você pode mapear facilmente campos da consulta de fluxo
de dados para tabelas do Dataverse. No entanto, se a tabela Dataverse tiver campos de
pesquisa ou relação, será necessária uma consideração adicional para garantir que esse
processo funcione.
No Dataverse, há várias maneiras de criar uma relação. Uma forma é criar uma tabela e
criar um campo em uma tabela que seja uma relação (ou pesquisa) com outra tabela,
conforme descrito na próxima seção.
Limitações conhecidas
Atualmente, não há suporte para mapeamento para campos de pesquisa
polimórfica.
Atualmente, não há suporte para o mapeamento para um campo de pesquisa de
vários níveis, uma pesquisa que aponta para o campo de pesquisa de outras
tabelas.
Os campos de pesquisa para Tabelas Padrão, a menos que contenham campos de
chave alternativos, conforme descrito neste documento, não aparecerão na caixa
de diálogo Tabelas de Mapa.
Os fluxos de dados não garantem a ordem de carregamento correta ao carregar-
se dados em tabelas configuradas como estruturas de dados hierárquicas.
Não há garantias sobre a ordem de execução da consulta ou ordem de
carregamento das tabelas do Dataverse. Recomendamos que você separe as
tabelas filho e pai em dois fluxos de dados e primeiro atualize o fluxo de dados
que contém artefatos filho.
Considerações de mapeamento de
campo para fluxos de dados padrão
Artigo • 05/10/2023
Criar novos registros a cada atualização de fluxo de dados, mesmo que esses
registros já existam na tabela de destino.
Criar novos registros, caso ainda não existam na tabela, ou atualizar os registros
existentes, se já existirem na tabela. Esse comportamento é conhecido como
executar upsert.
O uso de uma coluna de chave indicará ao fluxo de dados para executar upsert registros
na tabela de destino, enquanto não selecionar uma chave sempre criará novos registros
na tabela de destino.
Uma coluna de chave é única e determinística de uma linha de dados na tabela. Por
exemplo, em uma tabela Pedidos, se a ID do pedido for uma coluna de chave, você não
deverá ter duas linhas com a mesma ID do pedido. Além disso, uma ID do pedido
(digamos um pedido com a ID 345) deve representar apenas uma linha na tabela. Para
escolher a coluna de chave para a tabela no Dataverse a partir do fluxo de dados, você
precisa definir o campo de chave na experiência Mapear Tabelas.
Ter uma chave primária na tabela garante que, mesmo que você tenha linhas de dados
duplicadas com o mesmo valor no campo mapeado para a chave primária, as entradas
duplicadas não serão carregadas na tabela, e a qualidade dos dados da tabela será alta.
Ter uma tabela com alta qualidade de dados é essencial na construção de soluções de
relatórios baseadas na tabela.
Esta imagem mostra como escolher a coluna de chave a ser usada ao executar upsert
em registros para uma tabela Dataverse existente:
7 Observação
Note que, na lista suspensa Selecionar chave, é possível selecionar o identificador único
da tabela, que sempre é chamado de "tablename + id". Como o nome da tabela é
"CustomerTransactions", o campo identificador único será denominado
"CustomerTransactionId".
Ter essa opção marcada significa que, se houver uma linha de dados na tabela que não
consta na saída de consulta da próxima atualização de fluxo de dados, essa linha será
removida da tabela.
7 Observação
Limitações conhecidas
Atualmente, não há suporte para mapeamento para campos de pesquisa
polimórfica.
Atualmente, não há suporte para o mapeamento para um campo de pesquisa de
vários níveis, uma pesquisa que aponta para o campo de pesquisa de outras
tabelas.
Atualmente, não há suporte para mapeamento para Campos Status eMotivo do
Status.
Não há suporte para o mapeamento de dados em textos multilinhas com
caracteres de quebra de linha e as quebras de linha serão removidas. Você pode
usar a marca de quebra de linha <br> para carregar e preservar o texto multilinhas.
Só existe suporte ao mapeamento para campos Opção configurados com a
seleção múltipla ativada sob certas condições. O fluxo de dados carrega apenas
dados para Opção com a opção de seleção múltipla ativada, e uma lista separada
por vírgulas de valores (inteiros) dos rótulos é usada. Por exemplo, se os rótulos
forem "Choice1, Choice2, Choice3" com valores inteiros correspondentes de "1, 2,
3", os valores da coluna deverão ser "1,3" para selecionar a primeira e a última
opções.
Os fluxos de dados V2 padrão dependem dos campos createdon e modifiedon
para remover linhas inexistentes na saída de fluxos de dados da tabela de destino.
Se essas colunas não existirem na tabela de destino, os registros não serão
excluídos.
Funções de segurança e níveis de
permissão necessários para criar fluxos
de dados padrão.
Artigo • 07/10/2023
Criador de Criar fluxos de dados Necessário para criar qualquer fluxo de dados. Fluxos
Ambiente de dados padrão exigem funções adicionais
dependendo das permissões de tabelas do Dataverse.
Usuário Básico Gravar em tabelas Tem todos os direitos para trabalhar com tabelas não
não personalizadas personalizadas.
Personalizador de Criar tabelas As tabelas personalizadas que este usuário cria são
Sistema personalizadas visíveis apenas para esse usuário.
Verifique se o usuário ao qual você deseja atribuir uma função de segurança está
presente no ambiente. Caso contrário, adicione o usuário ao ambiente. Você pode
atribuir uma função de segurança como parte do processo de adição do usuário. Mais
informações: Adicionar usuários a um ambiente
Em geral, uma função de segurança só pode ser atribuída aos usuários que estão no
estado Habilitado. No entanto, se você precisar atribuir uma função de segurança aos
usuários no estado desabilitado, poderá fazer isso habilitando
allowRoleAssignmentOnDisabledUsers no OrgDBOrgSettings.
6. Selecione OK.
Se você ainda não ouviu falar de segurança em nível de linha antes, aqui está uma
introdução rápida. Se você tiver usuários com diferentes níveis de acesso à mesma
tabela, poderá filtrar os dados no nível da linha. Por exemplo, na tabela Orders, você
pode ter uma coluna SalesTerritory. Além disso, talvez você queira filtrar os dados de
forma que os usuários da Califórnia só possam ver os registros da tabela Orders que
pertencem à Califórnia. Essa diferença é possível por meio da segurança em nível de
linha.
Um dos cenários comuns que acontece quando se integra dados ao Dataverse é mantê-
los sincronizados com a fonte. Como usar o fluxo de dados padrão para carregar dados
no Dataverse. Este artigo explica como se pode manter os dados sincronizados com o
sistema de origem.
Neste procedimento, você criará uma tabela no Dataverse e preencherá essa tabela com
dados de um feed OData usando o Power Query. Você pode usar as mesmas técnicas
para integrar dados dessas fontes online e locais, entre outras:
SQL Server
Salesforce
IBM DB2
Access
Excel
APIs da Web
Feeds do OData
Arquivos de texto
Você também pode filtrar, transformar e combinar dados antes de carregá-los em uma
tabela nova ou existente.
Se não tiver uma licença para o Power Apps, é possível inscrever-se gratuitamente.
Pré-requisitos
Antes de começar a seguir este artigo:
https://services.odata.org/V4/Northwind/Northwind.svc/
Você pode especificar uma coluna de nome primário diferente, mapear uma
coluna diferente na tabela de origem para cada coluna na tabela que está criando
ou ambas. Você também pode especificar se as colunas de texto na saída da
consulta devem ser criadas como Texto multilinha ou texto Single-Line no
Dataverse. Para seguir este tutorial exatamente, deixe o mapeamento de coluna
padrão.
A entidade Clientes criada com base em um feed OData é exibida como uma
entidade personalizada.
2 Aviso
Qual é a diferença?
O ponto principal é conhecer as diferenças pois, assim, você poderá pensar nos cenários
para usar um ou outro.
Recursos Fluxo de dados do Power Platform Fluxos de dados de estruturação
do Data Factory
Destinos Dataverse ou Azure Data Lake Storage Muitos destinos (acesse a lista
aqui )
Se você for um desenvolvedor de dados que está mexendo com big data e conjuntos de
dados enormes com um grande número de linhas a serem sempre ingeridas, os fluxos
de dados de estruturação do Data Factory serão uma ferramenta melhor para o
trabalho. O fluxo de dados de estruturação converte a linguagem M, gerada pelo Editor
de mashup do Power Query Online, no código do Spark para executar na escala da
nuvem. Trabalhar com o portal do Azure para criar, monitorar e editar os fluxos de
dados de estruturação requer uma curva de aprendizado do desenvolvedor maior do
que na obtenção da experiência em fluxos de dados do Power Platform. Os fluxos de
dados de estruturação são mais adequados para esse tipo de público.
Modelos do Power Automate para o
conector de fluxos de dados
Artigo • 13/05/2023
Esta seção discute alguns casos de uso com tutoriais fornecidos para ajudar você a
começar a usar rapidamente este conector:
Envio de notificações:
Quando uma atualização de fluxo de dados falhar, envie uma mensagem para a
fila do Barramento de Serviço do Azure para abrir um tíquete de suporte.
Quando a atualização do fluxo de dados for concluída, você ou outras pessoas que
gerenciam ou dependem do fluxo de dados podem querer receber uma notificação
para alertá-lo sobre o status de atualização do fluxo de dados. Dessa forma, você sabe
que seus dados estão atualizados e você pode começar a obter novas informações.
Outro cenário comum abordado por este tutorial é a notificação depois que um fluxo de
dados falha. Uma notificação permite que você comece a investigar o problema e alerte
as pessoas que dependem dos dados que estão sendo atualizados com êxito.
Para configurar uma notificação do Power Automate que será enviada quando um fluxo
de dados falhar:
11. Dentro do corpo do email, selecione o campo ao lado do Corpo e use o conteúdo
dinâmico para adicionar informações de fluxo de dados ao conteúdo do seu email.
Abrir um tíquete quando houver falha
em uma atualização de fluxo de dados
Artigo • 23/03/2023
Neste tutorial, usamos o Barramento de Serviço do Azure. Para obter instruções sobre
como configurar um Barramento de Serviço do Azure e criar uma fila, acesse Usar o
portal do Azure para criar uma fila e um namespace do Barramento de Serviço.
10. Insira um Nome de conexão para essa mensagem. Na Cadeia de conexão, insira a
cadeia de conexão gerada quando você criou o namespace do Barramento de
Serviço. Em seguida, selecione Criar.
Acionar fluxos de dados e conjuntos de
dados do Power BI sequencialmente
Artigo • 05/10/2023
Há dois cenários comuns de como você pode usar esse conector para disparar vários
fluxos de dados e conjuntos de dados do Power BI em sequência.
Se um único fluxo de dados fizer todas as ações, será difícil reutilizar suas tabelas
em outros fluxos de dados ou para outros propósitos. Os melhores fluxos de
dados a serem reutilizados são aqueles que fazem apenas algumas ações,
especializados em uma tarefa específica. Se você tiver um conjunto de fluxos de
dados do tipo fluxos de dados de preparo e a única ação for extrair os dados
"como estão" do sistema de origem, esses fluxos poderão ser reutilizados em
vários outros fluxos de dados. Para mais informações, consulte Práticas
recomendadas para reutilização de fluxos de dados nos ambientes e workspaces
Se você quiser garantir que seu painel seja atualizado depois que um fluxo de
dados atualize os dados, use o conector para disparar a atualização do conjunto
de dados do Power BI depois que o fluxo de dados for atualizado com êxito.
Este tutorial demonstra como carregar dados em uma tabela do Dataverse para criar um
relatório de monitoramento de fluxos de dados no Power BI.
Primeiro, você criará uma tabela do Dataverse que armazenará todos os metadados da
execução do fluxo de dados. Para cada atualização de um fluxo de dados, um registro é
adicionado a esta tabela. Você também pode armazenar metadados de várias execuções
de fluxo de dados na mesma tabela. Depois que a tabela for criada, você conectará o
arquivo do Power BI à tabela do Dataverse.
Pré-requisitos
Power BI Desktop .
Neste painel, para cada fluxo de dados no intervalo de tempo especificado, você pode
monitorar:
A ID exclusiva para cada fluxo de dados é gerada por uma mesclagem entre o nome do
fluxo de dados e a hora de início do fluxo de dados.
Carregar dados no Excel Online e criar
um relatório de monitoramento de
fluxos de dados com o Power BI
Artigo • 05/10/2023
Este tutorial demonstra como usar um arquivo do Excel e o conector de fluxos de dados
no Power Automate para criar um relatório de monitoramento de fluxos de dados no
Power BI.
Power BI Desktop .
6. Pesquise o conector "Adicionar uma linha a uma tabela" do Excel Online (Business)
e selecione-o.
9. Salve o fluxo.
Neste painel, para cada fluxo de dados no intervalo de tempo especificado, você pode
monitorar:
O uniqueID para cada fluxo de dados é gerado por uma mesclagem entre o nome do
fluxo de dados e a hora de início do fluxo de dados.
Carregar dados em um conjunto de
dados de streaming do Power BI e criar
um relatório de monitoramento de
fluxos de dados com o Power BI
Artigo • 23/03/2023
Você poderá usar esse painel para monitorar a execução da atualização e a contagem
de falhas dos fluxos de dados. Com esse painel, será possível acompanhar quaisquer
problemas no desempenho dos fluxos de dados e compartilhar os dados com outras
pessoas.
Pré-requisitos
Uma licença do Power BI Pro.
2. Abra um workspace.
Para cada campo obrigatório, você precisa adicionar um valor dinâmico. Esse valor
é a saída dos metadados da execução do fluxo de dados.
9. Salvar o fluxo.
Ao trabalhar com fluxos de dados de qualquer tipo que não sejam fluxos de dados do
Power BI, é possível monitorar as atualizações de fluxo de dados usando o Power BI.
Este artigo inclui instruções passo a passo sobre como configurar seu painel para
compartilhar com todos de sua equipe. Este painel fornece insights sobre a taxa de
sucesso, a duração e outros pontos das atualizações.
8. Se essa for a primeira vez que você usa esse painel, talvez seja necessário inserir
suas credenciais para entrar.
9. Dentro do painel, existem duas guias com informações sobre erros, duração e a
contagem de linhas que foram inseridas, foram "upsert" ou falharam:
10. Desse ponto em diante, você pode alterar o painel como desejar e publicá-lo em
um workspace de sua escolha.
Essas tabelas armazenarão o histórico pelo menos das últimas 50 atualizações. Atualizar
registros de histórico com mais de 90 dias pode ser removido pelo sistema. Para usar
essas tabelas, sugerimos que você use o Power BI para obter os dados por meio do
conector do Dataverse. Também sugerimos que você extraia esses dados em uma tabela
autogerenciada se desejar fazer análises por um período mais longo.
Problemas conhecidos
Em alguns casos, quando você tenta se conectar às tabelas do Dataverse manualmente
por meio do Power BI, as tabelas podem parecer estar vazias. Para resolver esse
problema, basta atualizar a visualização.
Solucionar problemas de fluxo de
dados: criar fluxos de dados
Artigo • 05/10/2023
Este artigo explica alguns dos erros e problemas mais comuns que podem ocorrer
quando você deseja criar um fluxo de dados e explica como corrigi-los.
Motivo:
Resolução:
Motivo:
Resolução:
Motivo:
O acesso à criação do fluxo de dados foi desabilitado pelo administrador do Power BI.
Resolução:
Motivo:
Você está criando o fluxo de dados em uma versão antiga do workspace do Power BI,
chamada V1.
Resolução:
Atualize o workspace do Power BI para a nova versão (v2). Para mais informações:
Atualizar workspaces clássicos para os novos workspaces no Power BI
O nome do fluxo de dados já existe, mas eu
excluí o antigo
Esse problema acontece quando você tenta criar um fluxo de dados com um nome que
já existe ou usar o nome de um fluxo de dados que tenha sido excluído recentemente.
Motivo:
Pode levar até 48 horas para que os sistemas de back-end excluam todos os arquivos e
referências ao fluxo de dados excluído.
Resolução:
Você pode aguardar 48 horas antes de publicar o fluxo de dados ou criá-lo agora com
um nome diferente e renomeá-lo mais tarde.
Solução de problemas de fluxo de
dados: obter dados de um fluxo de
dados
Artigo • 23/03/2023
Talvez você tenha criado um fluxo de dados e teve dificuldade em obter dados dele
(usando Power Query no Power BI Desktop ou de outros fluxos de dados). Este artigo
explica alguns dos problemas mais comuns com a obtenção de dados de um fluxo de
dados.
Motivo:
Resolução:
Nas ferramentas da área de trabalho, como o Power Query no Excel e o Power Query no
Power BI Desktop, o carregamento de dados em tabelas ocorre automaticamente (a
menos que você desabilite). Esse comportamento é um pouco diferente no Power Query
em fluxos de dados. Nas entidades de fluxo de dados, os dados não serão carregados, a
menos que você atualize os dados.
Você precisa configurar uma atualização agendada para um fluxo de dados ou, se quiser
apenas uma única atualização, use a opção de atualização manual.
Depois que o fluxo de dados for atualizado, os dados das entidades ficarão visíveis na
janela Navegador de outras ferramentas e serviços.
Somente fluxos de dados analíticos podem ser usados em uma operação Obter dados
de um fluxo de dados.
Resolução:
Se você criou um fluxo de dados que armazena dados no Dataverse, ou seja, um fluxo
de dados padrão, você não poderá vê-lo usando a operação Obter dados em um fluxo
de dados. No entanto, você pode usar Obter dados no Dataverse para acessá-lo. Ou
você pode criar um fluxo de dados analítico e acessá-lo usando Obter dados em um
fluxo de dados.
Não consigo fazer uma conexão do
DirectQuery com o fluxo de dados
Se você pretende usar o fluxo de dados como uma fonte do DirectQuery, talvez seja
necessário habilitá-lo primeiro.
Motivo:
Resolução:
Quando você cria um fluxo de dados, às vezes ocorre um erro ao se conectar à fonte de
dados. Esse erro pode ser causado pelo gateway, credenciais ou outros motivos. Este
artigo explica os erros e problemas de conexão mais comuns e sua resolução.
Motivo:
Quando sua tabela no fluxo de dados obtém dados de uma fonte de dados local, é
necessário ter um gateway para a conexão, mas o gateway não foi selecionado.
Resolução:
Selecione Selecionar gateway. Se o gateway ainda não tiver sido configurado, acesse
Instalar um gateway de dados local.
Erro: Especifique como se conectar
Esse problema ocorre quando você está conectado a uma fonte de dados, mas ainda
não configurou as credenciais ou os detalhes da conexão. Isso pode acontecer quando
você migra consultas para um fluxo de dados.
Motivo:
Resolução:
Motivo:
Depois de adicionar a fonte de dados da Web, você pode selecionar o gateway no fluxo
de dados das opções e >Opções do projeto.
Pode ser necessário configurar credenciais. Quando você configurar o gateway e suas
credenciais com êxito, os módulos não serão mais desabilitados."
Um fluxo de dados mantém sua associação com fontes de dados de fluxo de dados
excluídas e não as exclui automaticamente. Isso requer um corte iniciado pelo usuário.
Resolução:
2. Selecione Opções.
4. Altere o gateway para outro gateway. Não importa qual deles, contanto que seja
um gateway diferente.
5. Depois de aplicar a alteração ao selecionar OK, repita as etapas 1 a 4 para
selecionar o gateway original novamente.
Essas etapas basicamente excluem todas as associações de fonte de dados para o fluxo
de dados. Depois de concluir essas etapas, você pode ser solicitado a configurar
credenciais. Ao configurar o gateway e suas credenciais com êxito, você efetivamente
"corta" as associações de fonte de dados para o fluxo de dados para apenas as que o
fluxo de dados está realmente usando.
7 Observação
Destina-se a ser usado como um meio simples para empacotar todo o projeto do Power
Query em um único arquivo. Em seguida, compartilhe o arquivo ou importe-o para
outras integrações do Power Query.
7 Observação
Um projeto do Power Query pode ser definido como uma única instância do editor
do Power Query. Essa instância pode conter qualquer número de parâmetros,
consultas e configurações específicas, como a localidade que deve ser usada para
interpretar tipos de dados.
) Importante
Os conceitos que estão fora do script do Power Query ou dos metadados estão
fora do escopo do que encontrar em um modelo do Power Query. Alguns
exemplos são conceitos relacionados ao fluxo de dados, como definição de
atualização agendada, histórico de atualização, IDs de fluxo de dados, conexões
referenciadas e outros conceitos que não são armazenados no script do Power
Query ou nos metadados de um projeto do Power Query.
Exportar um modelo
7 Observação
Para o Power Query no Excel para Windows, siga o guia em exportar consultas no
Excel para um modelo do Power Query.
O botão Exportar modelo está dentro da guia Início da fita do Power Query, no grupo
Compartilhar.
Quando você seleciona este botão, a caixa de diálogo Modelo de exportação é exibida.
Nessa caixa de diálogo, você pode inserir o nome do modelo e a descrição usada para o
modelo.
Essa operação baixa um arquivo com a extensão .pqt, que é o arquivo de modelo do
Power Query.
Importar um modelo
7 Observação
Selecionar o botão Importar do modelo do Power Query aciona uma experiência para
ajudar a carregar seu modelo do Power Query e carregar imediatamente o projeto com
todas as consultas, parâmetros e configurações.
) Importante
Ao usar o Editor de consultas no Power Query Online, é possível navegar até a opção
Atalhos de teclado na guia Ajuda para ver a lista de atalhos de teclado.
7 Observação
Editor de Consultas
Ação Atalhos de teclado do Atalhos de teclado do
Windows MacOS
Alterar menu do tipo de coluna Ctrl + Tecla de seta para Command+Seta para
baixo baixo
Mover o foco para o cabeçalho da Ctrl + Tecla de seta para a Command+Seta para a
coluna à esquerda esquerda esquerda
Mover o foco para o cabeçalho da Ctrl + Tecla de seta para a Command+Seta para a
coluna à direita direita direita
Selecione a célula uma página Uma página acima Fn+Seta para cima
acima
Selecione a célula uma página Uma página abaixo Fn+Seta para baixo
abaixo
Exibição de diagrama
Ação Atalhos de teclado do Atalhos de teclado do
Windows MacOS
Expandir a consulta selecionada Ctrl + Tecla de seta para a Command+Seta para a direita
direita
Mover o foco do nível de consulta Alt + Tecla de seta para Option+Seta para baixo
para o nível da etapa baixo
Painel Consultas
Ação Atalhos de teclado do Atalhos de teclado do MacOS
Windows
Selecionar várias Ctrl + Tecla de seta para cima e Command+Seta para cima e
consultas consecutivas Ctrl + Tecla de seta para baixo Command+Seta para baixo
Práticas recomendadas ao trabalhar
com Power Query
Artigo • 23/03/2023
Este artigo contém algumas dicas e truques para aproveitar ao máximo sua experiência
de estruturação de dados no Power Query.
Filtrar antecipadamente
É sempre recomendável filtrar seus dados nos estágios iniciais da consulta ou o mais
cedo possível. Alguns conectores aproveitarão seus filtros por meio da dobragem de
consultas, conforme descrito em Dobragem de consultas do Power Query. Também é
uma prática recomendada filtrar todos os dados que não são relevantes para o seu caso.
Isso permitirá que você se concentre melhor em sua tarefa, mostrando apenas os dados
relevantes na seção de visualização de dados.
Você pode usar o menu de filtro automático que exibe uma lista distinta dos valores
encontrados na coluna para selecionar os valores que deseja manter ou filtrar. Você
também pode usar a barra de pesquisa para ajudar a encontrar os valores na coluna.
Você também pode aproveitar os filtros específicos de tipo, como No anterior para uma
coluna de data, datetime ou até mesmo de fuso horário de data.
Esses filtros específicos de tipo podem ajudar você a criar um filtro dinâmico que
sempre recuperará dados que estão no x números de segundos, minutos, horas, dias,
semanas, meses, trimestres ou anos anteriores, conforme mostrado na imagem a seguir.
7 Observação
Para saber mais sobre como filtrar seus dados com base em valores de uma coluna,
acesse Filtrar por valores.
Fazer operações caras por último
Determinadas operações exigem a leitura completa da fonte de dados para retornar
qualquer resultado e, portanto, serão lentas para visualização no Editor do Power Query.
Por exemplo, se você executar uma classificação, é possível que as primeiras linhas
classificadas estejam no final dos dados de origem. Portanto, para retornar algum
resultado, a operação de classificação deverá primeiro ler todas as linhas.
Outras operações (como filtros) não precisam ler todos os dados para retornar
resultados. Em vez disso, elas operam sobre os dados no que é chamado de uma forma
de "fluxo". Os dados "fluem" e os resultados são retornados ao longo do caminho. No
Editor do Power Query, essas operações só precisam ler o quanto baste dos dados de
origem para preencher a visualização.
Sempre que possível, execute essas operações de fluxo primeiro e faça operações mais
caras por último. Isso ajudará a minimizar o tempo gasto aguardando a visualização ser
renderizada cada vez que você adicionar uma nova etapa à consulta.
Trabalhar temporariamente em um
subconjunto de seus dados
Se a adição de novas etapas à consulta no Editor do Power Query for lenta, considere
primeiro fazer uma operação "Manter Primeiras Linhas" e limitar o número de linhas em
que você está trabalhando. Em seguida, depois de adicionar todas as etapas necessárias,
remova a etapa "Manter Primeiras Linhas".
É crucial que você sempre trabalhe com os tipos de dados corretos para suas colunas.
Ao trabalhar com fontes de dados estruturadas, como bancos de dados, as informações
de tipo de dados serão trazidas do esquema da tabela encontrado no banco de dados.
Mas para fontes de dados não estruturadas, como arquivos TXT e CSV, é importante
definir os tipos de dados corretos para as colunas provenientes dessas fontes de dados.
Por padrão, Power Query oferece uma detecção automática de tipo de dados para
fontes de dados não estruturadas. Leia mais sobre esse recurso e como ele pode ajudá-
lo em Tipos de Dados.
7 Observação
Para saber mais sobre a importância dos tipos de dados e como trabalhar com eles,
confira Tipos de dados.
Essas ferramentas de criação de perfil de dados ajudam você a entender melhor seus
dados. As ferramentas fornecem pequenas visualizações que mostram informações por
coluna, como:
7 Observação
Embora Power Query crie automaticamente um nome de etapa para você no painel de
etapas aplicadas, você também pode renomear as etapas ou adicionar uma descrição a
qualquer uma delas.
7 Observação
Por exemplo, digamos que você tenha uma consulta com as nove etapas mostradas na
imagem a seguir.
Você poderia dividir essa consulta em duas na etapa Mesclar com tabela de Preços.
Dessa forma, é mais fácil entender as etapas que foram aplicadas à consulta de vendas
antes da mesclagem. Para fazer essa operação, clique com o botão direito do mouse na
etapa Mesclar com tabela de Preços e selecione a opção Extrair Anterior.
Em seguida, você verá uma caixa de diálogo para dar um nome à nova consulta. Isso
dividirá efetivamente sua consulta em duas consultas. Uma consulta terá todas as
consultas antes da mesclagem. A outra consulta terá uma etapa inicial que fará
referência à nova consulta e ao restante das etapas que você tinha em sua consulta
original da etapa Mesclar com a tabela de Preços em diante.
7 Observação
Para saber mais sobre a referência de consulta, acesse Noções básicas sobre o
painel consultas.
Criar grupos
Uma ótima maneira de manter seu trabalho organizado é usar grupos no painel de
consultas.
A única finalidade dos grupos é ajudar você a manter seu trabalho organizado, servindo
como pastas para suas consultas. Você pode criar grupos dentro de grupos, caso
precise. Mover consultas entre grupos é tão fácil quanto arrastar e soltar.
Tente dar a seus grupos nomes significativos que façam sentido para você e seu caso.
7 Observação
Consultas resilientes
Ter a certeza de criar uma consulta que não tenha problemas durante uma atualização
futura é uma prioridade máxima. Há vários recursos no Power Query para tornar sua
consulta resiliente a alterações e capaz de ser atualizada mesmo quando alguns
componentes da sua fonte de dados forem alterados.
Uma prática recomendada é definir o escopo da consulta quanto ao que ela deve fazer
e o que ela deve considerar em termos de estrutura, layout, nomes de colunas, tipos de
dados e qualquer outro componente que você considere relevante para o escopo.
Alguns exemplos de transformações que podem ajudar você a tornar sua consulta
resiliente a alterações são:
7 Observação
Para saber mais sobre como filtrar seus dados por posição de linha, vá para
Filtrar uma tabela por posição de linha.
7 Observação
Para saber mais sobre como escolher ou remover colunas, acesse Escolher ou
remover colunas.
7 Observação
Para saber mais sobre as opções para descompactar suas colunas, acesse
Colunas não dinâmicas.
Se a consulta tiver uma etapa que altere o tipo de dados de uma coluna, mas
algumas células gerarem erros, pois os valores não estão em conformidade com o
tipo de dados desejado, você poderá remover as linhas que geraram valores de
erro.
7 Observação
Para saber mais sobre como trabalhar e lidar com erros, acesse Lidar com
erros.
Usar parâmetros
Criar consultas dinâmicas e flexíveis é uma prática recomendada. Os parâmetros no
Power Query ajudam você a tornar suas consultas mais dinâmicas e flexíveis. Um
parâmetro serve como uma forma de armazenar e gerenciar facilmente um valor que
possa ser reutilizado de várias maneiras diferentes. Mas é mais comumente usado em
dois cenários:
Argumento de função personalizada – Você pode criar uma função com base em
uma consulta e referenciar parâmetros como os argumentos de sua função
personalizada.
Os principais benefícios de criar e usar parâmetros são:
Você pode até mesmo usar parâmetros em alguns dos argumentos dos conectores de
dados. Por exemplo, você pode criar um parâmetro para o nome do servidor ao se
conectar ao banco de dados do SQL Server. Em seguida, você pode usar esse parâmetro
dentro da caixa de diálogo do banco de dados do SQL Server.
Se você alterar o local do servidor, tudo o que precisará fazer será atualizar o parâmetro
para o nome do servidor e suas consultas serão atualizadas.
7 Observação
Para saber mais sobre como criar e usar parâmetros, acesse Usar parâmetros.
Por exemplo, digamos que você tenha várias consultas ou valores que exigem o mesmo
conjunto de transformações. Você poderia criar uma função personalizada que
posteriormente pudesse ser invocada nas consultas ou nos valores de sua escolha. Essa
função personalizada economizaria tempo e o ajudaria a gerenciar seu conjunto de
transformações em um local central, que você pode modificar a qualquer momento.
As funções personalizadas do Power Query podem ser criadas com base em consultas e
parâmetros existentes. Por exemplo, imagine uma consulta que tenha vários códigos
como uma cadeia de caracteres de texto e você deseja criar uma função que
decodificará esses valores.
Você começa com um parâmetro que tenha um valor que sirva de exemplo.
Com base nesse parâmetro, você cria outra consulta em que aplica as transformações
necessárias. Para esse caso, você deseja dividir o código PTY-CM1090-LAX em vários
componentes:
Origem = PTY
Destino = LAX
Airline = CM
FlightID = 1090
Em seguida, você pode transformar essa consulta em uma função, clicando com o botão
direito do mouse na consulta e selecionando Criar Função. Por fim, você pode invocar a
função personalizada em qualquer uma de suas consultas ou seus valores, conforme
mostrado na imagem a seguir.
Depois de mais algumas transformações, você poderá ver que alcançou a saída
desejada e aproveitou a lógica dessa transformação de uma função personalizada.
7 Observação
Para saber mais sobre como criar e usar funções personalizadas no Power Query,
veja o artigo Funções Personalizadas.
Comentários do Power Query
Artigo • 05/10/2023
Este artigo descreve como obter suporte ou enviar comentários para o Power Query.
Para conectores Power Query, acesse Comentários e suporte para conectores Power
Query.
Para documentação do Power Query, você pode enviar comentários por meio do link
Enviar e visualizar comentários para: Esta página na parte inferior de cada artigo.
Fóruns da comunidade para o produto em que você está usando o Power Query.
Por exemplo, para o Power BI, esse fórum seria Comunidade do Power BI
Recursos do site do Power Query
Para obter informações sobre os links de suporte de ajuda internos do Power Query, vá
para Obter ajuda do Power Query.
Enviar comentários
Para enviar comentários sobre o Power Query, forneça os comentários para o fórum
"ideias" para o produto em que você está usando o Power Query. Por exemplo, para o
Power BI, visite o fórum de ideias do Power BI . Se você tiver um, também poderá
fornecer comentários diretamente ao contato de sua conta Microsoft.
Como a correspondência difusa
funciona no Power Query
Artigo • 05/10/2023
Este artigo aborda muitos cenários que demonstram como aproveitar as opções que a
correspondência difusa tem, com o objetivo de deixar claro o "fuzzy".
Como a palavra Apples na segunda cadeia de caracteres é apenas uma pequena parte
de toda a cadeia de caracteres de texto, essa comparação produz uma pontuação de
similaridade mais baixa.
Por exemplo, o conjunto de dados a seguir consiste em respostas de uma pesquisa que
tinha apenas uma pergunta: "Qual é a sua fruta favorita?"
Fruta
Blueberries
Strawberries
Strawberries = <3
Maçãs
'sples
4ppl3s
Bananas
Banas
A pesquisa forneceu uma única caixa de texto para inserir o valor e não teve validação.
Agora você tem a tarefa de agrupar os valores. Para executar essa tarefa, carregue a
tabela de frutas anterior no Power Query, selecione a coluna e selecione a opção
Valores de cluster na guia Adicionar coluna da faixa de opções.
A caixa de diálogo Valores de cluster é exibida, na qual você poderá especificar o nome
da nova coluna. Dê o nome de Cluster a essa nova coluna e selecione OK.
Por padrão, o Power Query usa um limite de similaridade de 0,8 (ou 80%) e o resultado
da operação anterior produz a tabela a seguir com a nova coluna Cluster.
Embora o clustering tenha sido feito, ele não está fornecendo os resultados esperados
para todas as linhas. A linha número dois (2) ainda tem o valor Blue berries are simply
the best , mas deveria ser clusterizado como Blueberries , e algo semelhante acontece
Para determinar o que está causando esse agrupamento, clique duas vezes em Valores
de cluster no painel Etapas aplicadas para recuperar a caixa de diálogo Valores de
cluster. Dentro dessa caixa de diálogo, expanda Opções de cluster difuso. Habilite a
opção Mostrar pontuações de similaridade e selecione OK.
Habilitar a opção Mostrar pontuações de similaridade cria uma nova coluna na tabela.
Esta coluna mostra a pontuação de similaridade exata entre o cluster definido e o valor
original.
Após uma inspeção mais detalhada, o Power Query não conseguiu encontrar outros
valores no limite de similaridade para as cadeias de caracteres de texto Blue berries
are simply the best , Strawberries = <3 , fav fruit is bananas e My favorite fruit,
by far, is Apples. I simply love them! .
Volte para a caixa de diálogo Valores de cluster mais uma vez clicando duas vezes em
Valores de cluster no painel Etapas aplicadas. Altere o Limite de similaridade de 0,8
para 0,6, e selecione OK.
Essa alteração o aproxima do resultado que você está procurando, exceto pela cadeia
de caracteres de texto My favorite fruit, by far, is Apples. I simply love them! .
Quando você alterou o valor Limite de similaridade de 0,8 para 0,6, o Power Query
pôde usar os valores com uma pontuação de similaridade que começa de 0,6 até 1.
7 Observação
O Power Query sempre usa o valor mais próximo do limite para definir os clusters.
O limite define o limite inferior da pontuação de similaridade aceitável para atribuir
o valor a um cluster.
Você pode tentar novamente alterando a Pontuação de similaridade de 0,6 para um
número menor até obter os resultados que está procurando. Nesse caso, altere a
Pontuação de similaridade para 0,5. Essa alteração produz o resultado exato que você
está esperando com a cadeia de texto My favorite fruit, by far, is Apples. I simply
love them! agora atribuída ao cluster Apples .
7 Observação
) Importante
7 Observação
Se você tiver usado o Power Query por qualquer intervalo de tempo, provavelmente já
experimentou isso. Lá está você, consultando, quando de repente recebe um erro que
nenhuma quantidade de pesquisa online, ajustes de consulta ou toques no teclado
pode remediar. Um erro como:
so it may not directly access a data source. Please rebuild this data combination.
Ou talvez:
have privacy levels which cannot be used together. Please rebuild this data
combination.
O que é isso?
A finalidade do Firewall de Privacidade de Dados é simples: ele existe para impedir que
Power Query vazem dados sem querer entre fontes.
Por que isso é necessário? Você certamente poderia criar algum M que passaria um
valor SQL para um feed OData. Mas isso seria vazamento intencional de dados. O autor
da compilação saberia (ou pelo menos deveria) saber que estava fazendo isso. Por que
então a necessidade de proteção contra vazamento de dados não intencional?
A resposta? Dobramento.
Dobramento?
Dobrar é um termo que se refere à conversão de expressões em M (como filtros,
renomeações, junções e assim por diante) em operações em uma fonte de dados bruta
(como SQL, OData e assim por diante). Uma grande parte do poder do Power Query
vem do fato de que o PQ pode converter as operações que um usuário executa por
meio de sua interface do usuário em linguagens complexas de fonte de dados de back-
end ou SQL, sem que o usuário precise conhecer esses idiomas. Os usuários obtêm o
benefício de desempenho das operações de fonte de dados nativas, com a facilidade de
uso de uma interface do usuário em que todas as fontes de dados podem ser
transformadas usando um conjunto comum de comandos.
Como funciona
O Firewall existe para impedir que dados de uma fonte sejam enviados sem querer para
outra fonte. Bastante simples.
Simples... mas confuso. O que é uma partição? O que torna duas fontes de dados
"compatíveis"? E por que o Firewall deve se importar se uma partição deseja acessar
uma fonte de dados e referenciar uma partição?
Caso você não esteja familiarizado com as etapas, pode exibi-las à direita da janela
Editor do Power Query depois de selecionar uma consulta, no painel Etapas Aplicadas.
As etapas acompanham tudo o que você fez para transformar seus dados em sua forma
final.
Isso tudo pode parecer abstrato, então vamos dar uma olhada em um exemplo.
Suponha que você tenha uma consulta chamada Funcionários, que extrai alguns dados
de um banco de dados SQL. Suponha que você também tenha outra consulta
(Referência de Funcionários), que simplesmente faz referência aos Funcionários.
Power Query M
shared Employees = let
Source = Sql.Database(…),
EmployeesTable = …
in
EmployeesTable;
Essas consultas acabarão divididas em duas partições: uma para a consulta Funcionários
e outra para a consulta Referência de Funcionários (que fará referência à partição
Funcionários). Quando avaliadas com o Firewall ativado, essas consultas serão reescritas
da seguinte maneira:
Power Query M
Observe que a referência simples à consulta Funcionários foi substituída por uma
chamada para Value.Firewall , que é fornecida com o nome completo da consulta
Funcionários.
É assim que o Firewall mantém o controle sobre os dados que fluem entre partições.
Para que a consulta de fontes de dados que tem partição única e duas fontes de dados
tenha permissão para ser executada, suas duas fontes de dados devem ser
"compatíveis". Em outras palavras, é preciso que os dados sejam compartilhados
bidirecionalmente entre eles. Isso significa que os níveis de privacidade de ambas as
fontes precisam ser Públicos, ou ambas serem Organizacionais, pois essas são as duas
únicas combinações que permitem o compartilhamento em ambas as direções. Se
ambas as fontes estiverem marcadas como Privadas, ou uma estiver marcada como
Pública e outra como Organizacional, ou se estiverem marcadas usando alguma outra
combinação de níveis de privacidade, o compartilhamento bidirecional não será
permitido e, portanto, não será seguro que ambas sejam avaliadas na mesma partição.
Isso significaria que o vazamento de dados não seguro poderia ocorrer (devido à dobra)
e o Firewall não teria como impedi-lo.
have privacy levels which cannot be used together. Please rebuild this data
combination.
Espero que agora você entenda melhor uma das mensagens de erro listadas no início
deste artigo.
Como você viu anteriormente, quando uma partição faz referência a outra partição, o
Firewall atua como o porteiro para todos os dados que fluem para a partição. Para fazer
isso, ele deve ser capaz de controlar em quais dados são permitidos. Se houver fontes
de dados sendo acessadas dentro da partição e dados fluindo de outras partições, a
partição perde sua capacidade de ser o gatekeeper, uma vez que os dados que fluem
podem ser vazados para uma das fontes de dados acessadas internamente sem que ela
saiba. Assim, o Firewall impede que uma partição que acessa outras partições tenha
permissão para acessar diretamente quaisquer fontes de dados.
Então, o que acontece se uma partição tentar referenciar outras partições e também
acessar diretamente fontes de dados?
Agora, vamos entender a outra mensagem de erro listada no início deste artigo.
Partições detalhadas
Como você provavelmente pode adivinhar pelas informações acima, como as consultas
são particionadas acaba sendo incrivelmente importante. Se você tiver algumas etapas
que estão fazendo referência a outras consultas e outras etapas que acessam fontes de
dados, agora você espera reconhecer que desenhar os limites de partição em
determinados locais causará erros de Firewall, ao mesmo tempo que desenhá-los em
outros locais permitirá que sua consulta seja executada muito bem.
Esta seção é provavelmente a mais importante para entender por que você está vendo
erros de Firewall e entender como resolvê-los (quando possível).
Particionamento inicial
Cria uma partição para cada etapa em cada consulta
Fase Estática
Essa fase não depende dos resultados da avaliação. Em vez disso, ela se baseia
em como as consultas são estruturadas.
Corte de parâmetro
Corta partições por parâmetro, ou seja, qualquer uma que:
Não faz referência a nenhuma outra partição
Não contém invocações de função
Não é cíclica (ou seja, não se refere a si mesma)
Observe que "remover" uma partição inclui em qualquer outra partição
que a referencie.
Cortar partições de parâmetro permite que as referências de parâmetro
usadas nas chamadas de função de fonte de dados (por exemplo,
Web.Contents(myUrl) ) funcionem, em vez de gerar erros "a partição não
As três consultas
Aqui está o código M para as três consultas usadas neste exemplo.
Power Query M
Power Query M
in
#"Changed Type";
Power Query M
Source = Sql.Databases(DbServer),
AdventureWorks = Source{[Name="AdventureWorks"]}[Data],
HumanResources_Employee =
AdventureWorks{[Schema="HumanResources",Item="Employee"]}[Data],
in
#"Expanded Contacts";
Vamos supor
Porém, por uma questão de ilustração, vamos examinar o que aconteceria se a consulta
Contatos, em vez de vir de um arquivo de texto, fosse codificada no M (talvez por meio
da caixa de diálogo Inserir dados).
Nesse caso, a consulta Contatos não acessaria nenhuma fonte de dados. Assim, ela seria
cortada durante a primeira parte da fase dinâmica.
Com a partição Contatos removida, as duas últimas etapas dos Funcionários não
referenciam mais nenhuma partição, exceto aquela que contém as três primeiras etapas
dos Funcionários. Assim, as duas partições seriam agrupadas.
Imagine que você deseja pesquisar um nome de empresa do serviço Northwind OData
e, em seguida, usar o nome da empresa para executar uma pesquisa do Bing.
Primeiro, você cria uma consulta da Empresa para recuperar o nome da empresa.
Power Query M
let
Source =
OData.Feed("https://services.odata.org/V4/Northwind/Northwind.svc/", null,
[Implementation="2.0"]),
Customers_table = Source{[Name="Customers",Signature="table"]}[Data],
CHOPS = Customers_table{[CustomerID="CHOPS"]}[CompanyName]
in
CHOPS
Em seguida, você cria uma consulta de Pesquisa que faz referência à Empresa e a passa
para o Bing.
Power Query M
let
Source = Text.FromBinary(Web.Contents("https://www.bing.com/search?q=" &
Company))
in
Source
so it may not directly access a data source. Please rebuild this data combination.
Isso ocorre porque a etapa de origem da Pesquisa está fazendo referência a uma fonte
de dados (bing.com) e também fazendo referência a outra consulta/partição (Empresa).
Está violando a regra mencionada acima ("uma partição pode acessar fontes de dados
compatíveis ou fazer referência a outras partições, mas não a ambas").
O que fazer? Uma opção é desabilitar completamente o Firewall (por meio da opção
Privacidade rotulada Ignorar os Níveis de Privacidade e potencialmente melhorar o
desempenho). Mas e se você quiser deixar o Firewall habilitado?
Para resolver o erro sem desabilitar o Firewall, você pode combinar Empresa e Pesquisa
em uma única consulta, desta forma:
Power Query M
let
Source =
OData.Feed("https://services.odata.org/V4/Northwind/Northwind.svc/", null,
[Implementation="2.0"]),
Customers_table = Source{[Name="Customers",Signature="table"]}[Data],
CHOPS = Customers_table{[CustomerID="CHOPS"]}[CompanyName],
Search = Text.FromBinary(Web.Contents("https://www.bing.com/search?q=" &
CHOPS))
in
Search
Tudo está acontecendo dentro de uma única partição. Supondo que os níveis de
privacidade das duas fontes de dados sejam compatíveis, o Firewall agora deverá estar
feliz e você não receberá mais um erro.
É isso
Embora haja muito mais que poderia ser dito sobre este tópico, este artigo introdutório
já é longo o suficiente. Espero que ele tenha dado a você uma melhor compreensão do
Firewall e ajude a entender e corrigir erros de Firewall quando encontrá-los no futuro.
Diagnóstico de consulta
Artigo • 23/03/2023
Com o Diagnóstico de Consulta, você pode obter uma melhor compreensão do que o
Power Query está fazendo durante a criação e no momento da atualização no Power BI
Desktop. Embora estejamos expandindo esse recurso no futuro, incluindo a adição da
capacidade de usá-lo durante as atualizações completas, neste momento você pode
usá-lo para entender que tipo de consultas você está emitindo, quais lentidões você
pode encontrar durante a criação de atualização e que tipo de eventos em segundo
plano estão acontecendo.
Por padrão, o Diagnóstico de Consulta pode exigir direitos administrativos para ser
executado (dependendo da política de TI). Se você não conseguir executar o
Diagnóstico de Consulta, abra a página de opções do Power BI e, na guia Diagnóstico,
selecione Habilitar no Editor de Consultas (não requer a execução como
administrador). Essa seleção impede que você possa rastrear o diagnóstico ao fazer
uma atualização completa no Power BI em vez do Editor do Power Query, mas permite
que você o use para visualizar, criar e assim por diante.
Sempre que você inicia o diagnóstico, o Power Query começa a rastrear as avaliações
que você causou. A avaliação que a maioria dos usuários imagina é aquela em que você
pressiona atualizar ou quando recupera dados pela primeira vez, mas há muitas ações
que podem causar avaliações, dependendo do conector. Por exemplo, com o conector
de SQL, quando você recupera uma lista de valores a serem filtrados, isso também inicia
uma avaliação, mas ela não se associa a uma consulta do usuário e isso é representado
no diagnóstico. Outras consultas geradas pelo sistema podem incluir o navegador ou a
experiência de obter dados.
Quando você pressiona Etapa de Diagnóstico, o Power Query executa uma avaliação
especial apenas da etapa que você está olhando. Em seguida, ele mostra o diagnóstico
dessa etapa, sem mostrar o diagnóstico de outras etapas da consulta. Isso pode levar
mais facilmente a uma visão limitada sobre um problema.
Tipos de diagnóstico
Atualmente, fornecemos três tipos de diagnóstico, um dos quais tem dois níveis de
detalhes.
O primeiro desses diagnósticos são os diagnósticos primários, que têm uma visão
detalhada e uma visão resumida. A visão resumida tem como objetivo fornecer um
insight imediato de como o tempo está sendo gasto em sua consulta. A visão detalhada
é muito mais aprofundada, linha por linha e é, em geral, necessária apenas para um
diagnóstico sério por usuários de energia.
Para esse modo de exibição, alguns recursos, como a coluna Consulta da Fonte de
Dados, estão disponíveis apenas em determinados conectores. Trabalharemos para
estender a amplitude desta cobertura no futuro.
7 Observação
O Power Query pode executar avaliações que talvez você não tenha disparado
diretamente. Algumas dessas avaliações são realizadas para recuperar metadados
para que possamos otimizar ainda mais nossas consultas ou fornecer uma melhor
experiência do usuário (como recuperar a lista de valores distintos dentro de uma
coluna exibida na experiência Filtrar Linhas). Outras podem estar relacionadas a
como um conector lida com avaliações paralelas. Ao mesmo tempo, se você vir
consultas repetidas em seu diagnóstico de consulta, que você acredita que não
fazem sentido, não hesite em entrar em contato por meio de canais de suporte
normais – seus comentários servem para melhorarmos nosso produto.
Para oferecer um desempenho mais alto, atualmente ocorre algum cache para que não
seja necessário executar novamente todas as partes do plano da consulta final à medida
que ele volta nas etapas. Embora esse cache seja útil para a criação normal, ele significa
que nem sempre você obterá as informações de comparação de etapas corretas, devido
às avaliações posteriores que efetuam pull de dados armazenados em cache.
Esquema de diagnóstico
Id
Ao analisar os resultados de uma gravação, é importante filtrar a sessão de gravação
por ID, para que colunas como % de Duração Exclusiva façam sentido.
Para resumir, se você começar a gravar, pressionar a avaliação uma vez e interromper a
gravação, você terá alguns números de IDs em seu diagnóstico. Mas, como você só
realizou uma ação, todos eles serão 1.1, 1.2, 1.3, e assim por diante.
A combinação da activityId e da evaluationId, separadas pelo ponto, fornece um
identificador exclusivo para uma avaliação de uma única sessão de gravação.
Consulta
O nome da Consulta no painel à esquerda do editor do Power Query.
Etapa
O nome da Etapa no painel à direita do editor do Power Query. Itens como menus
suspensos de filtro geralmente associam-se à etapa em que você está filtrando, mesmo
que você não esteja atualizando a etapa.
Categoria
A categoria da operação.
Operação
A operação real que está sendo executada. Essa operação pode incluir o trabalho do
avaliador, a abertura de conexões, o envio de consultas para a fonte de dados e muito
mais.
Hora de início
A hora em que a operação começou.
Hora de término
A hora em que a operação terminou.
Duração exclusiva
O tempo absoluto, em vez do % da duração exclusiva. A duração total (ou seja, duração
exclusiva + tempo em que o evento estava inativo) de uma avaliação pode ser calculada
por meio de uma dessas maneiras:
Recurso
O recurso que você está acessando para dados. O formato exato desse recurso depende
da fonte de dados.
Em geral, você não deve se preocupar com o número de Consultas de Fonte de Dados
emitidas, a menos que haja motivos específicos para se preocupar. Em vez disso, você
deve se concentrar em verificar se o conteúdo adequado está sendo recuperado. Essa
coluna também pode ajudar a determinar se a avaliação do Power Query foi totalmente
dobrada.
Informações adicionais
Há muitas informações recuperadas por nossos conectores. Grande parte é irregular e
não se encaixa bem em uma hierarquia de colunas padrão. Essas informações são
colocadas em um registro na coluna de informações adicionais. Informações registradas
de conectores personalizados também aparecem aqui.
Contagem de linhas
O número de linhas retornadas por uma Consulta de Fonte de Dados. Não habilitada
em todos os conectores.
Comprimento do conteúdo
Comprimento do conteúdo retornado por Solicitações HTTP, conforme normalmente
definido. Isso não está habilitado em todos os conectores e não será preciso para
conectores que recuperam solicitações em partes.
É consulta de usuário
Um valor booliano que indica se é uma consulta criada pelo usuário e se está presente
no painel à esquerda ou se foi gerada por alguma outra ação do usuário. Outras ações
do usuário podem incluir itens como seleção de filtro ou uso do navegador na
experiência de obter dados.
Caminho
O caminho representa a rota relativa da operação quando exibido como parte de uma
árvore de intervalo para todas as operações dentro de uma única avaliação. Na parte
superior (raiz) da árvore, há uma única operação chamada Avaliação com o caminho "0".
A hora de início dessa avaliação corresponde ao início dessa avaliação como um todo. A
hora de término dessa avaliação mostra quando toda a avaliação foi concluída. Essa
operação de alto nível tem uma duração exclusiva igual a 0, pois sua única finalidade é
servir como a raiz da árvore.
Operações adicionais ramificam da raiz. Por exemplo, uma operação pode ter "0/1/5"
como um caminho. Esse caminho seria entendido como:
0: raiz da árvore
1: pai da operação atual
5: índice da operação atual
A operação "0/1/5" pode ter um nó filho, nesse caso, o caminho teria o formato
"0/1/5/8", com 8 representando o índice do filho.
ID do Grupo
A combinação de duas (ou mais) operações não ocorrerá se isso levar à perda de
detalhes. O agrupamento foi projetado para aproximar "comandos" executados durante
a avaliação. Na exibição detalhada, várias operações compartilham uma ID de Grupo,
correspondente aos grupos agregados na exibição Resumida.
Assim como acontece com a maioria das colunas, a ID do grupo só é relevante dentro
de uma avaliação específica, conforme filtrado pela coluna ID.
Id
O mesmo que a ID dos outros resultados de diagnóstico de consulta. A parte inteira
representa uma única ID de atividade, enquanto a parte fracionária representa uma
única avaliação.
Chave de partição
Corresponde à Consulta/Etapa usada como uma partição de firewall.
Grupo de firewall
Categorização que explica por que essa partição deve ser avaliada separadamente,
incluindo detalhes sobre o nível de privacidade da partição.
Recursos acessados
Lista de caminhos de recursos para todos os recursos acessados por essa partição e, em
geral, identifica exclusivamente uma fonte de dados.
Entradas de partição
Lista de chaves de partição das quais a partição atual depende (essa lista pode ser usada
para criar um grafo).
Expression
A expressão que é avaliada sobre a consulta/etapa da partição. Em vários casos,
coincide com a consulta/etapa.
Hora de início
Hora em que a avaliação foi iniciada nessa partição.
Hora de término
Hora em que a avaliação terminou nessa partição.
Duração
Um valor derivado de Hora de Término menos Hora de Início.
Duração exclusiva
Se as partições tiverem que ser executadas em um único thread, a duração exclusiva
será a duração "real" que pode ser atribuída a essa partição.
Diagnósticos
Essa coluna só aparece quando o diagnóstico de consulta "Agregado" ou "Detalhado"
também é capturado, permitindo que o usuário faça a correspondência entre as duas
saídas de diagnóstico.
% de tempo do processador
Percentual do tempo gasto pelos processadores na consulta. Esse percentual pode
alcançar acima de 100% devido a vários processadores.
Commit (bytes)
Quantidade de memória virtual reservada pela avaliação.
Leituras adicionais
Como gravar o diagnóstico em vários casos de uso
Ao criar no Power Query, o fluxo de trabalho básico é que você se conecta a uma fonte
de dados, aplica algumas transformações, possivelmente atualiza os dados no editor do
Power Query e, em seguida, carrega-os no modelo do Power BI. Depois que os dados
estão no modelo do Power BI, você poderá atualizá-lo de tempos em tempos no Power
BI Desktop (se estiver usando o Desktop para exibir a análise), além das atualizações
que você faz no serviço.
Há duas opções principais aqui, "Diagnosticar Etapa" e "Iniciar Diagnóstico" (junto com
"Parar Diagnóstico"). A primeira fornecerá informações sobre uma consulta até uma
etapa selecionada e tem maior utilidade para entender quais operações estão sendo
executadas localmente ou remotamente em uma consulta. A última fornece mais
informações sobre uma variedade de outros casos, discutidos abaixo.
Especificações do conector
É importante mencionar que não há como abordar todas as variantes do que você verá
no Diagnóstico de Consulta. Há muitas coisas que podem mudar exatamente o que
você vê nos resultados:
Connector
Transformações aplicadas
Sistema no qual você está executando
Configuração de rede
Opções de configuração avançadas
Configuração do ODBC
Iniciar/parar o diagnóstico
"Iniciar Diagnóstico" e "Parar Diagnóstico" são mais amplamente aplicáveis do que
"Diagnosticar Etapa", mas também fornecerão muito mais informações que você
precisará vasculhar. Por exemplo, a sequência de iniciar um diagnóstico, atualizar uma
visualização e parar, fornecerá informações equivalentes à execução de Diagnosticar
Etapa em cada etapa (pois é como o Power Query funciona no editor para atualizar cada
etapa de maneira independente).
Criação
A principal diferença do fluxo de trabalho de criação é que ele geralmente gerará mais
avaliações individuais do que as vistas em outros fluxos de trabalho. Conforme discutido
no artigo Diagnóstico de Consulta principal, elas são resultado do preenchimento de
várias interfaces do usuário, como o navegador ou as listas suspensas de filtro.
Vamos fazer um exemplo passo a passo. Estamos usando o conector do OData neste
exemplo, mas ao revisar a saída, também examinaremos a versão do SQL do mesmo
banco de dados. Para ambas as fontes de dados, vamos nos conectar à fonte de dados
por meio de "Nova Fonte", "Fontes Recentes" ou "Obter Dados". Para a conexão do SQL,
você precisará inserir credenciais para o servidor, mas para o ponto de extremidade do
OData público, você inserir o ponto de extremidade vinculado acima.
Depois de se conectar e escolher a autenticação, selecione a tabela Clientes no serviço
OData.
Isso apresentará a tabela Clientes na interface do Power Query. Digamos que queremos
saber quantos Representantes de Vendas existem em diferentes países. Primeiro, clique
com o botão direito do mouse em Representante de Vendas na coluna Título do
Contato , mouse sobre Filtros de Texto e selecione Igual a.
Agora, selecione Agrupar Por na faixa de opções e faça um agrupamento por País, com
sua agregação sendo uma Contagem.
Por fim, navegue de volta para a guia Ferramentas da Faixa de Opções e selecione Parar
Diagnóstico. Isso interromperá o rastreamento e criará o arquivo de diagnóstico para
você; o resumo e as tabelas detalhadas aparecerão no lado esquerdo.
Se você rastrear uma sessão de criação inteira, normalmente vai esperar algo como uma
avaliação de consulta de origem, avaliações relacionadas ao navegador pertinente
e,pelo menos, uma consulta emitida para cada etapa que você aplicar (possivelmente
mais, dependendo das ações exatas de UX executadas). Em alguns conectores,
ocorrerão avaliações paralelas por questões de desempenho, as quais produzirão
conjuntos de dados muito semelhantes.
Atualizar visualização
Quando terminar de transformar os dados, você terá uma sequência de etapas em uma
consulta. Ao pressionar "Atualizar Visualização" ou "Atualizar Tudo" no editor do Power
Query, você não verá apenas uma etapa no diagnóstico de consulta. O motivo disso é
que a atualização no Editor do Power Query atualiza explicitamente a consulta que
termina com a última etapa aplicada e, em seguida, retorna pelas etapas aplicadas e
atualiza para a consulta até esse ponto, de volta à origem.
Isso significa que, se você tiver cinco etapas em sua consulta, incluindo Origem e
Navegador, vai querer ver cinco avaliações diferentes em seu diagnóstico. A primeira,
cronologicamente, muitas vezes (mas nem sempre) levará mais tempo. Isso pode
acontecer por dois motivos diferentes:
Observe que, ao falar sobre "Atualizar Tudo", isso atualizará todas as consultas e você
precisará filtrar para obter as que você se interessa, como era de se esperar.
Atualização completa
O Diagnóstico de Consulta pode ser usado para diagnosticar a chamada "consulta final",
emitida durante a Atualização no Power BI, em vez de usar apenas a experiência do
Editor do Power Query. Para fazer isso, primeiro você precisa carregar os dados no
modelo uma vez. Se você estiver planejando fazer isso, certifique-se de perceber que, se
você selecionar Fechar e Aplicar , a janela do editor será fechada (interrompendo o
rastreamento) para que você precise fazer isso na segunda atualização ou selecione o
ícone suspenso em Fechar e Aplicar e selecione Aplicar em vez disso.
De qualquer forma, selecione Iniciar Diagnóstico na seção Diagnóstico da guia
Ferramentas no editor. Depois de fazer isso, atualize seu modelo ou apenas a tabela na
qual você tem interesse.
É importante observar que, apenas porque você vê um recurso (banco de dados, ponto
de extremidade da Web etc.) ou uma consulta de fonte de dados em seu diagnóstico,
isso não significa que ele esteja necessariamente executando atividade de rede. O Power
Query pode recuperar essas informações do próprio cache. Em atualizações futuras,
indicaremos se as informações estão ou não sendo recuperadas do cache para facilitar o
diagnóstico.
Etapa diagnosticar
"Diagnosticar Etapa" tem maior utilidade para obter insights de quais avaliações estão
acontecendo, até mesmo em uma única etapa, o que poderá ajudá-lo a identificar, até
essa etapa, como está o desempenho, bem como quais partes da consulta estão sendo
executadas localmente ou remotamente.
Se você usou "Diagnosticar Etapa" na consulta que criamos acima, verá que ela retorna
por volta de apenas 10 linhas e, se examinarmos a última linha com uma Consulta de
Fonte de Dados, poderemos ter uma boa ideia de qual será a nossa consulta final
emitida para a fonte de dados. Nesse caso, veremos que Representante de Vendas foi
filtrado remotamente, mas o agrupamento (por processo de eliminação) ocorreu
localmente.
Leituras adicionais
Uma introdução ao recurso
Introdução
Depois de registrar o diagnóstico que deseja usar, a próxima etapa é conseguir
entender o que eles dizem.
É útil ter uma boa compreensão do que exatamente cada coluna no esquema de
diagnóstico de consulta significa, o que não vamos repetir neste breve tutorial. Há um
texto completo sobre isso aqui.
Criando as visualizações
Quando você está passando por rastreamentos, há muitas maneiras de avaliá-los. Neste
artigo, vamos nos concentrar em duas divisões de visualização: uma para mostrar os
detalhes que você se importa e a outra para examinar facilmente as contribuições de
tempo de vários fatores. Para a primeira visualização, uma tabela é usada. Você pode
escolher os campos que quiser, mas os recomendados para uma visão fácil e de alto
nível do que está acontecendo são:
Id
Start Time
Consulta
Step
Consulta da Fonte de Dados
Percentual da duração exclusiva
Contagem de Linhas
Categoria
Consulta Usuário é
Caminho
Depois que a visualização for criada, certifique-se de classificar por " Hora de Início Mais
Cedo" em ordem crescente para que você possa ver a ordem em que as coisas
acontecem.
Embora suas necessidades exatas possam ser diferentes, essa combinação de gráficos é
um bom lugar para começar a examinar vários arquivos de diagnóstico e para uma série
de finalidades.
Interpretando as visualizações
Conforme mencionado acima, há muitas perguntas que você pode tentar responder
com o diagnóstico de consulta, mas as duas que vemos com mais frequência estão
perguntando quanto tempo é gasto e perguntando qual é a consulta enviada à origem.
Perguntar como o tempo é gasto é fácil e será semelhante para a maioria dos
conectores. Um aviso com o diagnóstico de consulta, conforme mencionado em outro
lugar, é que você verá funcionalidades drasticamente diferentes dependendo do
conector. Por exemplo, muitos conectores baseados em ODBC não terão uma gravação
precisa de qual consulta é enviada para o sistema de back-end real, pois Power Query
só vê o que ele envia para o driver ODBC.
Agora, como os valores de tempo para as consultas de exemplo que estamos usando
aqui são tão pequenos, se quisermos trabalhar com o tempo de relatórios do Power BI,
é melhor converter a coluna De Duração Exclusiva em 'Segundos' no editor de Power
Query. Depois de fazermos essa conversão, podemos examinar nosso gráfico e ter uma
ideia decente de onde o tempo é gasto.
Para meus resultados do OData, vejo na imagem que a grande maioria do tempo foi
gasto recuperando os dados da origem— se eu selecionar o item 'Fonte de Dados' na
legenda, ele me mostrará todas as diferentes operações relacionadas ao envio de uma
consulta à Fonte de Dados.
Como acima, podemos selecionar a categoria 'Fonte de Dados' na legenda para ver as
consultas emitidas.
Pesquisando os dados
Examinando caminhos
Quando você está olhando para isso, se parece que o tempo gasto é estranho, por
exemplo, na consulta OData, você pode ver que há uma consulta de fonte de dados
com o seguinte valor:
Request:
https://services.odata.org/V4/Northwind/Northwind.svc/Customers?
$filter=ContactTitle%20eq%20%27Sales%20Representative%27&$select=CustomerID%
2CCountry HTTP/1.1
Content-Type:
application/json;odata.metadata=minimal;q=1.0,application/json;odata=minimal
metadata;q=0.9,application/atomsvc+xml;q=0.8,application/atom+xml;q=0.8,appl
ication/xml;q=0.7,text/plain;q=0.7
<Content placeholder>
Response:
Content-Type:
application/json;odata.metadata=minimal;q=1.0,application/json;odata=minimal
metadata;q=0.9,application/atomsvc+xml;q=0.8,application/atom+xml;q=0.8,appl
ication/xml;q=0.7,text/plain;q=0.7
Content-Length: 435
<Content placeholder>
Essa Consulta de Fonte de Dados está associada a uma operação que ocupa apenas,
digamos, 1% da Duração Exclusiva. Enquanto isso, há um semelhante:
Request:
GET https://services.odata.org/V4/Northwind/Northwind.svc/Customers?
$filter=ContactTitle eq 'Sales Representative'&$select=CustomerID%2CCountry
HTTP/1.1
Response:
https://services.odata.org/V4/Northwind/Northwind.svc/Customers?
$filter=ContactTitle eq 'Sales Representative'&$select=CustomerID%2CCountry
HTTP/1.1 200 OK
Essa Consulta de Fonte de Dados está associada a uma operação que ocupa quase 75%
da Duração Exclusiva. Se você ativar o Caminho, descobrirá que o último é na verdade
um filho do primeiro. Isso significa que a primeira consulta basicamente adicionou uma
pequena quantidade de tempo por conta própria, com a recuperação de dados real
sendo rastreada pela consulta 'interna'.
São valores extremos, mas estão dentro dos limites do que pode ser visto.
Entender a dobragem com o
Diagnóstico de Consulta
Artigo • 03/04/2023
Uma das razões mais comuns para usar o Diagnóstico de Consulta é obter uma visão
melhor de quais operações foram "empurradas" pelo Power Query para serem
executadas pela fonte de dados de back-end, operação também conhecida como
"dobragem". Se quisermos ver o que foi dobrado, podemos examinar quais consultas
"mais específicas" foram enviadas para a fonte de dados de back-end. Podemos
examinar isso tanto no ODATA quanto no SQL.
Request:
GET https://services.odata.org/V4/Northwind/Northwind.svc/Customers?
$filter=ContactTitle eq 'Sales Representative'&$select=CustomerID%2CCountry
HTTP/1.1
Response:
https://services.odata.org/V4/Northwind/Northwind.svc/Customers?
$filter=ContactTitle eq 'Sales Representative'&$select=CustomerID%2CCountry
HTTP/1.1 200 OK
Podemos ver que estamos filtrando a tabela para ContactTitle igualando 'Representante
de Vendas', e estamos retornando apenas duas colunas: ID do cliente e País. O país,
obviamente, é necessário para o agrupamento que, como não está sendo executado
pelo ponto de extremidade do ODATA, deve ser executado localmente. Podemos chegar
à conclusão do que dobra e do que não dobra aqui.
Da mesma forma, se examinarmos a consulta específica e final produzida no diagnóstico
do SQL, veremos algo ligeiramente diferente:
select
count(1) as [Count]
from
(
select [_].[Country]
from [dbo].[Customers] as [_]
where [_].[ContactTitle] = 'Sales Representative' and [_].[ContactTitle]
is not null
) as [rows]
group by [Country]
Aqui, podemos ver que o Power Query criou uma subseleção em que ContactTitle foi
filtrado para "Representante de Vendas" e depois agrupou por País nesta subseleção.
Todas as nossas operações foram dobradas.
Durante a atualização no Power Query, há muito sendo feito nos bastidores para tentar
oferecer uma experiência suave ao usuário e executar suas consultas com eficiência e
segurança. No entanto, em alguns casos, você pode observar que várias solicitações de
fonte de dados estão sendo disparadas pelo Power Query quando os dados são
atualizados. Às vezes, essas solicitações são normais, mas outras vezes podem ser
evitadas.
Design do conector
Os conectores podem fazer várias chamadas a uma fonte de dados por vários motivos,
incluindo metadados, cache de resultados, paginação e assim por diante. Esse
comportamento é normal e foi projetado para funcionar dessa forma.
Dobragem
Às vezes, a camada de dobragem do Power Query pode gerar várias solicitações a uma
fonte de dados, com base nas operações que estão sendo executadas downstream.
Nesses casos, você pode evitar várias solicitações usando Table.Buffer . Para mais
informações: Colocar sua tabela em buffer
Neste exemplo, você terá apenas uma única avaliação da M que acontecerá quando
você atualizar a visualização do editor do Power Query. Se as solicitações duplicadas
ocorrerem neste ponto, elas serão inerentes de alguma forma à maneira como a
consulta é criada. Caso contrário, e se você habilitar as configurações acima uma a uma,
poderá observar em que ponto as solicitações duplicadas começam a ocorrer.
Executar o teste
Para executar o teste, faça uma atualização no editor do Power Query.
Uso de parâmetros
Artigo • 23/03/2023
Propriedades do parâmetro
Um parâmetro armazena um valor que pode ser usado para transformações no Power
Query. Além do nome do parâmetro e do valor armazenado, ele também tem outras
propriedades que fornecem metadados. As propriedades de um parâmetro são:
Qualquer valor: o valor atual pode ser qualquer valor inserido manualmente.
Lista de valores: fornece uma experiência simples como tabela, para que você
possa definir uma lista de valores sugeridos que podem ser selecionados
posteriormente para o Valor Atual. Quando essa opção for selecionada, uma
nova opção chamada Valor Padrão será disponibilizada. A partir daqui, você
pode selecionar o que deve ser o valor padrão para esse parâmetro, que é o
valor padrão mostrado ao usuário ao referenciar o parâmetro. Esse valor não é
igual ao Valor Atual, que é o valor armazenado dentro do parâmetro e pode ser
passado como um argumento nas transformações. Usar a Lista de valores abre
um menu suspenso exibido nos campos Valor Padrão e Valor Atual, no qual
você pode escolher um dos valores na lista de valores sugeridos.
7 Observação
Você ainda pode digitar manualmente qualquer valor que deseja passar
para o parâmetro. A lista de valores sugeridos serve apenas como
sugestões simples.
Consulta: usa uma consulta de lista (uma consulta cuja saída é uma lista) para
fornecer a lista de valores sugeridos que você pode selecionar posteriormente
para o Valor Atual.
Nas próximas seções, você verá um exemplo para esses dois cenários.
Argumento de etapa
Para habilitar esse recurso, primeiro acesse a guia Exibir, no editor de Power Query, e
selecione a opção Sempre permitir no grupo Parâmetros.
Neste exemplo, crie um novo parâmetro com o nome Margem Mínima, com um tipo
Número Decimal e um Valor Atual de 0,2.
Acesse a consulta Pedidos e, no campo Margem, selecione a opção de filtro Maior que.
Na janela Filtrar Linhas, há um botão com um tipo de dados para o campo selecionado.
Selecione a opção Parâmetro no menu suspenso desse botão. Na seleção de campo ao
lado do botão de tipo de dados, selecione o parâmetro que você deseja passar para
esse argumento. Nesse caso, é o parâmetro Margem Mínima.
Depois de selecionar OK, a tabela será filtrada usando o Valor Atual para o parâmetro.
Se você modificar o Valor Atual do parâmetro Margem Mínima para 0,3, a consulta de
pedidos será atualizada imediatamente e mostrará apenas as linhas em que a Margem
está acima de 30%.
Dica
Para testar essa nova função, insira um valor, como 0,4, no campo abaixo do rótulo
Margem Mínima. Em seguida, selecione o botão Invocar. Isso cria uma nova consulta
com o nome Função Invocada, e o valor 0,4 passa efetivamente a ser usado como o
argumento para a função, mostrando apenas as linhas em que a margem está acima de
40%.
Para saber mais sobre como criar funções personalizadas, acesse Criar uma função
personalizada.
Seguindo o exemplo anterior, altere o valor atual em Margem Mínima de 0,3 para 0,1. A
nova meta é criar um parâmetro de lista que possa conter os números dos pedidos em
que você está interessado para análise. Para criar o novo parâmetro, vá para a caixa de
diálogo Gerenciar Parâmetros e selecione Novo, para criar um novo parâmetro.
Preencha esse novo parâmetro com as seguintes informações:
Depois de definir esses campos, será exibida uma nova grade em que você pode inserir
os valores que deseja armazenar para o parâmetro. Nesse caso, esses valores são 125,
777 e 999.
7 Observação
Embora esse exemplo use números, você também pode armazenar outros tipos de
dados na lista, como texto, datas, datetime e muito mais. Para obter mais
informações: Tipos de dados no Power Query
Dica
Se você quiser ter mais controle sobre quais valores são usados no parâmetro de
lista, sempre pode criar uma lista com valores constantes e converter a consulta de
lista em um parâmetro, conforme mostrado anteriormente neste artigo.
7 Observação
Semelhante a como o Excel e a linguagem DAX têm uma função IFERROR , o Power
Query tem sua própria sintaxe para testar e capturar erros.
Conforme mencionado no artigo sobre como lidar com erros no Power Query, erros
podem aparecer na etapa ou no nível da célula. Este artigo se concentrará em como
você pode capturar e gerenciar erros com base em sua própria lógica específica.
7 Observação
Para demonstrar esse conceito, este artigo usará uma Pasta de Trabalho do Excel
como sua fonte de dados. Os conceitos mostrados aqui se aplicam a todos os
valores no Power Query e não apenas aos provenientes de uma pasta de trabalho
do Excel.
A fonte de dados de exemplo para essa demonstração é uma Pasta de Trabalho do Excel
com a tabela a seguir.
Esta tabela de uma pasta de trabalho do Excel tem erros do Excel, como #NULL!, #REF!,
e #DIV/0! na coluna Taxa Padrão. Quando você importa essa tabela para o editor de
Power Query, a imagem a seguir mostra como ela ficará.
Observe como os erros da pasta de trabalho do Excel são mostrados com o valor
[Error] em cada uma das células.
Neste artigo, você aprenderá a substituir um erro por outro valor. Além disso, você
também aprenderá a capturar um erro e usá-lo para sua própria lógica específica.
Nesse caso, a meta é criar uma nova coluna Taxa Final que usará os valores da coluna
Taxa Padrão. Se houver erros, ele usará o valor da coluna Taxa Especial correspondente.
Para criar uma nova coluna personalizada, vá para o menu Adicionar coluna e selecione
Coluna personalizada. Na janela Coluna personalizada, insira a fórmula try [Standard
Rate] otherwise [Special Rate] . Nomeie esta nova coluna como Taxa Final.
A fórmula acima tentará avaliar a coluna Taxa Padrão e gerará seu valor se nenhum erro
for encontrado. Se forem encontrados erros na coluna Taxa Padrão, a saída será o valor
definido após a instrução otherwise , que nesse caso é a coluna Taxa Especial.
Depois de adicionar os tipos de dados corretos a todas as colunas na tabela, a imagem
a seguir mostra a aparência da tabela final.
7 Observação
Como uma abordagem alternativa, você também pode inserir a fórmula try
[Standard Rate] catch ()=> [Special Rate] , que é equivalente à fórmula anterior,
mas usando a palavra-chave com uma função que não requer parâmetros.
7 Observação
Você pode expandir essa coluna recém-criada com valores de registro e examinar os
campos disponíveis a serem expandidos selecionando o ícone ao lado do cabeçalho da
coluna.
Esta operação exporá três novos campos:
All Errors.HasError — exibe se o valor da coluna Taxa Padrão teve um erro ou não.
All Errors.Value — se o valor da coluna Taxa Padrão não tiver nenhum erro, essa
coluna exibirá o valor da coluna Taxa Padrão. Para valores com erros, esse campo
não estará disponível e, durante a operação de expansão, essa coluna terá null
valores.
All Errors.Error — se o valor da coluna Taxa Padrão não tiver nenhum erro, essa
coluna exibirá o valor da coluna Taxa Padrão. Para valores sem erros, esse campo
não estará disponível e, durante a operação de expansão, essa coluna terá null
valores.
Para uma investigação mais aprofundada, você pode expandir a coluna All Errors.Error
para obter os três componentes do registro de erro:
Motivo do erro
Mensagem de erro
Detalhes do erro
Agora, com cada mensagem de erro em uma nova coluna, você pode criar uma nova
coluna condicional com o nome Taxa Final e as seguintes cláusulas:
Se o valor na coluna All Errors.Errors.Message for igual null , a saída será o valor
da coluna Taxa Padrão .
Caso contrário, se o valor na coluna Todos os Erros.Errors.Message não for igual
Invalid cell value '#REF!'. a , a saída será o valor da coluna Taxa Especial .
Caso contrário, será nulo.
Depois de manter apenas as colunas Conta, Taxa Padrão, Taxa Especial e Taxa Final e
adicionar o tipo de dados correto para cada coluna, a imagem a seguir demonstra a
aparência da tabela final.
Usar try e catch com lógica personalizada
Como alternativa, você também pode criar uma nova coluna personalizada usando as
palavras-chave try e catch .
try [Standard Rate] catch (r)=> if r[Message] <> "Invalid cell value '#REF!'." then
Mais recursos
Entender e trabalhar com erros no Power Query
Adicionar uma coluna personalizada no Power Query
Adicionar uma coluna condicional no Power Query
Importar dados de um banco de dados
usando a consulta de banco de dados
nativa
Artigo • 05/10/2023
7 Observação
Uma das intenções das consultas de banco de dados nativas é ser livre de efeitos
colaterais. No entanto, o Power Query não garante que a consulta não afetará o
banco de dados. Se você executar uma consulta de banco de dados nativa escrita
por outro usuário, será indagado se está ciente das consultas que serão avaliadas
com suas credenciais. Para obter mais informações, confira Segurança de consulta
de banco de dados nativa.
O Power Query permite especificar sua consulta de banco de dados nativo em uma
caixa de texto em Opções avançadas ao se conectar a um banco de dados. No exemplo
abaixo, você importará dados de um banco de dados do SQL Server usando uma
consulta de banco de dados nativa inserida na caixa de texto Instrução SQL. O
procedimento é semelhante em todos os outros bancos de dados com consulta de
banco de dados nativa às quais o Power Query dá suporte.
7 Observação
Se você não tiver acesso à fonte de dados (Servidor e Banco de dados), verá
um prompt para solicitar acesso ao servidor e ao banco de dados (se as
informações de solicitação de acesso à fonte de dados forem especificadas no
Power BI).
Modele os dados de acordo como preferir e selecione Aplicar & Fechar para salvar
as alterações e importar os dados.
DataWorld.Dataset dwSQL
Limitações e problemas
Antes de usar a consulta de banco de dados nativa, você deve estar ciente das
limitações e problemas que poderão ocorrer.
Dobragem de consultas
A dobra de consultas ao usar uma consulta de banco de dados nativa é limitada a
apenas um determinado número de conectores do Power Query. Para obter mais
informações, vá para Dobramento de consultas em consultas nativas.
Se você vir essa mensagem, selecione Editar Permissão. Essa seleção abrirá a caixa de
diálogo Consulta de Banco de Dados Nativa. Você terá a oportunidade de executar a
consulta de banco de dados nativa ou cancelar a consulta.
Por padrão, se você executar uma consulta de banco de dados nativa fora das caixas de
diálogo de conector, será solicitado sempre que executar um texto de consulta diferente
para garantir que a consulta que será executada seja aprovada por você.
7 Observação
Consultas de banco de dados nativas que você insere em sua operação para obter
dados não perguntarão se você deseja executar a consulta ou não. Elas vão
simplesmente ser executadas.
Se você estiver usando o Excel, na guia Dados, selecione Obter Dados > Opções
de Consulta.
2. Em configurações Globais, selecione Segurança.
4. Selecione OK.
Se você estiver usando o Excel, na guia Dados, selecione Obter Dados >
Configurações da Fonte de Dados.
Este artigo explica como exportar consultas do Excel para um modelo do Power Query,
que depois pode ser importado para o fluxo de dados do Power Platform para criar um
fluxo de dados.
7 Observação
Visão geral
Trabalhar com grandes conjuntos de dados ou consultas de execução demorada pode
ser complicado todas as vezes que você precisar disparar manualmente uma atualização
de dados no Excel, pois essa atualização usa recursos do computador e você precisará
aguardar até que o processamento seja concluído para obter os dados atualizados.
Mover essas operações de dados para um fluxo de dados do Power Platform é uma
maneira eficaz de liberar os recursos do computador e ter os dados mais recentes
facilmente disponíveis para consumir no Excel.
Confira também
Criação e uso de fluxos de dados no Power Apps
Otimizar o Power Query ao expandir as
colunas da tabela
Artigo • 23/03/2023
Esses dados de nível superior são coletados por meio de uma única chamada HTTP à
API do SharePoint (ignorando a chamada de metadados), que você pode ver em
qualquer depurador da Web.
Isso gera o aumento de uma chamada HTTP para cada linha da lista primária. Isso pode
não parecer muito no exemplo acima de cinco ou seis linhas, mas em sistemas de
produção em que as listas do SharePoint alcançam centenas de milhares de linhas, isso
poderá causar uma degradação significativa da experiência.
Primeiro, comece com a tabela original, observando a coluna que você deseja expandir,
garantindo que você tenha a ID do item para que você possa combiná-lo.
Normalmente, a chave estrangeira é nomeada de maneira semelhante ao nome de
exibição da coluna com Id acrescentado. Neste exemplo, ela é LocationId.
Neste exemplo, você pode ver que LocationId na lista primária corresponde à Id na lista
secundária. A interface do usuário renomeia ela para Location.Id para tornar o nome da
coluna exclusivo. Agora, vamos usar essas informações para mesclar as tabelas.
Selecione cada tabela na lista suspensa para ver uma prévia da consulta.
Depois de selecionar ambas as tabelas, selecione a coluna que une as tabelas
logicamente (neste exemplo, ela é a LocationId na tabela primária e Id na tabela
secundária). A caixa de diálogo mostrará quantas linhas são correspondentes ao usar
essa chave estrangeira. Provavelmente você vai querer usar o tipo de junção padrão
(esquerda externa) para esse tipo de dados.
Selecione OK e você verá uma nova consulta, que é o resultado da junção. Agora a
expansão do registro não implica em chamadas adicionais ao back-end.
Essa abordagem pode ser usada em duas tabelas quaisquer no PowerQuery que tenham
uma chave estrangeira correspondente.
7 Observação
As listas de usuários e a taxonomia do SharePoint também estão acessíveis como
tabelas e podem ser unidas exatamente da mesma forma descrita acima, desde
que o usuário tenha privilégios adequados para acessar essas listas.
Habilitar o Microsoft Edge (Chromium)
para autenticação OAuth no Power BI
Desktop
Artigo • 13/05/2023
Se você estiver usando a autenticação OAuth para se conectar aos seus dados, a caixa
de diálogo do OAuth no Power Query usará o navegador de controle inserido do
Microsoft Internet Explorer 11. No entanto, determinados serviços Web, como
QuickBooks Online, Salesforce Reports e Salesforce Objects, não dão mais suporte ao
Internet Explorer 11.
7 Observação
Se você estiver usando uma versão anterior do Power BI, acesse a Versão de
dezembro de 2020 do Power BI.
GitHub
QuickBooks Online
Relatórios do Salesforce
Objetos do Salesforce
Smartsheet
Twilio
Zendesk
Todos os outros conectores usarão o Internet Explorer 11 por padrão, a menos que as
configurações sejam substituídas usando variáveis de ambiente.
A tabela a seguir contém uma lista de todos os conectores atualmente disponíveis para
o Power Query. Para os conectores que têm uma página de referência neste documento,
um link é fornecido sob o ícone e o nome do conector.
Uma marca de seleção indica que o conector tem suporte atualmente no serviço listado;
um X indica que o conector não tem suporte atualmente no serviço listado.
Os conectores são listados em ordem alfabética em tabelas separadas para cada letra
no alfabeto. Use a lista Neste artigo no lado direito deste artigo para ir para qualquer
uma das tabelas em ordem alfabética.
7 Observação
7 Observação
A
Conector Excel Power BI Power Malha Power Cliente Serviços
(Conjuntos BI (fluxo Apps Insights de
de dados) (Fluxos de (Fluxos (fluxos análise
de dados de de
dados) Gen2) dados) dados)
Banco de dados
do Access
Por Microsoft
Active Directory
Por Microsoft
Acterys (Beta)
Por Acterys
Actian (Beta)
Por Actian
Adobe Analytics
Por Microsoft
Amazon Athena
Por Amazon
Serviço Amazon
OpenSearch
Conector Excel Power BI Power Malha Power Cliente Serviços
(Conjuntos BI (fluxo Apps Insights de
de dados) (Fluxos de (Fluxos (fluxos análise
de dados de de
dados) Gen2) dados) dados)
(Beta)
Por Amazon
Amazon Redshift
Por Microsoft
Anaplan
Por Anaplan
appFigures
(Beta)
Por Microsoft
Asana
(Beta)
Por Asana
Assemble Views
Por Autodesk
AtScale cubes
Por Microsoft
Conector Excel Power BI Power Malha Power Cliente Serviços
(Conjuntos BI (fluxo Apps Insights de
de dados) (Fluxos de (Fluxos (fluxos análise
de dados de de
dados) Gen2) dados) dados)
Autodesk
Construction
Cloud
Por Autodesk
Automação
Anywhere
Por Automação
Anywhere
Análise de dados
do
Automy (Beta)
Por ACEROYALTY
Banco de dados
do Azure Analysis
Services
Por Microsoft
Blob do Azure
Armazenamento
Por Microsoft
Azure Cosmos DB
Por Microsoft
Conector Excel Power BI Power Malha Power Cliente Serviços
(Conjuntos BI (fluxo Apps Insights de
de dados) (Fluxos de (Fluxos (fluxos análise
de dados de de
dados) Gen2) dados) dados)
Azure Cosmos
DB v2 (Beta)
Por Microsoft
Gerenciamento
de Custos
do Azure
Por Microsoft
Banco de Dados
do Azure para
PostgreSQL
Por Microsoft
Azure
Databricks
Por Databricks
Azure Data
Explorer
(Kusto)
Por Microsoft
Storage Gen1
Por Microsoft
Azure DevOps
Por Microsoft
Azure DevOps
Servidor
Por Microsoft
Azure HDInsight
(HDFS)
Por Microsoft
Azure HDInsight
on AKS Trino
(Beta)
Por Microsoft
Azure HDInsight
Conector Excel Power BI Power Malha Power Cliente Serviços
(Conjuntos BI (fluxo Apps Insights de
de dados) (Fluxos de (Fluxos (fluxos análise
de dados de de
dados) Gen2) dados) dados)
Spark
Por Microsoft
Azure
Recurso
Gráfico
Por Microsoft
Azure Synapse
Análise
(SQL DW)
Por Microsoft
Azure Synapse
Workspace do
Analytics
(Beta)
Por Microsoft
SQL do Azure
database
Por Microsoft
Tabela do Azure
Armazenamento
Por Microsoft
Conector Excel Power BI Power Malha Power Cliente Serviços
(Conjuntos BI (fluxo Apps Insights de
de dados) (Fluxos de (Fluxos (fluxos análise
de dados de de
dados) Gen2) dados) dados)
Azure Time
Series Insights
(Beta)
Por Microsoft
B
Conector Excel Power BI Power Malha Power Cliente Serviços
(Conjuntos BI (fluxo Apps Insights de
de dados) (Fluxos de (Fluxos (fluxos análise
de dados de de
dados) Gen2) dados) dados)
Conector do BI
Por Guidanz
Classificações
de segurança
do BitSight
Por BitSight
Bloomberg
Data
and Analytics
Por Bloomberg
Conector Excel Power BI Power Malha Power Cliente Serviços
(Conjuntos BI (fluxo Apps Insights de
de dados) (Fluxos de (Fluxos (fluxos análise
de dados de de
dados) Gen2) dados) dados)
BQE Core
By BQE
C
Conector Excel Power BI Power Malha Power Cliente Serviços
(Conjuntos BI (fluxo Apps Insights de
de dados) (Fluxos de (Fluxos (fluxos análise
de dados de de
dados) Gen2) dados) dados)
CData Connect
Cloud
Por CData
Celonis EMS
(Beta)
Por Celonis
Cherwell
(Beta)
Por Cherwell
CloudBluePSA
(Beta)
Conector Excel Power BI Power Malha Power Cliente Serviços
(Conjuntos BI (fluxo Apps Insights de
de dados) (Fluxos de (Fluxos (fluxos análise
de dados de de
dados) Gen2) dados) dados)
Por CloudBlue
PSA (Beta)
Fusão de
Dados
Fusion
Por Cognite
Dados
Comuns
Service
(legacy)
Por Microsoft
D
Conector Excel Power BI Power Malha Power Cliente Serviços
(Conjuntos BI (fluxo Apps Insights de
de dados) (Fluxos de (Fluxos (fluxos análise
de dados de de
dados) Gen2) dados) dados)
Data.World -
Obter Conjunto de
Dados
(Beta)
Por Microsoft
Data Virtuality
Conector Excel Power BI Power Malha Power Cliente Serviços
(Conjuntos BI (fluxo Apps Insights de
de dados) (Fluxos de (Fluxos (fluxos análise
de dados de de
dados) Gen2) dados) dados)
LDW
Por Data Virtuality
Databricks
Por Databricks
Fluxos de dados
Por Microsoft
Dataverse
Por Microsoft
Compartilhamento
Delta
Por Databricks
Denodo
Por Denodo
Digital
Construction
Works Insights
Conector Excel Power BI Power Malha Power Cliente Serviços
(Conjuntos BI (fluxo Apps Insights de
de dados) (Fluxos de (Fluxos (fluxos análise
de dados de de
dados) Gen2) dados) dados)
Por Digital
Construction Works
Dremio Cloud
Por Dremio
Dremio Software
Por Dremio
Dynamics 365
Business Central
Por Microsoft
Dynamics 365
Business Central
(local)
Por Microsoft
Dynamics 365
Customer Insights
(Beta)
Por Microsoft
Dynamics 365
Conector Excel Power BI Power Malha Power Cliente Serviços
(Conjuntos BI (fluxo Apps Insights de
de dados) (Fluxos de (Fluxos (fluxos análise
de dados de de
dados) Gen2) dados) dados)
(Dataverse)
Por Microsoft
Dynamics 365
Online (herdado)
Por Microsoft
Dynamics NAV
Por Microsoft
E
Conector Excel Power BI Power BI Malha Power Cliente Serviços
(Conjuntos (Fluxos (fluxo Apps Insights de
de dados) de de (Fluxos (fluxos análise
dados) dados de de
Gen2) dados) dados)
Eduframe
Reporting
(Beta)
Por Drieam
Fonte de
Dados
do Emigo
Por Sagra
Conector Excel Power BI Power BI Malha Power Cliente Serviços
(Conjuntos (Fluxos (fluxo Apps Insights de
de dados) de de (Fluxos (fluxos análise
dados) dados de de
Gen2) dados) dados)
Métricas
Emplifi
(Beta)
Por Emplifi
Entersoft
Business
Suite
(Beta)
Por
Entersoft
EQuIS
By
EarthSoft
Essbase
Por
Microsoft
eWay-CRM
Por eWay-
CRM
Conector Excel Power BI Power BI Malha Power Cliente Serviços
(Conjuntos (Fluxos (fluxo Apps Insights de
de dados) de de (Fluxos (fluxos análise
dados) dados de de
Gen2) dados) dados)
Exasol
Por Exasol
Excel
Por
Microsoft
1
Disponível nos fluxos de dados para Microsoft Teams.
F
Conector Excel Power BI Power BI Malha Power Cliente Serviços
(Conjuntos (Fluxos (fluxo Apps Insights de
de dados) de de (Fluxos (fluxos análise
dados) dados de de
Gen2) dados) dados)
FactSet
Analytics
Por
FactSet
FactSet
RMS
(Beta)
Por
FactSet
Conector Excel Power BI Power BI Malha Power Cliente Serviços
(Conjuntos (Fluxos (fluxo Apps Insights de
de dados) de de (Fluxos (fluxos análise
dados) dados de de
Gen2) dados) dados)
FHIR
Por
Microsoft
Pasta
Por
Microsoft
Funil
Por Funil
G
Conector Excel Power BI Power BI Malha Power Cliente Serviços
(Conjuntos (Fluxos (fluxo Apps Insights de
de dados) de de (Fluxos (fluxos análise
dados) dados de de
Gen2) dados) dados)
Github
(Beta)
Por
Microsoft
Google
Analytics
Conector Excel Power BI Power BI Malha Power Cliente Serviços
(Conjuntos (Fluxos (fluxo Apps Insights de
de dados) de de (Fluxos (fluxos análise
dados) dados de de
Gen2) dados) dados)
Por
Microsoft
Google
BigQuery
Por
Microsoft
Google
BigQuery
(Azure AD)
(Beta)
Por
Microsoft
Planilhas
Google
Por
Microsoft
H
Conector Excel Power BI Power BI Malha Power Cliente Serviços
(Conjuntos (Fluxos (fluxo Apps Insights de
de dados) de de (Fluxos (fluxos análise
dados) dados de de
Gen2) dados) dados)
Arquivo do
Conector Excel Power BI Power BI Malha Power Cliente Serviços
(Conjuntos (Fluxos (fluxo Apps Insights de
de dados) de de (Fluxos (fluxos análise
dados) dados de de
Gen2) dados) dados)
Hadoop
(HDFS)
Por
Microsoft
HDInsight
Interactive
Query
Por
Microsoft
Hexagon
PPM
do
Hexagon
PPM
Por
Hexagon
PPM
LLAP do
Hive
Por
Microsoft
I
Conector Excel Power BI Power Malha Power Cliente Serviços
(Conjuntos BI (fluxo Apps Insights de
de dados) (Fluxos de (Fluxos (fluxos análise
de dados de de
dados) Gen2) dados) dados)
IBM DB2
database
Por Microsoft
IBM Informix
Banco de
Dados
(Beta)
Por Microsoft
IBM Netezza
Por Microsoft
Impala
Por Microsoft
Indexima
Por Indexima
Industrial
App Store
Por
Intelligent
Plant
Conector Excel Power BI Power Malha Power Cliente Serviços
(Conjuntos BI (fluxo Apps Insights de
de dados) (Fluxos de (Fluxos (fluxos análise
de dados de de
dados) Gen2) dados) dados)
Informações
Grade (Beta)
Por Luminis
InterSystems
IRIS (Beta)
Por
Intersystems
Intune Data
Warehouse
(Beta)
Por Microsoft
J
Conector Excel Power BI Power BI Malha Power Cliente Serviços
(Conjuntos (Fluxos (fluxo Apps Insights de
de dados) de de (Fluxos (fluxos análise
dados) dados de de
Gen2) dados) dados)
Jamf Pro
(Beta)
Por Jamf
Conector Excel Power BI Power BI Malha Power Cliente Serviços
(Conjuntos (Fluxos (fluxo Apps Insights de
de dados) de de (Fluxos (fluxos análise
dados) dados de de
Gen2) dados) dados)
Jethro
(Beta)
Por
JethroData
JSON
Por
Microsoft
K
Conector Excel Power BI Power BI Malha Power Cliente Serviços
(Conjuntos (Fluxos (fluxo Apps Insights de
de dados) de de (Fluxos (fluxos análise
dados) dados de de
Gen2) dados) dados)
Kognitwin
Por
Kongsberg
Banco de
dados KQL
Por
Microsoft
Conector Excel Power BI Power BI Malha Power Cliente Serviços
(Conjuntos (Fluxos (fluxo Apps Insights de
de dados) de de (Fluxos (fluxos análise
dados) dados de de
Gen2) dados) dados)
Kyligence
Por
Kyligence
L
Conector Excel Power BI Power Malha Power Cliente Serviços
(Conjuntos BI (fluxo Apps Insights de
de dados) (Fluxos de (Fluxos (fluxos análise
de dados de de
dados) Gen2) dados) dados)
Casa do Lago
(Beta)
Por Microsoft
Bancos de dados
PICK/MultiValue
da Linkar (Beta)
Por Kosday
Solutions
LinkedIn Sales
Navigator (Beta)
Por Microsoft
M
Conector Excel Power BI Power Malha Power Cliente Serviços
(Conjuntos BI (fluxo Apps Insights de
de dados) (Fluxos de (Fluxos (fluxos análise
de dados de de
dados) Gen2) dados) dados)
Marketo
(Beta)
Por Microsoft
MarkLogic
Por MarkLogic
MariaDB
Por MariaDB
Microsoft
Azure
Consumption
Insights
(Beta)
(preterido)
Por Microsoft
Microsoft
Exchange
Por Microsoft
Microsoft
Exchange
Conector Excel Power BI Power Malha Power Cliente Serviços
(Conjuntos BI (fluxo Apps Insights de
de dados) (Fluxos de (Fluxos (fluxos análise
de dados de de
dados) Gen2) dados) dados)
Online
Por Microsoft
Microsoft
Graph
Security
(preterido)
Por Microsoft
Microsoft
Teams
Análise
Pessoal
(Beta)
Por Microsoft
MicroStrategy
para Power BI
Por
MicroStrategy
Mixpanel
(Beta)
Por Microsoft
MongoDB
Atlas
Interface do
Conector Excel Power BI Power Malha Power Cliente Serviços
(Conjuntos BI (fluxo Apps Insights de
de dados) (Fluxos de (Fluxos (fluxos análise
de dados de de
dados) Gen2) dados) dados)
SQL
(Beta)
Por MongoDB
Banco de
dados MySQL
Por Microsoft
O
Conector Excel Power BI Power Malha Power Cliente Serviços
(Conjuntos BI (fluxo Apps Insights de
de dados) (Fluxos de (Fluxos (fluxos análise
de dados de de
dados) Gen2) dados) dados)
OData Feed
Por Microsoft
ODBC
Por Microsoft
OLE DB
Por Microsoft
OpenSearchProject
Conector Excel Power BI Power Malha Power Cliente Serviços
(Conjuntos BI (fluxo Apps Insights de
de dados) (Fluxos de (Fluxos (fluxos análise
de dados de de
dados) Gen2) dados) dados)
(Beta)
Por OpenSearch
Oracle database
Por Microsoft
P
Conector Excel Power BI Power Malha Power Cliente Serviços
(Conjuntos BI (fluxo Apps Insights de
de dados) (Fluxos de (Fluxos (fluxos análise
de dados de de
dados) Gen2) dados) dados)
Parquet
Por Microsoft
Palantir
Foundry
Por Palantir
Paxata
Por Paxata
Conector Excel Power BI Power Malha Power Cliente Serviços
(Conjuntos BI (fluxo Apps Insights de
de dados) (Fluxos de (Fluxos (fluxos análise
de dados de de
dados) Gen2) dados) dados)
2 2 1
PDF
Por Microsoft
Planview
Enterprise
Arquitetura
Por Planview
Planview
IdeaPlace
Por Planview
Planview OKR
(Beta)
Planview
Portfolios
Por Planview
Planview
Projectplace
Por Planview
Conector Excel Power BI Power Malha Power Cliente Serviços
(Conjuntos BI (fluxo Apps Insights de
de dados) (Fluxos de (Fluxos (fluxos análise
de dados de de
dados) Gen2) dados) dados)
PostgreSQL
database
Por Microsoft
Conjuntos de
dados do
Power BI
Por Microsoft
Product
Insights
(Beta)
Por Microsoft
Profisee
Por Profisee
Script em
Python
Por Microsoft
QubolePresto
(Beta)
Por Qubole
Quickbase
Por Quick
Base
Quickbooks
Online
(Beta)
Por Microsoft
R
Conector Excel Power BI Power BI Malha Power Cliente Serviços
(Conjuntos (Fluxos (fluxo Apps Insights de
de dados) de de (Fluxos (fluxos análise
dados) dados de de dados)
Gen2) dados)
Script do
R
Por
Microsoft
Conector Excel Power BI Power BI Malha Power Cliente Serviços
(Conjuntos (Fluxos (fluxo Apps Insights de
de dados) de de (Fluxos (fluxos análise
dados) dados de de dados)
Gen2) dados)
Roamler
(Beta)
Por
Roamler
S
Conector Excel Power BI Power Malha Power Cliente Serviços
(Conjuntos BI (fluxo Apps Insights de
de dados) (Fluxos de (Fluxos (fluxos análise
de dados de de
dados) Gen2) dados) dados)
Objetos do
Salesforce
Por Microsoft
Relatórios do
Salesforce
Por Microsoft
Servidor de
Aplicativos SAP
Depósito
Servidor de
Aplicativos
Por Microsoft
Conector Excel Power BI Power Malha Power Cliente Serviços
(Conjuntos BI (fluxo Apps Insights de
de dados) (Fluxos de (Fluxos (fluxos análise
de dados de de
dados) Gen2) dados) dados)
Servidor de
Aplicativos SAP
Depósito
Servidor de
Mensagens
Por Microsoft
SAP HANA
database
Por Microsoft
SIS-CC SDMX
(Beta)
Por SIS-CC
Pasta do
SharePoint
Por Microsoft
Lista do
SharePoint
Por Microsoft
SharePoint
Conector Excel Power BI Power Malha Power Cliente Serviços
(Conjuntos BI (fluxo Apps Insights de
de dados) (Fluxos de (Fluxos (fluxos análise
de dados de de
dados) Gen2) dados) dados)
Online
lista
Por Microsoft
Atalhos para
insights de
negócios (Beta)
Por Shortcuts
SingleStore
(Beta)
Por SingleStore
SiteImprove
Por SiteImprove
Smartsheet
Por Microsoft
Snowflake
Por Microsoft
Socialbakers
Metrics (Beta)
Por Emplifi
Conector Excel Power BI Power Malha Power Cliente Serviços
(Conjuntos BI (fluxo Apps Insights de
de dados) (Fluxos de (Fluxos (fluxos análise
de dados de de
dados) Gen2) dados) dados)
SoftOneBI
(Beta)
Por SoftOne
Central de
Serviços
SolarWinds
(Beta)
Por SolarWinds
Solver
Por BI360
Spark
Por Microsoft
SparkPost
(Beta)
Por Microsoft
SQL Server
Analysis
Services
Por Microsoft
Conector Excel Power BI Power Malha Power Cliente Serviços
(Conjuntos BI (fluxo Apps Insights de
de dados) (Fluxos de (Fluxos (fluxos análise
de dados de de
dados) Gen2) dados) dados)
SQL Server
database
Por Microsoft
Starburst
Enterprise
Por Starburst
Data
SumTotal
Por SumTotal
SurveyMonkey
Por
SurveyMonkey
SweetIQ (Beta)
Por Microsoft
Banco de dados
Sybase
Por Microsoft
TeamDesk
(Beta)
Por ForeSoft
Tenforce
(Smart)List
Por Tenforce
Teradata
database
Por Microsoft
Texto/CSV
Por Microsoft
TIBCO(R)
Data
Virtualization
Por TIBCO
Twilio
(preterido)
Conector Excel Power BI Power Malha Power Cliente Serviços
(Conjuntos BI (fluxo Apps Insights de
de dados) (Fluxos de (Fluxos (fluxos análise
de dados de de
dados) Gen2) dados) dados)
(Beta)
Por Microsoft
1
Disponível nos fluxos de dados para Microsoft Teams.
U
Conector Excel Power BI Power BI Malha Power Cliente Serviços
(Conjuntos (Fluxos (fluxo Apps Insights de
de dados) de de (Fluxos (fluxos análise
dados) dados de de dados)
Gen2) dados)
Usercube
(Beta)
Por
Usercube
V
Conector Excel Power BI Power BI Malha Power Cliente Serviços
(Conjuntos (Fluxos (fluxo Apps Insights de
de dados) de de (Fluxos (fluxos análise
dados) dados de de
Gen2) dados) dados)
Vena
Por Vena
Vertica
Conector Excel Power BI Power BI Malha Power Cliente Serviços
(Conjuntos (Fluxos (fluxo Apps Insights de
de dados) de de (Fluxos (fluxos análise
dados) dados de de
Gen2) dados) dados)
Por
Microsoft
Vessel
Insight
Por
Kongsberg
Viva
Insights
Por
Microsoft
W
Conector Excel Power BI Power BI Malha Power Cliente Serviços
(Conjuntos (Fluxos (fluxo Apps Insights de
de dados) de de (Fluxos (fluxos análise
dados) dados de de
Gen2) dados) dados)
Armazém
(Beta)
Por
Microsoft
Web
Por
Microsoft
Conector Excel Power BI Power BI Malha Power Cliente Serviços
(Conjuntos (Fluxos (fluxo Apps Insights de
de dados) de de (Fluxos (fluxos análise
dados) dados de de
Gen2) dados) dados)
Webtrends
Analytics
(Beta)
Por
Microsoft
Witivio
(Beta)
Por Witivio
Workforce
Dimensions
(Beta)
(Preterido)
Por Kronos
Wrike (Beta)
Por Wrike
X
Conector Excel Power BI Power BI Malha Power Cliente Serviços
(Conjuntos (Fluxos (fluxo Apps Insights de
de dados) de de (Fluxos (fluxos análise
dados) dados de de dados)
Gen2) dados)
XML
Por
Microsoft
1
Disponível nos fluxos de dados para Microsoft Teams.
Z
Conector Excel Power BI Power BI Malha Power Cliente Serviços
(Conjuntos (Fluxos (fluxo Apps Insights de
de dados) de de (Fluxos (fluxos análise
dados) dados de de dados)
Gen2) dados)
Zendesk
(Beta)
Por
Microsoft
Zoho
Creator
Por Zoho
Zucchetti
HR
Infinity
(Beta)
Conector Excel Power BI Power BI Malha Power Cliente Serviços
(Conjuntos (Fluxos (fluxo Apps Insights de
de dados) de de (Fluxos (fluxos análise
dados) dados de de dados)
Gen2) dados)
Por
Zucchetti
Próximas etapas
Fontes de dados do Power BI (conjuntos de dados)
Conectar-se às fontes de dados dos fluxos de dados do Power BI
Fontes de dados disponíveis (Dynamics 365 Customer Insights)
Fontes de dados com suporte no Azure Analysis Services
Banco de dados do Access
Artigo • 05/10/2023
Resumo
Item Descrição
Produtos Excel
Power BI (Conjuntos de dados)
Power BI (Fluxos de dados)
Malha (fluxo de dados Gen2)
Power Apps (Fluxos de dados)
Excel
Customer Insights do Dynamics 365
Analysis Services
7 Observação
Alguns recursos podem estar presentes em um produto, mas não em outros devido
a cronogramas de implantação e funcionalidades específicas do host.
Pré-requisitos
Se você estiver se conectando a um banco de dados desde o Access do Power Query
Online, o sistema que contém o gateway de dados local deverá ter a versão de 64 bits
do provedor OLEDB do Access Database Engine 2016 instalado.
Você deve selecionar um gateway de dados local para esse conector, esteja o
banco de dados do Access na sua rede local ou em um site da Web.
Solução de problemas
7 Observação
Power BI Desktop. Esse erro pode ser causado usando versões de bits incompatíveis do
Power BI Desktop e do provedor OLEDB do Mecanismo de Banco de Dados do Access
2016. Para obter mais informações sobre como corrigir essa incompatibilidade, vá para
Solucionar problemas de importação de arquivos do Access e do Excel .xls no Power BI
Desktop.
Active Directory
Artigo • 05/10/2023
Resumo
Item Descrição
Produtos Excel
Power BI (Conjuntos de dados)
Power BI (Fluxos de dados)
Excel
Analysis Services
7 Observação
Alguns recursos podem estar presentes em um produto, mas não em outros devido
a cronogramas de implantação e funcionalidades específicas do host.
Pré-requisitos
Para se conectar ao Active Directory no Power BI (Fluxos de Dados), você precisará
de um gateway de dados local.
3. Você pode optar por usar suas credenciais atuais do Windows ou inserir
credenciais alternativas. Depois, selecione Conectar.
Dica
7 Observação
7 Observação
Limitações e problemas
Resumo
Item Descrição
Pré-requisitos
Antes de entrar no Adobe Analytics, você deve ter uma conta do Adobe Analytics (nome
de usuário/senha).
Depois que a conexão for estabelecida, você pode visualizar e selecionar várias
dimensões e medições na caixa de diálogo do Navegador para criar uma única saída de
tabela.
Também é possível fornecer quaisquer parâmetros de entrada opcionais para os itens
selecionados. Para obter mais informações sobre esses parâmetros, consulte Parâmetros
de entrada opcionais.
É possível Carregar a tabela selecionada, que insere toda a tabela no Power BI Desktop,
ou selecionar Transformar dados para editar a consulta, que abre o Editor do Power
Query. Depois, é possível filtrar e refinar o conjunto de dados que deseja usar e carregar
esse conjunto refinado de dados no Power BI Desktop.
Intervalo de datas – filtra o que foi relatado usando o intervalo definido de data de
início e data de término.
Segmento— filtra os dados com base em todos os segmentos contidos nos dados
ou apenas nos segmentos selecionados. Para alterar a lista de segmentos,
selecione as reticências à direita da lista de Segmento e escolha os segmentos
desejados. Por padrão, todos os segmentos são incluídos nos dados.
Top - filtra os dados com base nos itens principais da dimensão. Você pode inserir
um valor na caixa de texto Top ou selecionar as reticências ao lado da caixa de
texto para selecionar alguns valores padrão. Por padrão, todos os itens são
selecionados.
Dimensão– filtra os dados com base na dimensão selecionada. Por padrão, todas
as dimensões são selecionadas. Atualmente, os filtros de dimensão personalizados
da Adobe não são suportados na interface do usuário do Power Query, mas
podem ser definidos manualmente como parâmetros M na consulta. Para obter
mais informações, consulte Como usar os parâmetros de consulta no Power BI
Desktop.
Limitações e problemas
Você deve estar ciente das seguintes limitações e problemas associados ao acesso aos
dados do Adobe Analytics.
O Adobe Analytics tem um limite interno de 50 mil linhas retornadas por chamada
de API.
Se o número de chamadas à API exceder quatro por segundo, um alerta será
emitido. Se o número exceder cinco por segundo, uma mensagem de erro será
retornada. Para obter mais informações sobre esses limites e as mensagens
associadas, consulte Códigos de erro dos serviços Web .
Para obter diretrizes adicionais sobre como acessar os dados do Adobe Analytics,
consulte as Diretrizes de uso recomendadas .
Próximas etapas
As seguintes informações sobre o Adobe Analytics também são úteis:
7 Observação
Resumo
Item Descrição
Pré-requisitos
Uma conta AWS (Amazon Web Services)
Permissões para usar a Athena
Os clientes devem instalar o driver ODBC do Amazon Athena antes de usar o
conector
Para DSN, insira o nome do DSN ODBC que você deseja usar. Para obter
instruções sobre como configurar o DSN, acesse a documentação do driver
ODBC .
Para o modo de Conectividade de Dados, escolha um modo apropriado para
seu caso de uso, seguindo estas diretrizes gerais:
Para conjuntos de dados menores, escolha Importar. Ao usar o modo de
importação, o Power BI funciona com o Athena para importar o conteúdo
de todo o conjunto de dados para uso em suas visualizações.
Para conjuntos de dados maiores, escolha DirectQuery. No modo
DirectQuery, nenhum dado é baixado para sua estação de trabalho.
Enquanto você cria ou interage com uma visualização, o Microsoft Power
BI trabalha com o Athena para consultar dinamicamente a fonte de dados
subjacente para que você esteja sempre exibindo os dados atuais. Para
mais informações, consulte: Usar o DirectQuery no Power BI Desktop
6. Selecione OK.
10. Caso contrário, selecione Carregar. Depois de carregar, você poderá criar
visualizações como a da imagem a seguir. Se você selecionou o DirectQuery, o
Power BI emitirá uma consulta ao Athena para a visualização solicitada.
Serviço Amazon OpenSearch (Beta)
Artigo • 05/10/2023
7 Observação
Resumo
Item Descrição
Pré-requisitos
Microsoft Power BI Desktop
OpenSearch
Driver ODBC do SQL do OpenSearch
4. Insira valores de host e porta e selecione a opção SSL que deseja. Depois,
selecione OK.
7. Selecione Carregar.
Solução de problemas
Se você receber um erro indicando que o driver não foi instalado, instale o ODBC Driver
do SQL do OpenSearch .
Resumo
Item Descrição
7 Observação
Alguns recursos podem estar presentes em um produto, mas não em outros devido
a cronogramas de implantação e funcionalidades específicas do host.
Pré-requisitos
Uma conta AWS (Amazon Web Services)
2. No Servidor, insira o nome do servidor onde seus dados estão localizados. Como
parte do campo Servidor, você também pode especificar uma porta no seguinte
formato: URLdoServidor:Porta. No Banco de Dados, insira o nome do banco de
dados do Amazon Redshift que você deseja acessar. Neste exemplo,
contoso.redshift.amazonaws.com:5439 é o nome do servidor e o número da porta,
como Importar.
Você também pode escolher algumas opções avançadas opcionais para sua
conexão. Mais informações: Conectar-se usando opções avançadas
3. Se essa for a primeira vez que você estiver se conectando a esse banco de dados,
insira suas credenciais nas caixas Nome de usuário e Senha do tipo de
autenticação do Amazon Redshift. Depois, selecione Conectar.
Mais informações: Autenticação com uma fonte de dados
4. Depois de você se conectar com sucesso, aparece uma janela Navegador com os
dados disponíveis no servidor. Escolha um ou mais dos elementos que você deseja
importar.
2. No Servidor, insira o nome do servidor onde seus dados estão localizados. Como
parte do campo Servidor, você também pode especificar uma porta no seguinte
formato: URLdoServidor:Porta. No Banco de Dados, insira o nome do banco de
dados do Amazon Redshift que você deseja acessar. Neste exemplo,
contoso.redshift.amazonaws.com:5439 é o nome do servidor e o número da porta,
A tabela a seguir descreve todas as opções avançadas que você pode definir no Power
Query.
Opção Descrição
Avançada
Tamanho Especifica o número máximo de linhas a serem recuperadas por vez do servidor ao
do lote buscar dados. Um número pequeno gerará mais chamadas para o servidor ao
recuperar um conjunto de dados grande. Um número grande de linhas pode
melhorar o desempenho, mas pode causar alto uso de memória. O valor padrão é
100 linhas.
Instrução Para obter informações, acesse Importar dados de um banco de dados usando a
SQL consulta de banco de dados nativo. Esta opção está disponível somente no Power
BI Desktop.
Habilitar o SSO (Logon Único) do Azure AD
para o Amazon Redshift
Damos suporte ao SSO do Azure AD por meio do Serviço do Power BI (nuvem) e
também por meio do gateway de dados local. Para obter mais informações sobre como
habilitar o SSO Azure AD para todos os conectores, acesse Visão geral do SSO (Logon
Único) para gateways de dados locais no Power BI.
Depois de habilitar o SSO do Azure AD para todas as fontes de dados, habilite o SSO do
Azure AD para o Amazon Redshift:
Além disso, selecione Usar o SSO por meio do Azure AD para consultas
DirectQuery.
Anaplan
Artigo • 05/10/2023
7 Observação
Resumo
Item Descrição
Pré-requisitos
Há requisitos de sistema que devem ser verificados antes da instalação do Microsoft
Power BI Desktop.
Obter dados
Para acessar sua exportação salva no Power BI Desktop:
1. Selecione Obter dados no menu da faixa de opções, que exibe o menu Fontes de
dados comuns.
5. Selecione Conectar.
Configurar o conector
Configure o conector depois de baixá-lo. Esta etapa permite que você se conecte
usando APIs do Anaplan.
O conector usa autenticação básica (ID de usuário, senha) ou o IDP configurado pelo
Anaplan para fazer logon no Anaplan. Para usar o segundo método, você deve ser
designado como um usuário de logon único (Single-Sign On, SSO) do Anaplan em seu
modelo do Anaplan. Você pode definir sua própria configuração.
b. Se você preferir o IDP configurado pelo Anaplan para fazer logon no Anaplan,
insira as seguintes URLs e selecione OK.
c. Selecione OK.
Authenticate
Você escolheu a autenticação básica ou IDP configurado pelo Anaplan.
b. Selecione Conectar.
2. Se você optar pela Conta organizacional (IDP configurado pela Anaplan), na caixa
de diálogo Anaplan:
a. Selecione Entrar.
d. Selecione Entrar.
7 Observação
O serviço IDP configurado pelo Anaplan da sua empresa gera esta caixa de
diálogo. Um serviço comum de gerenciamento de ID é o Okta.
Para executar uma ação de exportação, use a caixa de diálogo Navegador para localizar
a exportação.
Mais informações: Criar relatórios no Power BI. Você precisa de um relatório para
começar.
Para publicar um relatório no serviço Power BI, selecione Publicar na caixa de diálogo de
relatório do Power BI Desktop.
O relatório agora está no serviço do Power BI. Entre no serviço do Power BI para ver o
relatório.
3. Escolha Aplicar.
Esta imagem exibe um conjunto de dados de exemplo chamado Nova fonte de dados.
2. Selecione Entrar.
2. Selecionar Arquivo.
7. Selecione Excluir.
Estas etapas removem tokens de API do Anaplan expirados. Você deve autenticar
novamente para continuar.
Para resolver esse erro, selecione Fechar & Aplicar ou Atualizar Visualização.
Também é possível:
2. Selecione Mais.
As primeiras 1.000 linhas de dados são exibidas.
7 Observação
Resumo
Item Descrição
Pré-requisitos
Para usar o conector Assemble Views, você deve ter uma conta da Autodesk com um
nome de usuário e senha e ser membro de, no mínimo, um projeto no Assemble.
Você também precisará de, no mínimo, uma exibição associada ao projeto no Assemble.
2. No Assemble Views, insira a URL do seu site para entrar. Por exemplo, use
https://example.tryassemble.com .
a. (Opcional) Selecione uma data a partir da qual deseja carregar os dados. Deixar
esse campo em branco faz com que os dados mais recentes sejam trazidos sempre
que você atualizar.
7 Observação
5. Depois que a visualização dos dados for exibida, você poderá selecionar
Transformar dados para acessar o editor do Power Query ou Carregar para ir
direto para o painel.
6. Se você quiser carregar vários modelos de uma vez, selecione Aplicar depois de
configurar cada modelo de acordo com as etapas acima mencionadas.
2. No Power Query, você verá uma única coluna chamada Linhas. No cabeçalho da
coluna, selecione o botão com duas setas apontando em direções opostas para
expandir as linhas.
7 Observação
Resumo
Item Descrição
Pré-requisitos
Para usar o conector Autodesk Construction Cloud, você deve ter uma conta da
Autodesk com um nome de usuário e senha, e ter acesso à Visão geral executiva em
uma conta BIM360 ou ACC. Você também precisa executar manualmente uma extração
do Conector de Dados ou agendar as execuções das extrações para usar esse conector.
O conector extrai da última extração executada.
2. Se esta for a primeira vez que você obtém dados por meio do conector do
Autodesk Construction Cloud, um aviso de visualização do conector será exibido.
Selecione Não mostrar alerta novamente para esse conector se você não quiser
que essa mensagem seja exibida novamente e, depois, selecione Continuar.
7. Em Navegador, expanda a conta da qual deseja extrair dados, que exibirá uma
pasta Extração de conta e uma pasta Extrações de projeto. A extração de conta
conterá a extração de dados da extração mais recente em nível de conta se você
tiver acesso adequado e tiver executado uma extração de dados em nível de conta.
As extrações de projeto conterão uma listagem de cada projeto na conta à qual
você tem acesso, que você poderá expandir para ver as tabelas relevantes nas
extrações desse projeto específico, caso tenha executado uma extração de dados.
8. Depois de navegar até a extração de conta ou projeto desejada, selecione as
tabelas desejadas e depois selecione Carregar para carregar os dados ou
Transformar dados para continuar transformando os dados no editor do Power
Query.
Conectar usando os modelos do Power BI
fornecidos pela Autodesk
Faça o download dos modelos mais recentes do Power BI aqui
https://construction.autodesk.com/templates/power-bi/ .
Somente os modelos com "... (Conector)..." no nome do arquivo estão
configurados para funcionar com esse conector.
Limitações e problemas
Você deve estar ciente das seguintes limitações e problemas associados ao acesso aos
dados da Autodesk.
A Autodesk retornará um status de erro 404 se você não tiver nenhuma solicitação
nos últimos 30 dias.
Esse conector extrai dados da última execução de extração do Conector de dados
e não dos dados dinâmicos da conta.
Análise de dados do Automy (Beta)
Artigo • 05/10/2023
7 Observação
Resumo
Item Descrição
Pré-requisitos
Antes de entrar no Automy Data Analytics, você deve ter um Token de Relatório de
Detecção Automática.
2. Se essa for a primeira vez que você estiver se conectando ao conector do Automy
Data Analytics, um aviso de terceiros será exibido. Selecione Não mostrar alerta
novamente para esse conector se você não quiser que essa mensagem seja
exibida novamente e, depois, selecione Continuar.
7 Observação
Limitações e problemas
Os usuários devem estar cientes das seguintes limitações e problemas associados ao
acesso a dados do Automy Data Analytics.
O Automy Data Analytics tem um limite interno de 100.000 linhas retornadas por
conexão.
O limite de taxa padrão para uma Automy Data Analytics Company é de 120
solicitações por minuto por usuário.
Para obter mais diretrizes sobre como acessar o Automy Data Analytics, entre em
contato com support@automy.global.
Resumo
Item Descrição
7 Observação
Alguns recursos podem estar presentes em um produto, mas não em outros devido
a cronogramas de implantação e funcionalidades específicas do host.
Pré-requisitos
Uma assinatura do Azure. Acesse Obter uma avaliação gratuita do Azure .
7 Observação
4. Se você estiver se conectando a esse banco de dados pela primeira vez, selecione
o tipo de autenticação e insira suas credenciais. Depois, selecione Conectar.
4. Se você estiver se conectando a esse banco de dados pela primeira vez, selecione
o tipo de autenticação e insira suas credenciais.
Opção Descrição
avançada
Instrução MDX Opcionalmente, fornece uma instrução MDX ou DAX específica para o servidor
ou DAX de banco de dados do Azure Analysis Services executar.
Solução de problemas
Resumo
Item Descrição
Produtos Excel
Power BI (Conjuntos de dados)
Power BI (Fluxos de dados)
Malha (fluxo de dados Gen2)
Power Apps (Fluxos de dados)
Customer Insights do Dynamics 365
Analysis Services
7 Observação
Alguns recursos podem estar presentes em um produto, mas não em outros devido
a cronogramas de implantação e funcionalidades específicas do host.
Pré-requisitos
Uma assinatura do Azure. Acesse Obter uma avaliação gratuita do Azure .
7 Observação
3. Se esta for a primeira vez que você se conecta a esta conta, selecione o método de
autenticação Anônimo ou Chave de conta para entrar na conta do
Armazenamento de Blobs do Azure. Mais informações: Copiar a chave da sua
conta do Armazenamento de Blobs do Azure
Para obter mais informações sobre como usar e gerenciar a autenticação, acesse
Autenticação com uma fonte de dados.
7 Observação
4. Selecione Conectar.
5. A caixa de diálogo Navegador mostra os arquivos que você carregou na sua conta
do Armazenamento de Blobs do Azure. Selecione os contêineres que deseja usar e
escolha Transformar dados para transformar os dados no Power Query ou
Carregar para carregar os dados.
Para obter mais informações sobre como usar e gerenciar a autenticação, acesse
Autenticação com uma fonte de dados.
5. Selecione Avançar.
5. Selecione o ícone Copiar para a área de transferência para copiar o valor Key.
Azure Cosmos DB v2 (Beta)
Artigo • 05/10/2023
Resumo
Item Descrição
Pré-requisitos
Uma conta do Azure Cosmos DB .
7 Observação
Use o Link do Azure Synapse para Azure Cosmos DB se você quiser executar
funções agregadas particionadas cruzadas no contêiner do Cosmos DB.
Mais informações:
Opções avançadas
O Power Query tem um conjunto de opções avançadas que você pode adicionar à sua
consulta, se necessário.
A tabela a seguir lista todas as opções avançadas que você pode definir no Power
Query.
Opção Descrição
avançada
consulta SQL. Para permitir que várias colunas sejam transmitidas ao Cosmos DB,
verifique se há índices compostos definidos nas colunas nas respectivas coleções.
Para coleções particionadas, uma consulta SQL com ORDER BY será transmitida
ao Cosmos DB somente se a consulta contiver um filtro na chave particionada.
Além disso, se houver mais de oito colunas especificadas na cláusula ORDER BY,
o conector não transmitirá a cláusula ORDER BY e, em vez disso, tratará a própria
execução da ordem.
O conector não transmite uma função agregada se for chamado após a aplicação
de TOP ou LIMIT. O Cosmos DB processa a operação TOP no final ao processar
uma consulta. Por exemplo, na consulta a seguir, TOP é aplicado na subconsulta,
enquanto a função agregada é aplicada sobre esse conjunto de resultados:
Quando a consulta não está filtrando uma chave de partição ou quando o filtro
de chave de partição usa o operador OR com outro predicado no nível superior
na cláusula WHERE.
Resumo
Item Descrição
7 Observação
Pré-requisitos
Uma assinatura do Azure. Acesse Obter uma avaliação gratuita do Azure .
/providers/Microsoft.Billing/billingAccounts/{billingAccountId}
7. Quando solicitado, entre com sua conta de usuário e senha do Azure. Você precisa
ter acesso ao escopo da conta de cobrança para acessar os dados de cobrança
com êxito.
/providers/Microsoft.Billing/billingAccounts/{billingAccountId}/billingProfile
s/{billingProfileId}
8. Quando solicitado, entre com sua conta de usuário e senha do Azure. Você precisa
ter acesso ao perfil de cobrança para acessar os dados do perfil de cobrança com
êxito.
6. Quando solicitado, entre com sua conta de usuário e senha do Azure. Será
necessário usar uma conta de Administrador Corporativo para acessar Contratos
Enterprise.
Table Descrição
Selecione uma tabela para ver uma visualização da caixa de diálogo. Selecione uma ou
mais tabelas marcando as caixas ao lado de seu nome. Selecione Carregar para carregar
os dados ou Transformar dados para continuar transformando os dados no Editor do
Power Query.
Quando você seleciona Carregar, os dados são carregados no Power BI Desktop.
Considerações e limitações
As seguintes considerações e limitações se aplicam ao conector Gerenciamento de
Custos do Azure:
Reutilização da fonte de dados: se você tiver vários relatórios que estão extraindo
os mesmos dados e não precisar de transformações de dados específicas de
relatório adicionais, você deverá reutilizar a mesma fonte de dados, o que reduziria
o tempo necessário para extrair os dados de Detalhes de Uso.
Se você escolher um parâmetro de data maior que três meses, ao tentar atualizar os
dados, ocorrerá um erro 400 bad request vindo dos detalhes de uso da instância
reservada (RI). Para corrigir o erro, realize as seguintes etapas:
Power Query M
let
enrollmentNumber = "<<Enrollment Number>>",
optionalParameters1 = [startBillingDataWindow = "-9",
endBillingDataWindow = "-6"],
source1 = AzureCostManagement.Tables("Enrollment Number",
enrollmentNumber, 5, optionalParameters1),
riusagedetails1 = source1{[Key="riusagedetails"]}[Data],
optionalParameters2 = [startBillingDataWindow = "-6",
endBillingDataWindow = "-3"],
source2 = AzureCostManagement.Tables("Enrollment Number",
enrollmentNumber, 5, optionalParameters2),
riusagedetails2 = source2{[Key="riusagedetails"]}[Data],
riusagedetails = Table.Combine({riusagedetails1, riusagedetails2})
in
riusagedetails
Power Query M
let
billingProfileId = "<<Billing Profile Id>>",
optionalParameters1 = [startBillingDataWindow = "-9",
endBillingDataWindow = "-6"],
source1 = AzureCostManagement.Tables("Billing Profile Id",
billingProfileId, 5, optionalParameters1),
riusagedetails1 = source1{[Key="riusagedetails"]}[Data],
optionalParameters2 = [startBillingDataWindow = "-6",
endBillingDataWindow = "-3"],
source2 = AzureCostManagement.Tables("Billing Profile Id",
billingProfileId, 5, optionalParameters2),
riusagedetails2 = source2{[Key="riusagedetails"]}[Data],
riusagedetails = Table.Combine({riusagedetails1, riusagedetails2})
in
riusagedetails
7 Observação
Resumo
Item Descrição
Nome de usuário/Senha (utilizável para AWS ou GCP). Essa opção não está
disponível se sua organização/conta usa 2FA/MFA.
7 Observação
4. Depois que você se conecta com êxito, o Navegador mostra os dados disponíveis
para você no cluster. Você pode escolher Transformar Dados para transformar os
dados usando o Power Query ou Carregar para carregar os dados no Power Query
Desktop.
Conectar aos dados do Databricks do Power
Query Online
Para conectar ao Databricks do Power Query Online, execute as seguintes etapas:
Nome de usuário/Senha (utilizável para AWS ou GCP). Essa opção não está
disponível se sua organização/conta usa 2FA/MFA.
Chave de Conta (utilizável para AWS, Azure ou GCP). Consulte Tokens de
acesso pessoal para obter instruções sobre como gerar um PAT (Token de
Acesso Pessoal).
Azure Active Directory (utilizável apenas para o Azure). Entre em sua conta
organizacional usando o pop-up do navegador.
4. Depois que você se conecta com êxito, o Navegador aparece e exibe os dados
disponíveis no servidor. Selecione os dados no navegador. Em seguida, selecione
Avançar para transformar os dados no Power Query.
Limitações
O conector do Azure Databricks dá suporte ao proxy Web. No entanto, não há
suporte para configurações automáticas de proxy definidas em arquivos .pac.
No conector do Azure Databricks, não há suporte para a fonte de dados
Databricks.Query combinada ao modo DirectQuery do conjunto de dados do
Power BI.
Azure Data Explorer (Kusto)
Artigo • 13/07/2023
Resumo
Item Descrição
Produtos Excel
Power BI (Conjuntos de dados)
Power BI (Fluxos de dados)
Malha (Dataflow Gen2)
Power Apps (Fluxos de dados)
Customer Insights do Dynamics 365
7 Observação
Alguns recursos podem estar presentes em um produto, mas não em outros devido
a cronogramas de implantação e funcionalidades específicas do host.
Pré-requisitos
Uma assinatura do Azure. Acesse Obter uma avaliação gratuita do Azure .
Uma conta de email organizacional que seja membro do Azure Active Directory.
Este artigo usa essa conta para se conectar aos exemplos de cluster de ajuda do
Azure Data Explorer .
3. Se você quiser usar qualquer opção avançada, selecione a opção e insira os dados
a serem usados com essa opção. Mais informações: Conectar usando opções
avançadas
7 Observação
Talvez seja necessário rolar para baixo para exibir todas as opções avançadas
e a seleção de conectividade de dados.
1. Selecione a opção Azure Data Explorer (Kusto) na fonte de dados Choose. Mais
informações: Locais para obter dados
2. Em Conectar-se à fonte de dados, forneça o nome do cluster de Data Explorer do
Azure. Para este exemplo, use https://help.kusto.windows.net para acessar o
cluster de ajuda de exemplo. Para outros clusters, a URL está no formato
https://<ClusterName>.<Região>.kusto.windows.net.
3. Se você quiser usar qualquer opção avançada, selecione a opção e insira os dados
a serem usados com essa opção. Mais informações: Conectar usando opções
avançadas
5. Caso ainda não tenha uma conexão para o cluster de ajuda, selecione Entrar.
Entrar com uma conta organizacional
A tabela a seguir lista todas as opções avançadas que você pode definir no Power Query
Desktop e no Power Query Online.
Limitar o tamanho dos O tamanho máximo dos dados em bytes a serem retornados no
dados do resultado da resultado.
consulta em Bytes
Para obter informações sobre opções avançadas adicionais não disponíveis na interface
do usuário do Power Query, acesse Configurar opções de conector do Azure Data
Explorer em uma consulta M.
Para saber mais sobre o DirectQuery, confira Usar o DirectQuery no Power BI.
instruções let não podem ser usadas com o operador join , erros de sintaxe podem
ocorrer. Portanto, salve cada parte da junção como uma função do Azure Data Explorer
e permita que o Power BI una essas duas funções.
Kusto
Power Query M
let
Source = AzureDataExplorer.Contents("help", "Samples", "StormEvents",
[]),
#"Filtered Rows" = Table.SelectRows(Source, each [StartTime] >
(DateTime.FixedLocalNow()-#duration(5,0,0,0)))
in
#"Filtered Rows"
Power Query M
let
Source = AzureDataExplorer.Contents("help", "Samples", "StormEvents",
[<options>])
in
Source
Você pode usar qualquer uma das seguintes opções em sua consulta M:
7 Observação
Power Query M
let
Source = AzureDataExplorer.Contents("help", "Samples", "StormEvents",
[CaseInsensitive=true]),
#"Filtered Rows" = Table.SelectRows(Source, each [State] == "aLaBama")
in
#"Filtered Rows"
Você pode criar a função a seguir em qualquer cluster de Data Explorer do Azure ao
qual você tem acesso, incluindo um cluster gratuito. A função retorna a tabela
SalesTable do cluster de ajuda, filtrada para transações de vendas maiores ou menores
Kusto
.create-or-alter function LargeOrSmallSales(Cutoff:long,Op:string=">")
{
cluster("help").database("ContosoSales").SalesTable
| where (Op==">" and SalesAmount >= Cutoff) or (Op=="<" and
SalesAmount <= Cutoff)
}
Kusto
LargeOrSmallSales(2000,">")
| summarize Sales=tolong(sum(SalesAmount)) by Country
Kusto
LargeOrSmallSales(20,"<")
| summarize Sales=tolong(sum(SalesAmount)) by Country
5. Uma vez no editor Power Query, crie dois parâmetros, um para o valor de corte e
outro para o operador.
7. No editor, crie duas tabelas estáticas (Inserir Dados) para fornecer opções para os
dois parâmetros. Para o corte, você pode criar uma tabela com valores como 10,
50, 100, 200, 500, 1000, 2000. Para Op , uma tabela com dois valores de texto < e
>.
8. As duas colunas nas tabelas precisam ser associadas aos parâmetros de consulta
usando a seleção Associar ao parâmetro.
O relatório final incluirá segmentações para as duas tabelas estáticas e quaisquer visuais
das vendas de resumo.
Em Editor Avançado:
Por exemplo:
Power Query M
Kusto
Power Query M
Se você estiver usando um parâmetro State por exemplo, ele deverá ser
substituído pela seguinte consulta, que contém três aspas:
Kusto
"StormEvents | where State == """ & State & """ | take 100"
O seguinte exemplo mostra como usar a função percentiles no Azure Data Explorer:
Power Query M
let
StormEvents = AzureDataExplorer.Contents(DefaultCluster,
DefaultDatabase){[Name = DefaultTable]}[Data],
Percentiles = Value.NativeQuery(StormEvents, "| summarize
percentiles(DamageProperty, 50, 90, 95) by State")
in
Percentiles
7 Observação
Em 29 de fevereiro de 2024, o Azure Data Lake Storage Gen1 será desativado. Para
saber mais, acesse o anúncio oficial . Se você usa o Azure Data Lake Storage
Gen1, migre para o Azure Data Lake Storage Gen2 antes da data mencionada. Para
saber como, acesse Migrar do Azure Data Lake Storage Gen1 para o Gen2.
Você só pode criar novas contas do Azure Data Lake Storage Gen1 se já tiver uma
existente.
Resumo
Item Descrição
7 Observação
Alguns recursos podem estar presentes em um produto, mas não em outros devido
a cronogramas de implantação e funcionalidades específicas do host.
Pré-requisitos
Uma assinatura do Azure. Acesse Obter uma avaliação gratuita do Azure .
Uma conta do Azure Data Lake Storage Gen1. Siga as instruções em Introdução ao
Azure Data Lake Storage Gen1 usando o portal do Azure. Este artigo pressupõe
que você já criou uma conta do Data Lake Storage Gen1, chamada myadlsg1 e
carregou um arquivo de dados de exemplo (Drivers.txt) nela. Esse exemplo de
arquivo está disponível para download no Repositório Git do Azure Data Lake .
3. Se esta for a primeira vez que você está se conectando a esse banco de dados,
selecione Entrar para entrar na conta do Azure Data Lake Storage Gen1. Você será
redirecionado à página de entrada da sua organização. Siga os prompts para
entrar na conta.
5. A caixa de diálogo Navegador mostra o arquivo que você carregou para a conta
do Azure Data Lake Storage Gen1. Verifique as informações e selecione
Transformar dados para transformar os dados no Power Query ou Carregar para
carregar os dados no Power BI Desktop.
Tamanho da página em Usado para dividir arquivos grandes em partes menores. O tamanho de
Bytes página padrão é4 MB.
Confira também
Azure Data Lake Storage Gen2
Documentação do Azure Data Lake Storage Gen1
Azure Data Lake Storage Gen2
Artigo • 07/07/2023
Resumo
Item Descrição
7 Observação
Alguns recursos podem estar presentes em um produto, mas não em outros devido
a cronogramas de implantação e funcionalidades específicas do host.
Pré-requisitos
Uma assinatura do Azure. Acesse Obter uma avaliação gratuita do Azure .
https://<accountname>.dfs.core.windows.net/<container>/<subfolder>
2. Em Conectar-se à fonte de dados, insira a URL para a sua conta do Azure Data
Lake Storage Gen2. Consulte Limitações para determinar a URL a ser usada.
5. Selecione Entrar para entrar na conta do Azure Data Lake Storage Gen2. Você será
redirecionado à página de entrada da sua organização. Siga os prompts para
entrar na conta.
Limitações
Atualizar autenticação
A Microsoft não dá suporte à atualização de fluxo de dados ou conjunto de dados
usando a autenticação OAuth2 quando a conta do ADLS (Azure Data Lake Storage
Gen2) está em um locatário diferente. Essa limitação só se aplica ao ADLS quando o
método de autenticação é o OAuth2, ou seja, quando você tenta se conectar a um ADLS
entre locatários usando uma conta do Azure AD. Nesse caso, recomendamos que você
use um método de autenticação diferente do OAuth2/AAD, como o método de
autenticação por chave.
Se você estiver usando um proxy com seu gateway, talvez seja necessário configurar o
arquivo Microsoft.Mashup.Container.NetFX45.exe.config no gateway de dados local.
Para mais informações: Definir as configurações de proxy do gateway de dados local.
Para habilitar a conectividade da rede com o data lake do Azure, talvez seja necessário
habilitar endereços IP específicos da lista no computador do gateway. Por exemplo, se
sua rede tiver alguma regra de firewall em vigor que possa bloquear essas tentativas,
você precisará desbloquear as conexões de rede de saída para o data lake do Azure.
Para habilitar a lista dos endereços de saída necessários, use a marca de serviço
AzureDataLake. Para mais informações: Marcas de serviço de rede virtual
Os fluxos de dados também dão suporte à opção "Traga seu próprio" data lake, o que
significa que você pode criar o seu data lake, gerenciar suas permissões e conectá-lo
explicitamente ao fluxo de dados. Nesse caso, ao se conectar ao ambiente de
desenvolvimento ou de produção usando uma Conta organizacional, você deverá
habilitar uma das seguintes funções para a conta de armazenamento: Leitor de Dados
de Blob, Colaborador de Dados de Blob ou Proprietário de Dados de Blob.
Confira também
Analisar dados no Azure Data Lake Storage Gen2 usando o Power BI
Introdução ao Azure Data Lake Storage Gen2
Analisar dados no Azure Data Lake
Storage Gen2 usando o Power BI
Artigo • 20/07/2023
Neste artigo, você aprenderá a usar Power BI Desktop para analisar e visualizar dados
armazenados em uma conta de armazenamento que tem um namespace hierárquico
(Azure Data Lake Storage Gen2).
Pré-requisitos
Antes de iniciar este tutorial, você deverá ter os seguintes pré-requisitos:
2. Siga as instruções no artigo do conector do Azure Data Lake Storage Gen2 para se
conectar aos dados de exemplo.
Confira também
Azure Data Lake Storage Gen2
Azure HDInsight (HDFS)
Artigo • 05/10/2023
Resumo
Item Descrição
Produtos Excel
Power BI (Conjuntos de dados)
Power BI (Fluxos de dados)
do Customer Insights
Analysis Services
Para fazer a conexão com uma conta do Azure HDInsight, siga estas etapas:
3. Selecione OK.
4. Se você selecionar acesso anônimo, não há nada para ser inserido; portanto,
selecione Avançar.
Resumo
Item Descrição
Pré-requisitos
Um cluster Azure HDInsight no AKS Trino.
4. Selecione OK.
5. Se estiver se conectando a esse cluster Trino pela primeira vez, selecione Entrar
para autenticar. Depois, selecione Conectar.
5. Se estiver se conectando a esse cluster Trino pela primeira vez, selecione Entrar.
Instrução SQL Para obter mais informações, acesse Importar dados de um banco de
dados usando a consulta natuva de banco de dados.
bigint
inteiro
smallint
tinyint
real
double
decimal
booleano
char
varchar
date
timestamp
array
map
varbinary
Banco de Dados SQL do Azure
Artigo • 13/07/2023
Resumo
Item Descrição
Tipos de autenticação Windows (Power BI Desktop, Excel, Power Query Online com
compatíveis gateway)
Banco de dados (Power BI Desktop, Excel)
Conta da Microsoft (todas)
Básico (Power Query Online)
7 Observação
Alguns recursos podem estar presentes em um produto, mas não em outros devido
a cronogramas de implantação e funcionalidades específicas do host.
Pré-requisitos
Por padrão, o Power BI instala um driver OLE DB para SQL do Azure banco de dados. No
entanto, para um desempenho ideal, recomendamos que o cliente instale o SQL Server
Native Client antes de usar o conector Azure SQL Database. O SQL Server Native Client
11.0 e o SQL Server Native Client 10.0 têm suporte para a versão mais recente.
5. Selecione OK.
6. Se essa for a primeira vez que você está se conectando a esse banco de dados,
selecione o tipo de autenticação, insira suas credenciais e selecione o nível ao qual
deseja aplicar as configurações de autenticação. Depois, selecione Conectar.
Para obter mais informações sobre os métodos de autenticação, acesse
Autenticação com uma fonte de dados.
7 Observação
3. Se essa for a primeira vez que você esta se conectando a esse banco de dados,
selecione o tipo de autenticação e insira suas credenciais.
Tempo limite do Se a sua conexão durar mais de 10 minutos (o tempo limite padrão), você
comando em poderá inserir outro valor em minutos para manter a conexão aberta por
minutos mais tempo. Esta opção está disponível somente no Power Query Desktop.
Instrução SQL Para obter mais informações, acesse Importar dados de um banco de
dados usando a consulta natuva de banco de dados.
Adicionar colunas Se marcada, inclui colunas que podem ter relações com outras tabelas. Se
de relação essa caixa estiver desmarcada, você não verá essas colunas.
Solução de problemas
Resumo
ノ Expand table
Item Descrição
7 Observação
Alguns recursos podem estar presentes em um produto, mas não em outros devido
a agendamentos de implantação e recursos específicos do host.
Pré-requisitos
Uma assinatura do Azure. Acesse Obter uma avaliação gratuita do Azure .
7 Observação
7 Observação
Você pode definir o escopo das consultas para o nível de assinatura ou de grupo
de gerenciamento, se nenhuma opção for escolhida, a consulta será executada no
nível do locatário por padrão.
3. Se você estiver conectando a este site pela primeira vez, selecione Entrar e insira
suas credenciais. Depois, selecione Conectar.
7 Observação
ノ Expand table
Id(es) de assinatura Especifique as assinaturas específicas que você deseja consultar. Insira
cada ID de assinatura separado por vírgulas. Esse campo será obrigatório
se você selecionar o escopo da assinatura.
Id(s) do(s) Grupo(s) de Especifique os grupos de gerenciamento específicos que você deseja
Gerenciamento consultar. Insira cada grupo de gerenciamento separado por vírgulas.
Esse campo será obrigatório se você selecionar o escopo do grupo de
gerenciamento.
Confira também
Visão geral do Azure Resource Graph
Exemplos de consulta do Gráfico de Recursos do Azure Starter
Azure Synapse Analytics (SQL DW)
Artigo • 17/08/2023
Resumo
Item Descrição
Produtos Excel
Power BI (Conjuntos de dados)
Power BI (Fluxos de dados)
Malha (Dataflow Gen2)
Power Apps (Fluxos de dados)
Customer Insights do Dynamics 365
Analysis Services
7 Observação
Alguns recursos podem estar presentes em um produto, mas não em outros devido
a cronogramas de implantação e funcionalidades específicas do host.
Pré-requisitos
Por padrão, o Power BI instala um driver OLE DB para o Azure Synapse Analytics (SQL
DW). No entanto, para um desempenho ideal, recomendamos que o cliente instale o
SQL Server Native Client antes de usar o conector Azure Synapse Analytics (SQL DW). O
SQL Server Native Client 11.0 e o SQL Server Native Client 10.0 têm suporte para a
versão mais recente.
4. Selecione OK.
5. Se essa for a primeira vez que você está se conectando a esse banco de dados,
selecione o tipo de autenticação, insira suas credenciais e selecione o nível ao qual
deseja aplicar as configurações de autenticação. Depois, selecione Conectar.
7 Observação
2. Na caixa de diálogo Azure Synapse Analytics (SQL DW) exibida, forneça o nome
do servidor e do banco de dados (opcional). Neste exemplo, TestAzureSQLServer é
o nome do servidor e AdventureWorks2012 é o banco de dados.
A tabela a seguir lista todas as opções avançadas que você pode definir no Power Query
Desktop e no Power Query Online.
Tempo limite do Se a sua conexão durar mais de 10 minutos (o tempo limite padrão), você
comando em poderá inserir outro valor em minutos para manter a conexão aberta por
minutos mais tempo.
Instrução SQL Para obter mais informações, acesse Importar dados de um banco de
dados usando a consulta natuva de banco de dados.
Adicionar colunas de Se marcada, inclui colunas que podem ter relações com outras tabelas. Se
relação essa caixa estiver desmarcada, você não verá essas colunas.
Opção avançada Descrição
Solução de problemas
Resumo
Item Descrição
7 Observação
7 Observação
Pré-requisitos
Antes de entrar nos workspaces do Synapse, você deve ter acesso ao workspace do
Azure Synapse Analytics.
2. Se essa for a primeira vez que está se conectando a esse workspace, você precisará
entrar na sua conta do Synapse. Para entrar, selecione Entrar.
3. Na janela Entrar com a Microsoft que aparece, forneça suas credenciais para
entrar na conta do Synapse. Em seguida, selecione Avançar.
Depois que a conexão for estabelecida, você verá uma lista dos workspaces aos quais
tem acesso. Percorra os workspaces, bancos de dados e tabelas.
É possível Carregar a tabela selecionada, que insere toda a tabela no Power BI Desktop,
ou selecionar Transformar dados para editar a consulta, que abre o editor do Power
Query. Em seguida, é possível filtrar e refinar o conjunto de dados que deseja usar e
carregar esse conjunto refinado de dados no Power BI Desktop.
Solução de problemas
Se o seu acesso estiver definido apenas no RBAC do Synapse, talvez você não consiga
ver o workspace.
Verifique se o seu acesso está definido pelo RBAC do Azure para assegurar que todos os
workspaces do Synapse sejam exibidos.
Armazenamento de Tabelas do Azure
Artigo • 05/10/2023
Resumo
Item Descrição
Produtos Excel
Power BI (Conjuntos de dados)
Power BI (Fluxos de dados)
Malha (fluxo de dados Gen2)
Power Apps (Fluxos de dados)
Customer Insights (Fluxos de dados)
Analysis Services
Para fazer a conexão com o Armazenamento de Tabelas do Azure, siga estas etapas:
2. Localize sua conta do armazenamento de blobs do Azure onde sua tabela está
hospedada.
5. Selecione o ícone Copiar para a área de transferência para copiar o valor Key.
Classificações de segurança do BitSight
Artigo • 05/10/2023
7 Observação
Resumo
Item Descrição
Pré-requisitos
Os usuários devem possuir o produto Classificações de segurança do BitSight para
acessar os dados do BitSight no Power BI. Para obter mais informações sobre as
Classificações de segurança do BitSight, acesse https://www.bitsight.com/security-
ratings .
3. Se essa for a primeira vez que você recebe dados por meio do conector do
BitSight, um prompt aparecerá para informá-lo sobre a conexão com um serviço
de terceiros.
4. Coloque o token de API do BitSight no Power BI. Na janela exibida, forneça suas
credenciais.
5. Depois que a conexão for estabelecida, você poderá visualizar e selecionar vários
pontos de dados na caixa de diálogo Navegador para criar uma saída.
É possível Carregar a tabela selecionada, que insere toda a tabela no Power BI Desktop,
ou selecionar Transformar dados para editar a consulta, que abre o editor do Power
Query. Em seguida, é possível filtrar e refinar o conjunto de dados que deseja usar e
carregar esse conjunto refinado de dados no Power BI Desktop.
Limitações e problemas
7 Observação
Resumo
Item Descrição
Pré-requisitos
Sua organização deve ter uma assinatura da Bloomberg PORT Enterprise e você deve ser
um usuário da Bloomberg Anywhere e ter um dispositivo de autenticação biométrica da
Bloomberg (B-Unit).
3. Se essa for a primeira vez que você está se conectando ao conector Bloomberg
Data and Analytics, um alerta de terceiros será exibido. Selecione Não mostrar
alerta novamente para esse conector se você não quiser que essa mensagem seja
exibida novamente e, depois, selecione Continuar.
4. Insira uma consulta BQL (Bloomberg Query Language) para especificar quais
dados você deseja obter. Para saber mais sobre o BQL, entre em contato com seu
representante Bloomberg Sales. Selecione OK.
5. Para entrar na sua conta da Bloomberg, selecione Entrar.
Depois que a conexão for estabelecida, você verá os dados disponíveis no Navegador.
Você pode carregar a tabela selecionada ou selecionar Transformar dados para editar a
consulta, que abrirá o Editor do Power Query. Em seguida, é possível filtrar e refinar o
conjunto de dados que deseja usar e carregar esse conjunto refinado de dados no
Power BI Desktop.
BQE Core
Artigo • 05/10/2023
7 Observação
Resumo
Item Descrição
Pré-requisitos
Para usar o conector do Power BI do BQE Core, você deve ter uma conta do BQE Core
com nome de usuário e senha.
7 Observação
Resumo
Item Descrição
Pré-requisitos
Uma conta do CData Connect Cloud
Pelo menos uma conexão configurada em sua conta do CData Connect Cloud
Importar dados
Com a janela Navegador aberta, siga estas etapas para acessar seus dados do CData
Connect Cloud:
7 Observação
Resumo
Item Descrição
Pré-requisitos
Antes de entrar no Celonis EMS , você deve ter uma conta do Celonis EMS (nome de
usuário/senha).
2. A caixa de diálogo Celonis EMS agora é exibida, com uma URL de exemplo. Insira
a URL da Equipe da Celonis EMS e selecione OK.
3. Insira sua Chave de Aplicativo ou sua Chave de API Pessoal gerada no Celonis
EMS.
Limitações e problemas
Você deve estar ciente das seguintes limitações e problemas associados ao acesso aos
dados do Celonis EMS:
O Celonis EMS tem um limite interno de 200 mil linhas e 20 colunas retornadas por
registro.
7 Observação
Resumo
Item Descrição
Pré-requisitos
Antes de usar o conector CloudBluePSA, você deve ter uma instância do CloudBluePSA
(nome de usuário/senha) e uma chave de API. Entre na instância do PSA, que
geralmente está em uma URL semelhante a YOUR_COMPANY_NAME.cloudbluepsa.io , e
navegue para Configurar > Funcionários > Localizar funcionários e adicione um novo
usuário de API, que fornece uma chave de API.
Recursos
Importaçãoação
3. Na janela Recuperar todas as páginas de dados exibida, copie e cole a URL gerada
no lado GET do ponto de extremidade de API de sua escolha. Em seguida, em
Filtro, copie e cole o filtro construído no mesmo ponto de extremidade de API. Por
exemplo:
URL:
https://INSTANCE_URL/webapi/v1.3/tickets/getticketsreport
Filtro\ { "pageno": 1, "pagesize": 10, "filters": [{"field": "Type", "op": "cn",
"data": "n"}], "filterop": "AND", "sortcolumn": "Name", "sortorder": "Asc",
4. Selecione OK.
6. Você precisa selecionar Transformar Dados e essa seleção abre o editor do Power
Query.
7 Observação
O conector do Common Data Service (Legacy) foi substituído pelo conector Power
Query Dataverse. Na maioria dos casos, recomendamos que você use o conector
do Dataverse em vez do conector do Common Data Service (Legacy). No entanto,
pode haver casos limitados em que é necessário escolher o conector do Common
Data Service (Legacy). Esses casos são descritos em Quando usar o conector do
Common Data Service (Legacy).
Resumo
Item Descrição
7 Observação
Alguns recursos podem estar presentes em um produto, mas não em outros devido
a cronogramas de implantação e funcionalidades específicas do host.
Pré-requisitos
Você deve ter um ambiente Common Data Service (Legacy) com permissões de maker
para acessar o portal e permissões de leitura para acessar dados em tabelas.
4. Se esta for a primeira vez que você está se conectando a este site, selecione Entrar
e insira suas credenciais. Depois, selecione Conectar.
Na nova guia do navegador que se abrir, copie a raiz da URL. Essa URL raiz é a URL
exclusiva para seu ambiente. A URL estará no formato
https://<yourenvironmentid.crm.dynamics.com/>. Mantenha essa URL em algum lugar à
mão para que você possa usá-la mais tarde, por exemplo, ao criar relatórios do Power
BI.
Quando usar o conector do Common Data Service
(Legacy)
O Dataverse é a substituição direta para o conector do Common Data Service. No
entanto, pode haver momentos em que é necessário escolher o conector do Common
Data Service (Legacy) em vez do conector do Dataverse:
Há certos tipos de dados TDS (Fluxo de Dados Tabulares) com suporte no OData ao usar
o Common Data Service (Legacy) que não têm suporte no Dataverse. Os tipos de dados
com suporte e sem suporte são listados em Como o SQL do Dataverse difere do
Transact-SQL.
Limitações e problemas
Use o recurso Azure Synapse Link no Power Apps para extrair dados do Dataverse
para Azure Data Lake Storage Gen2, que podem ser usados para executar a
análise. Para obter mais informações sobre o recurso Azure Synapse Link, acesse O
que é Azure Synapse Link para o Dataverse?.
Use o conector OData para mover dados para dentro e para fora do Dataverse.
Para obter mais informações sobre como migrar dados entre ambientes do
Dataverse usando o conector OData de fluxos de dados, acesse Migrar dados
entre ambientes do Dataverse usando o conector OData de fluxos de dados.
7 Observação
Power Query M
Table.SelectColumns(#"Navigation 1", {"statuscode", "statuscode_display"})
Se você estiver usando o conector do Common Data Service (Legacy), poderá usar uma
única consulta para acessar todos os dados no conjunto de dados. Esse conector
funciona de forma diferente e retorna o resultado em "páginas" de registros de 5K.
Embora o conector do Common Data Service (Legacy) seja mais eficiente no retorno de
grandes quantidades de dados, ainda pode levar um tempo significativo para retornar o
resultado.
7 Observação
Resumo
Item Descrição
7 Observação
Alguns recursos podem estar presentes em um produto, mas não em outros devido
a cronogramas de implantação e funcionalidades específicas do host.
Pré-requisitos
Esse conector deve ser usado apenas com um SQL Warehouse do Databricks em
execução na AWS e usando OAuth. Se você estiver usando o Azure Databricks, use o
conector Azure Databricks. Se você não estiver usando OAuth com o SQL Warehouse do
Databricks (na AWS ou no GCP), use o conector Azure Databricks também. Não há
suporte para o Databricks Community Edition.
1. Na experiência de Obter Dados, procure Databricks para obter uma lista pequena
do conector Databricks. Você só deve usar o conector Databricks aqui para seus
dados do SQL Warehouse do Databricks (em execução na AWS) se estiver usando
OAuth para autenticação.
7 Observação
Depois de inserir suas credenciais para um SQL Warehouse do Databricks
específico, o Power BI Desktop armazena em cache e reutiliza essas mesmas
credenciais em tentativas de conexão subsequentes. Você pode modificar
essas credenciais indo até Arquivo > Opções e configurações >
Configurações de fonte de dados. Mais informações: Alterar o método de
autenticação
4. Depois que você se conecta com êxito, o Navegador mostra os dados disponíveis
para você no cluster. Você pode escolher Transformar Dados para transformar os
dados usando o Power Query ou Carregar para carregar os dados no Power Query
Desktop.
Básico. Use essa opção ao autenticar com um nome de usuário e uma senha.
Essa opção não está disponível se sua organização/conta usa 2FA/MFA.
Chave de Conta. Use essa opção ao autenticar usando um Token de Acesso
Pessoal. Consulte Tokens de acesso pessoal para obter instruções sobre como
gerar um PAT (Token de Acesso Pessoal).
Conta organizacional. Use essa opção ao autenticar com OAuth. Entre em sua
conta organizacional usando o pop-up do navegador.
4. Depois que você se conecta com êxito, o Navegador aparece e exibe os dados
disponíveis no servidor. Selecione os dados no navegador. Em seguida, selecione
Avançar para transformar os dados no Power Query.
Dataverse
Artigo • 13/07/2023
Resumo
Item Descrição
Produtos Excel
Power BI (Conjuntos de dados)
Power BI (Fluxos de dados)
Malha (Dataflow Gen2)
Power Apps (Fluxos de dados)
Customer Insights do Dynamics 365
7 Observação
Alguns recursos podem estar presentes em um produto, mas não em outros devido
a cronogramas de implantação e funcionalidades específicas do host.
Pré-requisitos
Você deve ter um ambiente do Dataverse.
Para usar o conector do Dataverse, uma das portas TCP 1433 ou 5558 precisa estar
aberta para se conectar. A porta 1433 é usada automaticamente. No entanto, se a porta
1433 estiver bloqueada, você poderá usar a porta 5558. Para habilitar a porta 5558, você
deve acrescentar esse número de porta à URL do ambiente do Dataverse, como
yourenvironmentid.crm.dynamics.com, 5558. Mais informações: SQL Server problema de
conexão devido a portas fechadas
7 Observação
Se você estiver usando Power BI Desktop e precisar usar a porta 5558, deverá criar
uma fonte com a URL de ambiente do Dataverse, como
yourenvironmentid.crm.dynamics.com.5558, no Power Query M.
7 Observação
2. Se você estiver se conectando a este site pela primeira vez, selecione Entrar e
insira suas credenciais. Depois, selecione Conectar.
7 Observação
Se você precisar usar a porta 5558 para acessar seus dados, precisará carregar
um ambiente específico com a porta 5558 acrescentada no final no endereço
da URL do servidor. Nesse caso, acesse Localizar a URL de ambiente do
Dataverse para obter instruções sobre como obter o endereço de URL do
servidor correto.
A tabela a seguir lista as opções avançadas que você pode definir no Power Query
Online.
Opção Descrição
avançada
Adicionar Se marcada, inclui colunas que podem ter relações com outras tabelas. Se essa
colunas de caixa estiver desmarcada, você não verá essas colunas. Mais informações:
relação Problemas de desempenho relacionados a colunas de relação
Na nova guia do navegador que se abrir, copie a raiz da URL. Essa URL raiz é a URL
exclusiva para seu ambiente. A URL estará no formato
https://<yourenvironmentid.crm.dynamics.com/>. Remmova https:// e a parte a / da
URL antes de colá-la para se conectar ao seu ambiente. Acrescente a porta 5558 ao
final da URL do ambiente, por exemplo , yourenvironmentid.crm.dyamics.com,5558.
Há certos tipos de dados TDS (Fluxo de Dados Tabulares) com suporte no OData ao usar
o Common Data Service (Legacy) que não têm suporte no Dataverse. Os tipos de dados
com suporte e sem suporte são listados em Como o SQL do Dataverse difere do
Transact-SQL.
Use o recurso Azure Synapse Link no Power Apps para extrair dados do Dataverse
para Azure Data Lake Storage Gen2, que podem ser usados para executar a
análise. Para obter mais informações sobre o recurso Azure Synapse Link, acesse O
que é Azure Synapse Link para o Dataverse?.
Use o conector OData para mover dados para dentro e para fora do Dataverse.
Para obter mais informações sobre como migrar dados entre ambientes do
Dataverse usando o conector OData de fluxos de dados, acesse Migrar dados
entre ambientes do Dataverse usando o conector OData de fluxos de dados.
7 Observação
Power Query M
Depois que uma fonte de banco de dados for definida, você poderá especificar uma
consulta nativa usando a função Value.NativeQuery.
Power Query M
Power Query M
let
Source = CommonDataService.Database("[DATABASE]"),
myQuery = Value.NativeQuery(Source, "[QUERY]", null,
[EnableFolding=true])
in
myQuery
Se você estiver usando o conector do Common Data Service (Legacy), poderá usar uma
única consulta para acessar todos os dados no conjunto de dados. Esse conector
funciona de forma diferente e retorna o resultado em "páginas" de 5 mil registros.
Embora o conector do Common Data Service (Legacy) seja mais eficiente no retorno de
grandes quantidades de dados, ainda pode levar um tempo significativo para retornar o
resultado.
Power Query M
Source = CommonDataService.Database("{crminstance}.crm.dynamics.com",
[CreateNavigationProperties=false]),
Fluxos de dados
Artigo • 10/11/2023
Resumo
Item Descrição
Produtos Excel
Power BI (Conjuntos de dados)
Power BI (Fluxos de dados)
Malha (fluxo de dados Gen2)
Power Apps (Fluxos de dados)
Dynamics 365 Customer Insights (fluxos de dados)
7 Observação
Alguns recursos podem estar presentes em um produto, mas não em outros devido
a cronogramas de implantação e funcionalidades específicas do host.
Pré-requisitos
Você deve possuir um fluxo de dados com permissões de criador para acessar o portal e
permissões de leitura para acessar os dados do fluxo de dados.
7 Observação
2. Na caixa de diálogo Obter dados, selecione Power Platform > Fluxos de dados e
Conectar.
3. Se esta for a primeira vez que você está se conectando a este site, selecione Entrar
e insira suas credenciais. Depois, selecione Conectar.
4. No Navegador, selecione o fluxo de dados desejado e carregue ou transforme os
dados.
Perguntas frequentes
O DirectQuery não está funcionando no Power BI. O que devo fazer?
Para que o DirectQuery seja executado, você precisa ter o Power BI Premium e ajustar
alguns itens de configuração no workspace do Power BI. Essas ações são explicadas no
artigo Recursos Premium de fluxos de dados.
Minha tabela de fluxo de dados não aparece no conector de fluxo de dados no Power
BI
Provavelmente você está usando uma tabela do Dataverse como o destino do fluxo de
dados padrão. Use o conector Dataverse/CDS ou considere mudar para um fluxo de
dados analítico.
Há uma diferença nos dados quando removo as duplicidades nos fluxos de dados.
Como posso resolver isso?
Pode haver uma diferença nos dados entre o momento da criação e o momento da
atualização. Não podemos garantir qual instância está sendo mantida durante o tempo
de atualização. Para obter informações sobre como evitar inconsistências nos dados,
acesse Como trabalhar com duplicidades.
Estou obtendo dados por meio do conector de fluxo de dados, mas estou recebendo um
código de erro 429: como posso resolver isso?
Quando você está recebendo um código de erro 429, possivelmente é devido a exceder
o limite de 1000 solicitações por minuto. Esse erro normalmente é resolvido sozinho se
você aguardar um ou dois minutos após o término do período de resfriamento. Esse
limite está em vigor para impedir que os fluxos de dados e outras funcionalidades do
Power BI tenham um desempenho degradado. As consequências devido à alta carga
contínua no serviço podem resultar em desempenho adicional degradado, por isso
pedimos aos usuários que reduzam significativamente o número de solicitações para
menos de 1000 (limite) ou corrijam seu script/modelo para esse limite específico (1000)
para atenuar o impacto com eficiência e evitar mais problemas. Você também deve
evitar junções aninhadas que solicitam novamente dados de fluxo de dados; em vez
disso, prepare dados e execute mesclagens no fluxo de dados, em vez de no conjunto
de dados.
Confira também
Como usar a saída de fluxos de dados de outras experiências do Power Query
Melhores práticas para criação e desenvolvimento de fluxos de dados complexos
Práticas recomendadas para reutilizar fluxos de dados nos ambientes e workspaces
Compartilhamento Delta
Artigo • 05/10/2023
7 Observação
Resumo
Item Descrição
Pré-requisitos
Se você usar o Power BI Desktop precisar instalar a versão de novembro do Power BI
Desktop ou posterior. Faça o download da versão mais recente .
O provedor de dados envia uma URL de ativação da qual você pode baixar um arquivo
de credenciais que concede acesso aos dados compartilhados.
6. Selecione OK.
8. Selecione Conectar.
Limitações e considerações
Esta seção descreve quaisquer limitações ou considerações do conector de
Compartilhamento Delta.
7 Observação
Resumo
Item Descrição
7 Observação
Alguns recursos podem estar presentes em um produto, mas não em outros devido
a cronogramas de implantação e funcionalidades específicas do host.
Pré-requisitos
Para usar esse conector, você deve ter instalado a plataforma Denodo e configurado e
iniciado seu serviço. No caso de uma conexão usando um DSN do ODBC, você deve ter
configurado corretamente a conexão no Administrador de Fonte de Dados ODBC.
1. Para se conectar aos dados, selecione Obter Dados na faixa de opções Página
Inicial e selecione Denodo na seção Banco de Dados.
Ao criar uma cadeia de conexão compatível com Denodo, você deve levar em
conta que o campo Driver deve ser omitido, pois isso é definido de forma
transparente no momento da conexão pelo próprio conector.
HTTP
HTTP
7 Observação
Ao gravar a cadeia de conexão, deve-se levar em conta:
4. A terceira seção, Consulta Nativa, é um campo opcional no qual você pode inserir
uma consulta. Se esse campo de consulta for usado, o conjunto de dados
resultante será o resultado da consulta em vez de uma tabela ou um conjunto de
tabelas.
Você pode gravar uma consulta que consulte apenas um dos bancos de dados aos
quais a fonte de dados está associada.
SQL
Se desejar gravar uma consulta que consulte mais de um banco de dados, você
precisará especificar na consulta o banco de dados que possui cada tabela.
SQL
SELECT i_item_sk, country FROM sakila.country, ewd.item
7. Antes de mostrar a janela do navegador que exibe uma visualização dos dados
disponíveis no Denodo Virtual DataPort, você será solicitado a autenticação. O
conector personalizado do Denodo Power BI dá suporte a dois tipos de
autenticação: Windows e Basic.
Nesse caso:
1. Configure o gateway de dados local (gateway corporativo) que atua como uma
ponte, fornecendo transferência de dados rápida e segura entre dados locais
(dados em seu aplicativo Power BI Desktop, não na nuvem) e o serviço do Power
BI.
Basic: Esse tipo de autenticação permite que você crie uma fonte de dados
no serviço do Power BI para se conectar aos dados do Virtual DataPort
usando as credenciais do servidor Virtual DataPort.
5. Depois que uma fonte de dados for criada para o conector do Denodo, você
poderá atualizar os relatórios do Power BI. Para publicar um relatório no
powerbi.com, você precisa:
Solução de problemas
Carregar dados quando um campo em um modo de
exibição do Denodo tem mais de 42 relações com outros
modos de exibição.
Se um modo de exibição do Denodo que está sendo importado como uma fonte de
dados para o Power BI tiver mais de 42 relações com outros modos de exibição, o Power
BI poderá exibir o seguinte erro ao acessar a janela de transformação de dados:
Preview.Error: The type of the current preview value is too complex to display.
Este erro deve-se a uma limitação na plataforma Microsoft Power Query. Para contornar
isso, selecione a fonte de dados com falha (consulta) na janela de transformação de
dados e acesse o editor avançado em Exibir>Editor Avançado. Em seguida, edite a
expressão da fonte de dados na linguagem M, adicionando a seguinte propriedade ao
options argumento da Denodo.Contents chamada de função:
CreateNavigationProperties=false
Resumo
Item Descrição
Tipos de autenticação compatíveis Token Web JSON (JWT) da Digital Construction Works
7 Observação
Pré-requisitos
O uso desse conector requer uma assinatura da Plataforma de integrações da Digital
Construction Works. Para saber mais, acesse
https://www.digitalconstructionworks.com/solutions/the-dcw-integrations-platform .
Visite https://www.digitalconstructionworks.com para obter informações sobre a
empresa.
3. Selecione OK.
4. Se esta for a primeira vez que você está se conectando a esse ponto de
extremidade, será solicitado que você insira o JWT usado para autorizar você neste
projeto. Depois, selecione Conectar.
Para obter mais informações sobre os métodos de autenticação, acesse
Autenticação com uma fonte de dados.
7 Observação
Se a conexão não for especificada para usar https , você será solicitado a
atualizar sua URL.
Solução de problemas
OData.Feed
Utilizamos as seguintes configurações padrão ao usar o OData.Feed:
Resumo
Item Descrição
Produtos Excel
Power BI (Conjuntos de dados)
Analysis Services
Para estabelecer conexão ao Dynamics 365 Online (legado), siga estes passos:
7 Observação
3. Selecione OK.
4. Se você estiver se conectando a essa fonte de dados pela primeira vez, poderá
selecionar um destes tipos de autenticação: Anônimo, Windows, Básico, API da
Web ou Conta organizacional. Insira suas credenciais e selecione Conectar. Na
próxima vez que você se conectar, ele lembrará suas credenciais.
Resumo
Item Descrição
7 Observação
Pré-requisitos
Antes de entrar no Eduframe Reporting, você deve ter uma conta de administrador do
Eduframe (nome de usuário/senha) e ter habilitado a integração do Eduframe Reporting.
Para habilitar essa integração, você pode enviar um e-mail para: support@eduframe.nl.
3. Insira o domínio do Eduframe que você deseja acessar (esse domínio é o URL sem
.eduframe.nl) e se deseja excluir informações pessoais. Depois, selecione OK.
4. Para fazer login na conta do Eduframe, selecione Entrar.
5. Na janela exibida, forneça suas credenciais para entrar em sua conta do Eduframe
e selecione Entrar.
6. Em seguida, será mostrada uma janela onde você precisa aprovar essa integração
com o Power BI. Selecione Aprovar.
7. Depois de entrar, selecione Conectar.
Limitações e problemas
Você deve estar ciente das seguintes limitações e problemas associados ao acesso aos
dados do Eduframe.
Próximas etapas
Você pode encontrar informações adicionais e modelos para este conector em nossa
página de documentação .
Emplifi Metrics (Beta)
Article • 11/01/2023
Summary
Item Description
Capabilities
Import
EQuIS
Artigo • 05/10/2023
7 Observação
Resumo
Item Descrição
Pré-requisitos
Para usar o conector EQuIS, você deve ter uma conta de usuário válida em um site do
EQuIS Enterprise (versão 7.0.0.19300 ou posterior) que inclua uma licença de API REST.
Sua conta de usuário deve ser membro da função da API REST. Para verificar a
configuração da conta de usuário, acesse a guia Funções em seu perfil de usuário e
verifique se você é membro da função da API REST.
Resumo
Item Descrição
Pré-requisitos
Há suporte para a versão do Essbase 11.1.2.x.
O port number (por exemplo, 19000) é o número da porta que o servidor APS
está escutando para solicitações XMLA.
padrão 19000).
Outra opção é inserir valores nas opções avançadas que você quer usar para
modificar a consulta de conexão. Mais informações: Conectar usando opções
avançadas
4. Na primeira vez que você se conectar a uma fonte de dados (identificada por cada
URL exclusiva), as credenciais da conta serão solicitadas. Insira o Nome de usuário
e a Senha da conexão. Mais informações: Autenticação com uma fonte de dados
5. No Navegador, selecione os dados necessários. Em seguida, selecione
Transformar dados para transformar os dados no Editor do Power Query ou
Carregar para carregar dados no Power BI.
Tempo Permite definir o tempo máximo que um comando tem permissão para execução
limite do antes que o Power BI abandone a chamada. Se o tempo limite do comando for
comando atingido, o Power BI poderá tentar novamente mais duas vezes antes de abandonar
em completamente a chamada. Essa configuração é útil para consultar grandes
minutos quantidades de dados. O valor padrão do tempo limite do comando é 140 segundos.
Servidor O nome do servidor em que a instrução MDX opcional deve ser executada. Esse valor
diferencia maiúsculas de minúsculas.
Aplicativo O nome do aplicativo em que a instrução MDX opcional deve ser executada. Esse
valor diferencia maiúsculas de minúsculas.
Instrução Opcionalmente, fornece uma instrução MDX específica para o servidor Oracle
MDX Essbase executar. Normalmente, o Power BI determina interativamente as medidas e
dimensões do cubo a ser retornado. No entanto, ao especificar a instrução MDX, os
resultados dessa instrução MDX específica serão carregados. Ao especificar a
instrução MDX, você também deve fornecer as opções avançadas de Servidor (por
exemplo, essbaseserver-1 ) e o Aplicativo (por exemplo, Sample ) para indicar onde a
instrução MDX deve ser executada. Além disso, você só pode usar a instrução MDX
em conjunto com o modo de Conectividade de dados definido como Importação.
Escolha uma medida e todos (ou cada) os níveis de dimensão marcando a caixa de
seleção ao lado do nome. Uma pré-visualização dos dados é mostrada no painel à
direita. Clique no botão Carregar para recuperar os dados associados à seleção ou
clique no botão Transformar dados para definir filtros adicionais nos dados antes de
carregá-los no Power BI.
Diferenças na exibição em comparação com a
administração do Essbase
Ao expandir uma hierarquia de dimensões no navegador, veja que ela parece diferente
em comparação com o uso do painel de controle dos Serviços de Administração do
Essbase.
Lembre-se de que essa aparência é uma decisão estilística e que não há diferenças nos
dados. Os níveis no navegador do Power Query são iguais ao nível hierárquico.
No exemplo acima, o Nível 1 conteria "R_ReportingUnits", "Entrada de Entidade de
Ajuste" e "No_Entity". O nível 2 conteria "R_Americas", "R_EMEA", "R_AsiaPacific",
"1_ReportingUnits_Adjustment", "CALA_HFM_Input", "CALA_Total" e assim por diante.
O motivo é que o navegador no Power Query está limitado a 10 mil membros a serem
exibidos, e pode haver milhões ou bilhões de membros em uma hierarquia. Mesmo
quando não há nenhum limite para a exibição de membros (como no Power Query
Online), navegar e selecionar cada membro em um formato de árvore com tantos
valores possíveis rapidamente se torna entediante e difícil.
7 Observação
Essas opções são válidas somente para o arquivo atual em que você está
trabalhando. As configurações da opção Arquivo atual são salvas com o arquivo e
restauradas na abertura do mesmo arquivo.
2. Expanda a árvore para fazer uma busca detalhada no servidor, aplicativo e banco
de dados desejados até que ela exponha as medidas e dimensões do banco de
dados. Por enquanto, selecione suas medidas e apenas um nível de dimensão.
Escolha o nível de dimensão mais importante. Em etapas posteriores, você criará o
resultado adicionando incrementalmente mais níveis de dimensões.
3. Selecione Carregar para importar as medidas selecionadas e o nível de dimensão.
2. Caso você queira filtrar algum membro na dimensão inicial, clique no botão de
propriedades da coluna para exibir a lista de membros da dimensão
disponíveis neste nível. Selecione apenas os membros de dimensão necessários
neste nível e clique em OK para aplicar o filtro.
4. Agora você adicionará um novo nível de dimensão. Nesse caso, você adicionará o
próximo nível abaixo na mesma dimensão escolhida inicialmente. Clique em
Adicionar itens na faixa de opções para abrir a caixa de diálogo Navegador.
5. Navegue até a mesma dimensão, mas desta vez selecione o próximo nível abaixo
do primeiro. Em seguida, clique em OK para adicionar o nível de dimensão ao
resultado.
7. Agora você pode aplicar um filtro à dimensão de segundo nível, como fez com o
primeiro.
8. Dessa forma, cada etapa subsequente garante que apenas os membros e os dados
necessários sejam recuperados do servidor.
2. Depois que o nível de uma dimensão estiver no painel Filtro e o tipo de filtro
estiver definido como Filtragem básica, você observará que os membros do nível
dessa dimensão são exibidos como uma lista de filtros disponíveis.
Digite alguns caracteres no campo de pesquisa para que esse filtro encontre
membros na lista.
4. Quando tiver filtros para dois ou mais níveis da mesma dimensão, você observará
que selecionar membros de um nível mais alto na dimensão altera os membros
disponíveis nos níveis inferiores dessa dimensão.
5. Quando você terminar de escolher os membros desejados no filtro de nível de
dimensão, é um bom momento para adicionar esse nível de dimensão à sua
visualização. Verifique o nível de dimensão correspondente no painel Campos e
depois o adicione à visualização atual.
Para saber mais sobre como adicionar filtros, acesse Adicionar filtro a um relatório no
Power BI.
Solução de problemas
Esta seção descreve os problemas comuns que você pode encontrar e inclui etapas de
solução de problemas.
Problemas de conexão
Sintoma 1
Resolução
Validação
Tentar se conectar novamente não mostrará o erro e a lista de membros e cubos está no
painel de navegação. Você também pode selecionar e exibir em versão prévia no modo
de importação.
Sintoma 2
O Power BI Desktop retorna a mensagem de erro "Não foi possível autenticar com as
credenciais fornecidas. Tente novamente.”
Resolução
Validação
Depois de corrigir o nome de usuário e a senha, você poderá ver os membros e o valor
na pré-visualização ou carregar os dados.
Sintoma 3
O Power BI Desktop retorna a mensagem de erro "Os dados no nível raiz são inválidos.
Linha 1, posição 1."
Resolução
Validação
Tentar se conectar novamente não mostrará o erro e a lista de membros e cubos é
exibida no painel de navegação. Você também pode selecionar e exibir em pré-
visualização no modo de importação.
Sintoma 4
Uma vez conectado com êxito ao servidor APS (Serviços de Provedor Analítico) do
Oracle Essbase, há servidores listados abaixo do nó de URL no navegador da fonte de
dados. No entanto, quando você expande um nó de servidor, nenhum aplicativo é
listado abaixo dele.
Resolução
Validação
Tentar se conectar novamente não mostrará o erro e você pode ver a lista de membros
e cubos no painel de navegação. Você também pode selecionar e exibir em pré-
visualização no modo de importação.
O Power Query retorna a mensagem de erro "A operação atingiu o tempo limite"
Resolução
Validação
Tente carregar novamente os dados e, se o problema continuar, tente aumentar para
um intervalo de tempo limite mais longo ou filtrar ainda mais os dados. Se o problema
ainda persistir, tente a resolução em Sintomas 3.
Sintoma 2
A consulta retorna a mensagem de erro "Erro interno: a consulta está alocando memória
muito grande ( > 4 GB) e não pode ser executada. A alocação de consulta excede os
limites de alocação."
Resolução
A consulta que você está tentando executar está produzindo resultados maiores do que
o servidor Oracle Essbase pode manipular. Forneça ou aumente os filtros na consulta
para reduzir a quantidade de dados que o servidor retornará. Por exemplo, selecione
membros específicos para cada nível de cada dimensão ou defina limites numéricos no
valor das medidas.
Validação
Sintoma 3
Resolução
Validação
Uma instrução MDX retorna a mensagem de erro "A chave não correspondeu a
nenhuma linha na tabela".
Resolução
Validação
Uma instrução MDX retorna a mensagem de erro "Não é possível obter o nome do
cubo da instrução. Verifique o formato usado para especificar o nome do cubo".
Resolução
Validação
Uma instrução MDX retorna a mensagem de erro "Erro do Essbase (1260060): o nome
do cubo XXXX não corresponde ao aplicativo/banco de dados atual"
Resolução
Validação
Resolução
2. Navegue para Servidor do Essbase > Aplicativo > Banco de dados com a dimensão
"Medidas" que apresenta problemas.
4. Determine qual dimensão deve ser o tipo de dimensão "Contas". Clique com o
botão direito do mouse nela e selecione Editar propriedades de membro….
6. Verifique e salve a estrutura de tópicos.
Validação
Resumo
Item Descrição
Produtos Excel
Power BI (Conjuntos de dados)
Power BI (Fluxos de dados)
Malha (Dataflow Gen2)
Power Apps (Fluxos de dados)
Customer Insights do Dynamics 365
Analysis Services
7 Observação
Alguns recursos podem estar presentes em um produto, mas não em outros devido
a cronogramas de implantação e funcionalidades específicas do host.
Pré-requisitos
Para se conectar a uma pasta de trabalho herdada (como .xls ou .xlsb), o provedor
OLEDB (ou ACE) do Mecanismo de Banco de Dados do Access é necessário. Para instalar
esse provedor, acesse a página de download e instale a versão relevante (32 bits ou 64
bits). Caso não esteja instalado, o seguinte erro será exibido ao se conectar a pastas de
trabalho herdadas:
32-bit (or 64-bit) version of the Access Database Engine OLEDB provider may be
required to read this type of file. To download the client software, visit the
Tabelas sugeridas
Se você se conectar a uma pasta de trabalho do Excel que não contém especificamente
uma única tabela, o navegador do Power Query tentará criar uma lista sugerida de
tabelas que você pode escolher. Por exemplo, considere o exemplo de pasta de trabalho
a seguir que contém dados de A1 a C5, mais dados de D8 a E10 e mais de C13 a F16.
Quando você se conecta aos dados no Power Query, o navegador do Power Query cria
duas listas. A primeira lista contém toda a planilha da pasta de trabalho e a segunda
lista contém três tabelas sugeridas.
Se você selecionar uma das tabelas sugeridas, cada tabela individual determinada pelo
Power Query a partir do layout da pasta de trabalho será exibida no navegador. Por
exemplo, se você selecionar a Tabela 3, os dados exibidos originalmente nas células C13
a F16 serão exibidos.
7 Observação
Solução de problemas
Devido à ACE, os valores de uma pasta de trabalho herdada do Excel podem ser
importados com menos precisão ou fidelidade do que o esperado. Por exemplo,
imagine que o arquivo do Excel contenha o número 1024,231, que você formatou para
exibição como "1.024,23". Quando importado para o Power Query, esse valor é
representado como o valor de texto "1.024,23" em vez de um número de fidelidade
completa subjacente (1024,231). Isso ocorre porque, nesse caso, a ACE não apresenta o
valor subjacente para o Power Query, mas apenas o valor exibido no Excel.
No entanto, se o arquivo tiver um atributo de dimensão que aponte para várias células
(como <dimension ref="A1:AJ45000"/> ), o Power Query usará esse intervalo para
localizar a linha e a coluna inicial, bem como a linha e a coluna finais. Se esse intervalo
não contiver todos os dados na planilha, alguns dados não serão carregados.
Você pode corrigir problemas causados por dimensões incorretas executando uma das
seguintes ações:
Verifique se a ferramenta que gerou o arquivo do Excel foi corrigida para gerar as
dimensões corretamente.
InferSheetDimensions = true])
Para corrigir esse problema, você pode consultar Localizar e redefinir a última célula em
uma planilha para obter as instruções detalhadas.
Desempenho ruim ao carregar dados do SharePoint
Ao recuperar dados do Excel no computador ou no SharePoint, considere o volume dos
dados envolvidos, bem como a complexidade da pasta de trabalho.
Esse erro ocorre quando o driver ACE não está instalado no computador host. As pastas
de trabalho salvas no formato "Planilha Open XML Estrita" só podem ser lidas pelo ACE.
No entanto, como essas pastas de trabalho usam a mesma extensão de arquivo que as
pastas de trabalho Open XML regulares (.xlsx), não podemos usar a extensão para exibir
a mensagem de erro usual the Access Database Engine OLEDB provider may be required
to read this type of file .
Para resolve o erro, instale o driver ACE. Se o erro estiver ocorrendo em um serviço de
nuvem, você precisará usar um gateway em execução em um computador que tenha o
driver ACE instalado.
No entanto, às vezes, esse erro pode ocorrer quando um arquivo parece ser um arquivo
Open XML (como .xlsx), mas o driver ACE é realmente necessário para processar o
arquivo. Acesse a seção Conector ACE herdado para obter mais informações sobre
como processar arquivos que exigem o driver ACE.
FactSet RMS (Beta)
Artigo • 13/07/2023
Resumo
Item Descrição
7 Observação
Pré-requisitos
Para começar a usar o conector RMS da FactSet, as etapas de pré-requisitos a seguir
precisam ser concluídas.
Assinatura e autenticação
5. O conector abrirá o navegador do Power Query com uma lista de todas as funções
fornecidas. Observe que, dependendo de suas assinaturas, nem todas as funções
estarão disponíveis. A equipe que cuida de sua conta pode ajudar sobre os
requisitos de acesso aos produtos adicionais.
A tabela a seguir descreve as funções de Get no conector.
FHIR
Artigo • 05/10/2023
Se você não tiver um servidor FHIR, é possível provisionar a API do Azure para FHIR.
Resumo
Item Descrição
7 Observação
Alguns recursos podem estar presentes em um produto, mas não em outros devido
a cronogramas de implantação e funcionalidades específicas do host.
Pré-requisitos
Você deve ter uma função Leitor de Dados FHIR no servidor FHIR para ler dados do
servidor. Para mais informações, consulte: Atribuir funções para o serviço do FHIR
Conectar a um servidor FHIR desde o Power
Query Desktop
Para fazer uma conexão com um servidor FHIR, execute as seguintes etapas:
O conector suporta "Anônimo" para servidores FHIR sem controles de acesso (por
exemplo, servidores de teste públicos como http://test.fhir.org/r4 ) ou
autenticação do Active Directory do Azure. Você deve ter uma função Leitor de
Dados FHIR no servidor FHIR para ler dados do servidor. Acesse a autenticação do
conector FHIR para obter detalhes.
8. Crie painéis com dados, por exemplo, crie um gráfico dos locais do paciente com
base no código postal.
7 Observação
Em alguns casos, a dobragem da consulta não pode ser obtida por meio da
formatação de dados com a GUI (interface gráfica do usuário), conforme
mostrado na imagem anterior. Para saber mais sobre a dobragem de consulta
ao usar o conector FHIR, consulte Dobragem de consulta do FHIR.
Próximas etapas
Neste artigo, você aprendeu a usar o conector Power Query para FHIR para acessar os
dados do FHIR. A seguir, explore os recursos de autenticação do conector Power Query
para FHIR.
O FHIR® e o ícone do FHIR Flame são as marcas registradas da HL7, usadas com a
permissão da HL7. O uso da marca FHIR não constitui o endosso deste produto pela
HL7.
Autenticação do conector FHIR
Artigo • 25/07/2023
Este artigo explica o acesso autenticado aos servidores FHIR usando o conector Power
Query para FHIR. O conector suporta o acesso anônimo a servidores FHIR acessíveis
publicamente e o acesso autenticado a servidores FHIR usando a autenticação do Azure
Active Directory. A API do Azure para FHIR é protegida pelo Azure Active Directory.
7 Observação
Acesso anônimo
Há muitos servidores FHIR acessíveis publicamente . Para habilitar o teste com esses
servidores públicos, o conector Power Query para FHIR suporta o esquema de
autenticação "Anônimo". Por exemplo, para acessar o servidor público
https://server.fire.ly :
O público-alvo esperado do servidor FHIR deve ser igual à URL base do servidor
FHIR. Na API do Azure para FHIR, é possível definir isso no portal ao provisionar o
serviço do FHIR ou posteriormente.
O cliente do Power Query (por exemplo, o Power BI) solicitará apenas um único
escopo: user_impersonation . Esse escopo deve estar disponível e o servidor FHIR
não pode usar outros escopos.
Próximas etapas
Neste artigo, você aprendeu a usar os recursos de autenticação do conector Power
Query para FHIR. A seguir, explore a dobragem de consulta.
Power Query M
let
Source = Fhir.Contents("https://myfhirserver.azurehealthcareapis.com",
null),
Patient1 = Source{[Name="Patient"]}[Data],
#"Filtered Rows" = Table.SelectRows(Patient1, each [birthDate] <
#date(1980, 1, 1))
in
#"Filtered Rows"
GET https://myfhirserver.azurehealthcareapis.com/Patient?birthdate=lt1980-
01-01
Com essa consulta, o cliente receberia apenas os pacientes de interesse e não precisaria
descartar dados.
No exemplo de uma data de nascimento, a dobragem de consultas é simples, mas, em
geral, ela é um desafio no FHIR porque os nomes de parâmetros de pesquisa nem
sempre correspondem aos nomes dos campos de dados e, frequentemente, vários
campos de dados contribuirão para um único parâmetro de pesquisa.
tem os campos system e code (entre outros campos). Suponha que você esteja
interessado apenas em sinais vitais; você estaria interessado em Observações em que
Observation.category.coding.code = "vital-signs" , mas a pesquisa FHIR seria
semelhante a https://myfhirserver.azurehealthcareapis.com/Observation?
category=vital-signs .
7 Observação
Power Query M
No entanto, o mecanismo do Power Query não reconhece mais isso como um padrão
de seleção que é mapeado para o parâmetro de pesquisa category , mas se você
reestruturar a consulta para:
Power Query M
A exploração inicial de dados pode ser feita com o editor de consultas da GUI, mas é
recomendável que a consulta seja refatorada tendo a dobragem de consultas em mente.
Especificamente, as consultas seletivas (filtragem) devem ser executadas o mais cedo
possível.
Localizando padrões de dobragem
O conector do Power Query para FHIR só poderá executar a dobragem de consultas se
as expressões do Power Query mapearem para parâmetros de pesquisa conhecidos,
conforme definido pela especificação FHIR. Se você estiver se perguntando se a
dobragem de consultas é possível, recomendamos que você consulte a Especificação
FHIR . Cada recurso listará um conjunto de parâmetros de pesquisa em direção à parte
inferior da página da especificação. Você também pode consultar a página de padrões
de consulta de dobragem para obter exemplos de como escrever expressões dobráveis
do Power Query para FHIR.
Resumo
A dobragem de consultas fornece expressões mais eficientes do Power Query. Uma
Power Query criada corretamente possibilitará a dobragem de consultas e, portanto,
aliviará muito a carga da filtragem de dados na fonte de dados.
Próximas etapas
Neste artigo, você aprendeu a usar a dobragem de consultas no conector do Power
Query para FHIR. Agora, explore a lista de padrões de dobragem do Power Query para
FHIR.
Este artigo descreve os padrões do Power Query que permitem uma dobragem de
consulta efetiva no FHIR. Ele pressupõe que você esteja familiarizado com o uso do
conector do Power Query para FHIR e entenda a motivação e os princípios básicos para
a dobragem do Power Query no FHIR.
Uma matriz de tipos complexos, que seria uma tabela no Power Query (como
Observation.code.coding , que tem várias colunas)
let
Patients = Fhir.Contents("https://myfhirserver.azurehealthcareapis.com",
null){[Name = "Patient" ]}[Data],
// Fold: "birthdate=lt1980-01-01"
FilteredPatients = Table.SelectRows(Patients, each [birthDate] <
#date(1980, 1, 1))
in
FilteredPatients
Filtragem de pacientes por intervalo de datas de nascimento usando and , apenas com
os anos da década de 70:
let
Patients = Fhir.Contents("https://myfhirserver.azurehealthcareapis.com",
null){[Name = "Patient" ]}[Data],
// Fold: "birthdate=ge1970-01-01&birthdate=lt1980-01-01"
FilteredPatients = Table.SelectRows(Patients, each [birthDate] <
#date(1980, 1, 1) and [birthDate] >= #date(1970, 1, 1))
in
FilteredPatients
Filtragem de pacientes por data de nascimento usando or , sem ser da década de 70:
let
Patients = Fhir.Contents("https://myfhirserver.azurehealthcareapis.com",
null){[Name = "Patient" ]}[Data],
// Fold: "birthdate=ge1980-01-01,lt1970-01-01"
FilteredPatients = Table.SelectRows(Patients, each [birthDate] >=
#date(1980, 1, 1) or [birthDate] < #date(1970, 1, 1))
in
FilteredPatients
let
Patients = Fhir.Contents("https://myfhirserver.azurehealthcareapis.com",
null){[Name = "Patient" ]}[Data],
// Fold: "active=true"
FilteredPatients = Table.SelectRows(Patients, each [active])
in
FilteredPatients
Pesquisa alternativa para pacientes em que a ativação não é verdadeira (pode incluir
casos de ausência):
let
Patients = Fhir.Contents("https://myfhirserver.azurehealthcareapis.com",
null){[Name = "Patient" ]}[Data],
// Fold: "active:not=true"
FilteredPatients = Table.SelectRows(Patients, each [active] <> true)
in
FilteredPatients
let
Patients = Fhir.Contents("https://myfhirserver.azurehealthcareapis.com",
null){[Name = "Patient" ]}[Data],
// Fold: "gender=male"
FilteredPatients = Table.SelectRows(Patients, each [gender] = "male")
in
FilteredPatients
Filtragem para manter apenas pacientes que não são do sexo masculino (inclui outros):
let
Patients = Fhir.Contents("https://myfhirserver.azurehealthcareapis.com",
null){[Name = "Patient" ]}[Data],
// Fold: "gender:not=male"
FilteredPatients = Table.SelectRows(Patients, each [gender] <> "male")
in
FilteredPatients
let
Observations =
Fhir.Contents("https://myfhirserver.azurehealthcareapis.com", null){[Name =
"Observation" ]}[Data],
// Fold: "status=final"
FilteredObservations = Table.SelectRows(Observations, each [status] =
"final")
in
FilteredObservations
let
Patients = Fhir.Contents("https://myfhirserver.azurehealthcareapis.com",
null){[Name = "Patient" ]}[Data],
// Fold: "_lastUpdated=2010-12-31T11:56:02.000+00:00"
FilteredPatients = Table.SelectRows(Patients, each [meta][lastUpdated] =
#datetimezone(2010, 12, 31, 11, 56, 2, 0, 0))
in
FilteredPatients
let
Encounters =
Fhir.Contents("https://myfhirserver.azurehealthcareapis.com", null){[Name =
"Encounter" ]}[Data],
// Fold: "class=s|c"
FilteredEncounters = Table.SelectRows(Encounters, each [class][system] =
"s" and [class][code] = "c")
in
FilteredEncounters
M
let
Encounters =
Fhir.Contents("https://myfhirserver.azurehealthcareapis.com", null){[Name =
"Encounter" ]}[Data],
// Fold: "class=c"
FilteredEncounters = Table.SelectRows(Encounters, each [class][code] =
"c")
in
FilteredEncounters
let
Encounters =
Fhir.Contents("https://myfhirserver.azurehealthcareapis.com", null){[Name =
"Encounter" ]}[Data],
// Fold: "class=s|"
FilteredEncounters = Table.SelectRows(Encounters, each [class][system] =
"s")
in
FilteredEncounters
let
Observations =
Fhir.Contents("https://myfhirserver.azurehealthcareapis.com", null){[Name =
"Observation" ]}[Data],
// Fold: "subject=Patient/1234"
FilteredObservations = Table.SelectRows(Observations, each [subject]
[reference] = "Patient/1234")
in
FilteredObservations
let
Observations =
Fhir.Contents("https://myfhirserver.azurehealthcareapis.com", null){[Name =
"Observation" ]}[Data],
// Fold: "subject=1234,Patient/1234,https://myfhirservice/Patient/1234"
FilteredObservations = Table.SelectRows(Observations, each [subject]
[reference] = "1234" or [subject][reference] = "Patient/1234" or [subject]
[reference] = "https://myfhirservice/Patient/1234")
in
FilteredObservations
let
ChargeItems =
Fhir.Contents("https://myfhirserver.azurehealthcareapis.com", null){[Name =
"ChargeItem" ]}[Data],
// Fold: "quantity=1"
FilteredChargeItems = Table.SelectRows(ChargeItems, each [quantity]
[value] = 1)
in
FilteredChargeItems
let
ChargeItems =
Fhir.Contents("https://myfhirserver.azurehealthcareapis.com", null){[Name =
"ChargeItem" ]}[Data],
// Fold: "quantity=gt1.001"
FilteredChargeItems = Table.SelectRows(ChargeItems, each [quantity]
[value] > 1.001)
in
FilteredChargeItems
let
ChargeItems =
Fhir.Contents("https://myfhirserver.azurehealthcareapis.com", null){[Name =
"ChargeItem" ]}[Data],
// Fold: "quantity=lt1.001|s|c"
FilteredChargeItems = Table.SelectRows(ChargeItems, each [quantity]
[value] < 1.001 and [quantity][system] = "s" and [quantity][code] = "c")
in
FilteredChargeItems
let
Consents = Fhir.Contents("https://myfhirserver.azurehealthcareapis.com",
null){[Name = "Consent" ]}[Data],
// Fold: "period=sa2010-01-01T00:00:00.000+00:00"
FiltertedConsents = Table.SelectRows(Consents, each [provision][period]
[start] > #datetimezone(2010, 1, 1, 0, 0, 0, 0, 0))
in
FiltertedConsents
let
Consents = Fhir.Contents("https://myfhirserver.azurehealthcareapis.com",
null){[Name = "Consent" ]}[Data],
// Fold: "period=eb2010-01-01T00:00:00.000+00:00"
FiltertedConsents = Table.SelectRows(Consents, each [provision][period]
[end] < #datetimezone(2010, 1, 1, 0, 0, 0, 0, 0))
in
FiltertedConsents
let
Observations =
Fhir.Contents("https://myfhirserver.azurehealthcareapis.com", null){[Name =
"Observation" ]}[Data],
// Fold: "code:text=t"
FilteredObservations = Table.SelectRows(Observations, each [code][text]
= "t")
in
FilteredObservations
let
Observations =
Fhir.Contents("https://myfhirserver.azurehealthcareapis.com", null){[Name =
"Observation" ]}[Data],
// Fold: "code:text=t"
FilteredObservations = Table.SelectRows(Observations, each
Text.StartsWith([code][text], "t"))
in
FilteredObservations
let
Patients = Fhir.Contents("https://myfhirserver.azurehealthcareapis.com",
null){[Name = "Patient" ]}[Data],
// Fold: "_profile=http://myprofile"
FilteredPatients = Table.SelectRows(Patients, each
List.MatchesAny([meta][profile], each _ = "http://myprofile"))
in
FilteredPatients
let
AllergyIntolerances =
Fhir.Contents("https://myfhirserver.azurehealthcareapis.com", null){[Name =
"AllergyIntolerance" ]}[Data],
// Fold: "category=food"
FilteredAllergyIntolerances = Table.SelectRows(AllergyIntolerances, each
List.MatchesAny([category], each _ = "food"))
in
FilteredAllergyIntolerances
M
let
AllergyIntolerances =
Fhir.Contents("https://myfhirserver.azurehealthcareapis.com", null){[Name =
"AllergyIntolerance" ]}[Data],
// Fold: "category:missing=true"
FilteredAllergyIntolerances = Table.SelectRows(AllergyIntolerances, each
List.MatchesAll([category], each _ = null))
in
FilteredAllergyIntolerances
let
AllergyIntolerances =
Fhir.Contents("https://myfhirserver.azurehealthcareapis.com", null){[Name =
"AllergyIntolerance" ]}[Data],
// Fold: "category:missing=true"
FilteredAllergyIntolerances = Table.SelectRows(AllergyIntolerances, each
[category] = null)
in
FilteredAllergyIntolerances
let
Patients = Fhir.Contents("https://myfhirserver.azurehealthcareapis.com",
null){[Name = "Patient" ]}[Data],
// Fold: "family:exact=Johnson"
FilteredPatients = Table.SelectRows(Patients, each
Table.MatchesAnyRows([name], each [family] = "Johnson"))
in
FilteredPatients
M
let
Patients = Fhir.Contents("https://myfhirserver.azurehealthcareapis.com",
null){[Name = "Patient" ]}[Data],
// Fold: "family=John"
FilteredPatients = Table.SelectRows(Patients, each
Table.MatchesAnyRows([name], each Text.StartsWith([family], "John")))
in
FilteredPatients
let
Patients = Fhir.Contents("https://myfhirserver.azurehealthcareapis.com",
null){[Name = "Patient" ]}[Data],
// Fold: "family=John,Paul"
FilteredPatients = Table.SelectRows(Patients, each
Table.MatchesAnyRows([name], each Text.StartsWith([family], "John") or
Text.StartsWith([family], "Paul")))
in
FilteredPatients
Filtragem de pacientes em que o nome da família começa com John e o item fornecido
começa com Paul :
let
Patients = Fhir.Contents("https://myfhirserver.azurehealthcareapis.com",
null){[Name = "Patient" ]}[Data],
// Fold: "family=John&given=Paul"
FilteredPatients = Table.SelectRows(
Patients,
each
Table.MatchesAnyRows([name], each Text.StartsWith([family],
"John")) and
Table.MatchesAnyRows([name], each List.MatchesAny([given], each
Text.StartsWith(_, "Paul"))))
in
FilteredPatients
M
let
Goals = Fhir.Contents("https://myfhirserver.azurehealthcareapis.com",
null){[Name = "Goal" ]}[Data],
// Fold: "target-date=gt2020-03-01"
FilteredGoals = Table.SelectRows(Goals, each
Table.MatchesAnyRows([target], each [due][date] > #date(2020,3,1)))
in
FilteredGoals
let
Patients = Fhir.Contents("https://myfhirserver.azurehealthcareapis.com",
null){[Name = "Patient" ]}[Data],
// Fold: "identifier=s|v"
FilteredPatients = Table.SelectRows(Patients, each
Table.MatchesAnyRows([identifier], each [system] = "s" and _[value] = "v"))
in
FilteredPatients
let
Observations =
Fhir.Contents("https://myfhirserver.azurehealthcareapis.com", null){[Name =
"Observation" ]}[Data],
// Fold: "code=s|c"
FilteredObservations = Table.SelectRows(Observations, each
Table.MatchesAnyRows([code][coding], each [system] = "s" and [code] = "c"))
in
FilteredObservations
let
Observations =
Fhir.Contents("https://myfhirserver.azurehealthcareapis.com", null){[Name =
"Observation" ]}[Data],
// Fold: "code:text=t&code=s|c"
FilteredObservations = Table.SelectRows(Observations, each
Table.MatchesAnyRows([code][coding], each [system] = "s" and [code] = "c")
and [code][text] = "t")
in
FilteredObservations
let
Patients = Fhir.Contents("https://myfhirserver.azurehealthcareapis.com",
null){[Name = "Patient" ]}[Data],
// Fold: "family=John&given=Paul"
FilteredPatients =
Table.SelectRows(
Patients,
each
Table.MatchesAnyRows([name], each Text.StartsWith([family],
"John")) and
Table.MatchesAnyRows([name], each List.MatchesAny([given],
each Text.StartsWith(_, "Paul"))))
in
FilteredPatients
let
Observations =
Fhir.Contents("https://myfhirserver.azurehealthcareapis.com", null){[Name =
"Observation" ]}[Data],
// Fold: "category=vital-signs"
FilteredObservations = Table.SelectRows(Observations, each
Table.MatchesAnyRows([category], each Table.MatchesAnyRows([coding], each
[code] = "vital-signs")))
in
FilteredObservations
let
Observations =
Fhir.Contents("https://myfhirserver.azurehealthcareapis.com", null){[Name =
"Observation" ]}[Data],
// Fold: "category=s|c"
FilteredObservations = Table.SelectRows(Observations, each
Table.MatchesAnyRows([category], each Table.MatchesAnyRows([coding], each
[system] = "s" and [code] = "c")))
in
FilteredObservations
let
Observations =
Fhir.Contents("https://myfhirserver.azurehealthcareapis.com", null){[Name =
"Observation" ]}[Data],
// Fold: "category=s1|c1,s2|c2"
FilteredObservations =
Table.SelectRows(
Observations,
each
Table.MatchesAnyRows(
[category],
each
Table.MatchesAnyRows(
[coding],
each
([system] = "s1" and [code] = "c1") or
([system] = "s2" and [code] = "c2"))))
in
FilteredObservations
let
AuditEvents =
Fhir.Contents("https://myfhirserver.azurehealthcareapis.com", null){[Name =
"AuditEvent" ]}[Data],
// Fold: "policy=http://mypolicy"
FilteredAuditEvents = Table.SelectRows(AuditEvents, each
Table.MatchesAnyRows([agent], each List.MatchesAny([policy], each _ =
"http://mypolicy")))
in
FilteredAuditEvents
let
Observations =
Fhir.Contents("https://myfhirserver.azurehealthcareapis.com", null){[Name =
"Observation" ]}[Data],
// Fold: "code-value-quantity=http://loinc.org|8302-2$gt150"
FilteredObservations = Table.SelectRows(Observations, each
Table.MatchesAnyRows([code][coding], each [system] = "http://loinc.org" and
[code] = "8302-2") and [value][Quantity][value] > 150)
in
FilteredObservations
let
Observations =
Fhir.Contents("https://myfhirserver.azurehealthcareapis.com", null){[Name =
"Observation" ]}[Data],
// Fold: "component-code-value-quantity=http://loinc.org|8480-6$gt140"
FilteredObservations = Table.SelectRows(Observations, each
Table.MatchesAnyRows([component], each Table.MatchesAnyRows([code][coding],
each [system] = "http://loinc.org" and [code] = "8480-6") and [value]
[Quantity][value] > 140))
in
FilteredObservations
let
Observations =
Fhir.Contents("https://myfhirserver.azurehealthcareapis.com", null){[Name =
"Observation" ]}[Data],
// Fold: "component-code-value-quantity=http://loinc.org|8462-
4$gt90&component-code-value-quantity=http://loinc.org|8480-6$gt140"
FilteredObservations =
Table.SelectRows(
Observations,
each
Table.MatchesAnyRows(
[component],
each
Table.MatchesAnyRows([code][coding], each [system] =
"http://loinc.org" and [code] = "8462-4") and [value][Quantity][value] > 90)
and
Table.MatchesAnyRows([component], each
Table.MatchesAnyRows([code][coding], each [system] = "http://loinc.org" and
[code] = "8480-6") and [value][Quantity][value] > 140))
in
FilteredObservations
let
Observations =
Fhir.Contents("https://myfhirserver.azurehealthcareapis.com", null){[Name =
"Observation" ]}[Data],
// Fold: "component-code-value-quantity=http://loinc.org|8462-
4$gt90,http://loinc.org|8480-6$gt140"
FilteredObservations =
Table.SelectRows(
Observations,
each
Table.MatchesAnyRows(
[component],
each
(Table.MatchesAnyRows([code][coding], each [system]
= "http://loinc.org" and [code] = "8462-4") and [value][Quantity][value] >
90) or
Table.MatchesAnyRows([code][coding], each [system]
= "http://loinc.org" and [code] = "8480-6") and [value][Quantity][value] >
140 ))
in
FilteredObservations
let
Observations =
Fhir.Contents("https://myfhirserver.azurehealthcareapis.com", null){[Name =
"Observation" ]}[Data],
// Fold: "combo-code-value-quantity=http://loinc.org|8302-2$gt150"
FilteredObservations =
Table.SelectRows(
Observations,
each
(Table.MatchesAnyRows([code][coding], each [system] =
"http://loinc.org" and [code] = "8302-2") and [value][Quantity][value] >
150) or
(Table.MatchesAnyRows([component], each
Table.MatchesAnyRows([code][coding], each [system] = "http://loinc.org" and
[code] = "8302-2") and [value][Quantity][value] > 150)))
in
FilteredObservations
Resumo
A dobragem de consulta transforma as expressões de filtragem do Power Query em
parâmetros de pesquisa do FHIR. O conector do Power Query para FHIR reconhece
determinados padrões e tenta identificar parâmetros de pesquisa correspondentes.
Reconhecer esses padrões ajudará você a escrever expressões do Power Query mais
eficientes.
Próximas etapas
Neste artigo, revisamos algumas classes de expressões de filtragem que serão dobradas
em parâmetros de pesquisa do FHIR. Em seguida, leia sobre como estabelecer relações
entre recursos do FHIR.
Este artigo descreve como estabelecer relações entre tabelas que foram importadas
usando o conector Power Query para FHIR.
Introdução
Os recursos FHIR estão relacionados uns aos outros, por exemplo, um Observation que
faz referência a um assunto ( Patient ):
JSON
{
"resourceType": "Observation",
"id": "1234",
"subject": {
"reference": "Patient/456"
}
Alguns dos campos de referência de recurso no FHIR podem se referir a vários tipos
diferentes de recursos (por exemplo, Practitioner ou Organization ). Para facilitar a
resolução de referências, o conector Power Query para FHIR adiciona um campo
sintético a todos os recursos importados chamados <referenceId> , que contém uma
concatenação do tipo de recurso e da ID do recurso.
Para estabelecer uma relação entre duas tabelas, você pode conectar um campo de
referência específico em um recurso ao campo correspondente <referenceId> no
recurso ao qual você gostaria que ele fosse vinculado. Em casos simples, o Power BI
detectará isso automaticamente.
Próximas etapas
Neste artigo, você aprendeu a estabelecer relações entre tabelas importadas com o
conector Power Query para FHIR. Em seguida, explore o dobramento de consulta com o
conector Power Query para FHIR.
Resumo
Item Descrição
Produtos Excel
Power BI (Conjuntos de dados)
Power BI (Fluxos de dados)
Malha (Dataflow Gen2)
Power Apps (Fluxos de dados)
Customer Insights do Dynamics 365
Analysis Services
7 Observação
Alguns recursos podem estar presentes em um produto, mas não em outros devido
a cronogramas de implantação e funcionalidades específicas do host.
Quando você seleciona a pasta que deseja usar, as informações de arquivo sobre
todos os arquivos nessa pasta são exibidas. Além disso, as informações de arquivo
sobre arquivos em qualquer subpasta também são exibidas.
5. Selecione Avançar.
Solução de problemas
Combinar arquivos
Quando você combina arquivos usando o conector de pasta, todos os arquivos na pasta
e suas subpastas são processados da mesma maneira e os resultados são combinados.
A forma como os arquivos são processados é determinada pelo arquivo de exemplo
selecionado. Por exemplo, se você selecionar um arquivo do Excel e escolher uma tabela
chamada "Table1", todos os arquivos serão tratados como arquivos do Excel que
contêm uma tabela chamada "Table1".
Para garantir que a combinação dos arquivos funcione corretamente, verifique se todos
os arquivos na pasta e suas subpastas têm o mesmo formato e estrutura de arquivo. Se
você precisar excluir alguns dos arquivos, primeiro selecione Transformar dados em vez
de Combinar e filtrar a tabela de arquivos no Editor do Power Query antes de combinar.
Para obter mais informações sobre como combinar arquivos, acesse Combinar arquivos
no Power Query.
Funil
Artigo • 05/10/2023
7 Observação
Resumo
Item Descrição
Pré-requisitos
Para usar o conector da Funnel, você precisa de uma assinatura da Funnel. A Funnel a
coletar dados de todas as plataformas de marketing, transformá-los e enviá-los para os
destinos desejados, como o Power BI (https://funnel.io/ ).
No Aplicativo Funnel, vá até seu Espaço de Trabalho, navegue até a página do Microsoft
Power BI no painel de navegação esquerdo (se você não conseguir vê-lo, entre em
contato conosco). Siga as instruções na página. Você precisa criar um
"Compartilhamento de Dados" que contenha os campos que deseja expor no Power BI.
7 Observação
O número padrão de meses é 12. Se hoje for 22.03.2022, você obterá dados
para o período 01.04.2021 - 22.03.2022.
Em seguida, selecione Carregar para carregar os dados ou selecione Transformar
dados para transformar os dados.
Para obter mais informações, leia nossos artigos sobre base de dados de conhecimento
do Power BI .
Google Analytics
Artigo • 21/07/2023
Resumo
Item Descrição
7 Observação
Alguns recursos podem estar presentes em um produto, mas não em outros devido
a cronogramas de implantação e funcionalidades específicas do host.
7 Observação
A partir de julho de 2023, o Google preteriu o uso da API do Google Analytics. Para
obter mais informações, acesse o anúncio do Google . O conector do Power
Query Google Analytics dá suporte ao cenário herdado da Análise Universal por
meio da V4 da API do Google Universal Analytics agora preterida usando a
Implementation = "1.0" configuração . O conector também dá suporte a cenários
7 Observação
Pré-requisitos
Antes de entrar no Google Analytics, você deve ter uma conta do Google Analytics
(nome de usuário/senha).
3. Para se conectar aos dados do Google Analytics por meio da API herdada da
"Análise Universal", selecione Implementação 1.0. Para se conectar aos dados do
Google Analytics por meio da nova API de Dados do Google Analytics com
suporte para o Google Analytics 4, selecione Implementação 2.0 (Beta).
Depois que a conexão for estabelecida, você verá uma lista dos espaços de trabalho aos
quais tem acesso. Percorra a conta e veja propriedades e exibições para ver uma seleção
de valores, categorizados em pastas de exibição.
É possível Carregar a tabela selecionada, que insere toda a tabela no Power BI Desktop,
ou selecionar Transformar dados para editar a consulta, que abre o Editor do Power
Query. Depois, é possível filtrar e refinar o conjunto de dados que deseja usar e carregar
esse conjunto refinado de dados no Power BI Desktop.
7 Observação
Depois que a conexão for estabelecida, você verá uma lista dos espaços de
trabalho aos quais tem acesso. Percorra a conta e veja propriedades e exibições
para ver uma seleção de valores, categorizados em pastas de exibição.
Limitações e problemas
Você deve estar ciente das limitações e problemas a seguir associados ao acesso aos
dados do Google Analytics.
Limites de cota do Google Analytics para Power BI
As limitações e cotas padrão para solicitações AP do Google Analytics estão
documentadas em Limites e Cotas em Solicitações de API . No entanto, o Power BI
Desktop e serviço do Power BI permitem que você use o seguinte número aprimorado
de consultas.
Solução de problemas
Para garantir que os dados que você está vendo sejam os mesmos que você obteria do
Google Analytics, você pode executar a consulta por conta própria na ferramenta
interativa do Google. Para entender quais dados Power Query está recuperando, você
pode usar o Diagnóstico de Consulta para entender quais parâmetros de consulta estão
sendo enviados ao Google Analytics.
Dependendo da consulta, a linha que contém a chamada de API emitida para o Google
Analytics pode não estar no mesmo lugar. Mas para uma consulta simples do Google
Analytics, você geralmente a verá como a última linha que tem conteúdo nessa coluna.
<Content placeholder>
Response:
HTTP/1.1 200 OK
Content-Length: -1
<Content placeholder>
Neste registro, você pode ver que tem sua ID de exibição de Análise (perfil), sua lista
de métricas (nesse caso, apenas ga:users ), sua lista de dimensões (nesse caso,
apenas a fonte de referência), a data de início e a data de término , o índice de
início , os resultados máximos (definidos como 1000 para o editor por padrão) e o
quotaUser .
Você pode copiar esses valores para o Google Analytics Query Explorer para validar
que os mesmos dados que você está vendo retornados por sua consulta também estão
sendo retornados pela API.
Power Query M
let
Source = GoogleAnalytics.Accounts(),
#"<ID>" = Source{[Id="<ID>"]}[Data],
#"UA-<ID>-1" = #"<ID>"{[Id="UA-<ID>-1"]}[Data],
#"<View ID>" = #"UA-<ID>-1"{[Id="<View ID>"]}[Data],
#"Added Items" = Cube.Transform(#"<View ID>",
{
{Cube.AddAndExpandDimensionColumn, "ga:source", {"ga:source"},
{"Source"}},
{Cube.AddMeasureColumn, "Users", "ga:users"}
})
in
#"Added Items"
Portanto, você tem duas opções: Se você tiver uma coluna Data, poderá filtrar na Data.
Essa é a opção mais fácil. Se você não quiser dividir por data, você pode agrupar depois.
Se você não tiver uma coluna Data, poderá manipular manualmente a consulta no
Editor Avançado para adicionar uma e filtrar nela. Por exemplo:
Power Query M
let
Source = GoogleAnalytics.Accounts(),
#"<ID>" = Source{[Id="<ID>"]}[Data],
#"UA-<ID>-1" = #"<ID>"{[Id="UA-<ID>-1"]}[Data],
#"<View ID>" = #"UA-<ID>-1"{[Id="<View ID>"]}[Data],
#"Added Items" = Cube.Transform(#"<View ID>",
{
{Cube.AddAndExpandDimensionColumn, "ga:date", {"ga:date"},
{"Date"}},
{Cube.AddAndExpandDimensionColumn, "ga:source", {"ga:source"},
{"Source"}},
{Cube.AddMeasureColumn, "Organic Searches",
"ga:organicSearches"}
}),
#"Filtered Rows" = Table.SelectRows(#"Added Items", each [Date] >=
#date(2019, 9, 1) and [Date] <= #date(2019, 9, 30))
in
#"Filtered Rows"
Próximas etapas
Google Analytics Dimensions & Metrics Explorer
Google Analytics Core Reporting API
Google BigQuery
Artigo • 18/11/2023
Resumo
Item Descrição
7 Observação
Alguns recursos podem estar presentes em um produto, mas não em outros devido
a cronogramas de implantação e funcionalidades específicas do host.
7 Observação
Pré-requisitos
Você precisará de uma conta do Google ou de uma conta de serviço do Google para
entrar no Google BigQuery.
4. Uma caixa de diálogo Entrar com o Google é exibida. Selecione sua conta do
Google e aprove a conexão ao Power BI Desktop.
3. Uma caixa de diálogo Entrar com o Google é exibida. Selecione sua conta do
Google e aprove a conexão.
7 Observação
Embora a caixa de diálogo de entrada diga que você continuar para o Power
BI Desktop depois de entrar, você será enviado para seu aplicativo online.
4. Se você quiser usar as opções antecipadas, selecione Opções avançadas. Mais
informações: Conectar usando opções avançadas
Duração do tempo A configuração de conexão padrão (em segundos) que controla quanto
limite de conexão tempo Power Query aguarda a conclusão de uma conexão. Você poderá
alterar esse valor se sua conexão não for concluída antes de 15 segundos (o
valor padrão).
Duração do tempo Quanto tempo Power Query aguarda a conclusão de uma consulta e o
limite de comando retorno dos resultados. O padrão depende do padrão do driver. Você pode
inserir outro valor em minutos para manter a conexão aberta por mais
tempo.
Opção avançada Descrição
ID do projeto O projeto no qual você deseja executar consultas nativas. Esta opção está
disponível somente no Power Query Desktop.
Instrução SQL Para obter mais informações, acesse Import data from a database using
native database query. Nesta versão da funcionalidade de consulta de
banco de dados nativo, você precisa usar nomes de tabela totalmente
qualificados no formato Database.Schema.Table , por exemplo SELECT * FROM
DEMO_DB.PUBLIC.DEMO_TABLE . Esta opção está disponível somente no Power
Query Desktop.
Limitações e considerações
Esta seção descreve quaisquer limitações ou considerações do conector do Google
BigQuery.
Disponibilidade do conector
Source = GoogleBigQuery.Database([BillingProject="Include-Billing-Project-Id-
Here"])
Campos aninhados
Para otimizar as considerações de desempenho, o Google BigQuery se dá bem com
grandes conjuntos de dados quando desnormalizado, nivelado e aninhado.
Quando você se autentica por meio de uma conta de serviço do Google no serviço do
Power BI ou no Power Query Online, os usuários precisam usar a autenticação "Básica".
O campo Nome de Usuário é mapeado para o campo Email da Conta de Serviço acima
e o campo Senha é mapeado para o campo de conteúdo do arquivo de chave JSON da
Conta de Serviço acima. Os requisitos de formato para cada credencial permanecem os
mesmos no Power BI Desktop, serviço do Power BI e Power Query Online.
Armazenamento do BigQuery.
bigquery.readsessions.getData – Lê os dados de uma sessão de leitura por meio
Armazenamento do BigQuery.
Solução alternativa 1: Quebrar a tabela com um modo de exibição que não entre
em conflito com o nome da coluna— CREATE VIEW dataset.new_view AS SELECT *
FROM dataset.debug
Resumo
Item Descrição
7 Observação
Alguns recursos podem estar presentes em um produto, mas não em outros devido
a cronogramas de implantação e funcionalidades específicas do host.
Pré-requisitos
Você precisa de uma conta do Azure Active Directory para fazer login no Google
BigQuery (Azure AD).
5. Depois de você se conectar com sucesso, aparece uma janela Navegador com os
dados disponíveis no servidor. Selecione os dados no navegador. Selecione
Transformar dados para transformar os dados no Power Query ou Carregar para
carregar os dados no Power BI Desktop.
5. Depois de você se conectar com sucesso, aparece uma janela Navegador com os
dados disponíveis no servidor. Selecione os dados no navegador. Em seguida,
selecione Avançar para transformar os dados no Power Query.
A tabela a seguir lista todas as opções avançadas que você pode definir no Power Query
Desktop e no Power Query Online.
Duração do tempo A configuração de conexão padrão (em segundos) que controla quanto
limite de conexão tempo Power Query aguarda a conclusão de uma conexão. Você poderá
alterar esse valor se sua conexão não for concluída antes de 15 segundos (o
valor padrão).
Duração do tempo Quanto tempo Power Query aguarda a conclusão de uma consulta e o
limite de comando retorno dos resultados. O padrão depende do padrão do driver. Você pode
inserir outro valor em minutos para manter a conexão aberta por mais
tempo.
URI de audiência
ProjectID O projeto no qual você deseja executar consultas nativas. Esta opção está
disponível somente no Power Query Desktop.
Consulta nativa Para obter mais informações, acesse Importar dados de um banco de dados
usando a consulta natuva de banco de dados. Nesta versão da
funcionalidade de consulta de banco de dados nativo, você precisa usar
nomes de tabela totalmente qualificados no formato
Database.Schema.Table , por exemplo SELECT * FROM
DEMO_DB.PUBLIC.DEMO_TABLE . Esta opção está disponível somente no Power
Query Desktop.
Limitações e considerações
Esta seção descreve as limitações ou considerações do conector do Google BigQuery
(Azure AD).
Configurações de OIDC
O conector do Google BigQuery (Azure AD) utiliza tokens JWT do Azure AD para
conectar a autenticação baseada no Azure AD ao recurso Federação da Força de
Trabalho do Google. Portanto, a configuração no lado da autenticação deve ser uma
configuração baseada em OIDC para se alinhar com os tokens JWT do Azure AD. Entre
em contato com seu ponto de contato do Google BigQuery para obter mais
informações sobre autenticação, configuração e suporte no lado do Google.
Campos aninhados
Para otimizar as considerações de desempenho, o Google BigQuery se dá bem com
grandes conjuntos de dados quando desnormalizado, nivelado e aninhado.
O conector do Google BigQuery (Azure AD) oferece suporte a campos aninhados, que
são carregados como colunas de texto no formato JSON.
Armazenamento do BigQuery.
bigquery.readsessions.getData – Lê os dados de uma sessão de leitura por meio
Depois de ativar o SSO do Azure AD para todas as fontes de dados, ative o SSO do
Azure AD para o Google BigQuery:
Resumo
Item Descrição
Pré-requisitos
Antes de usar o conector do Google Sheets, você deve ter uma conta do Google e ter
acesso ao Google Sheet ao qual está tentando se conectar.
3. O conector do Google Sheets fornece a opção de conectar por meio de uma conta
organizacional (Google). Selecione Entrar para continuar.
4. Uma caixa de diálogo Entrar no Google aparecerá em uma janela externa do
navegador. Selecione sua conta do Google e aprove a conexão ao Power BI
Desktop.
Limitações e considerações
Esta seção descreve todas as limitações ou ponderações do conector do Google Sheets.
Várias conexões
Esse conector usa um ResourcePath diferente para cada URL do Google Sheet. Você
precisará se autenticar em cada novo caminho de recurso e URL, mas não precisará
entrar no Google várias vezes se as sessões anteriores permanecerem ativas.
Resumo
Item Descrição
Produtos Excel
Power BI (Conjuntos de dados)
Para fazer a conexão com o Hadoop File (HDFS), realize estas etapas:
3. Selecione OK.
Resumo
Item Descrição
Pré-requisitos
Um nome de usuário e senha do LLAP do Apache Hive.
6. Na primeira vez que você se conectar a uma fonte de dados (identificada por cada
URL exclusiva), as credenciais da conta serão solicitadas. Selecione o tipo
apropriado de autenticação e insira suas credenciais para a conexão.
1. Selecione a opção Hive LLAP na página Power Query - Escolher fonte de dados.
2. Insira a URL no servidor do LLAP do Hive da Adobe. Também é possível inserir um
número de porta opcional. Normalmente, a URL se parece com
http://[hostname]:[port number] . Os componentes da URL são:
5. Se for a primeira vez que você está se conectando a estes dados do Hive LLAP,
selecione o tipo de credenciais para a conexão em Tipo de autenticação.
2. Adicione uma nova fonte de dados no cluster de gateway que você deseja usar.
5. Selecione a opção Usar SSO via Kerberos para consultas DirectQuery ou Usar
SSO via Kerberos para consultas DirectQuery e Import.
Para mais informações, consulte Configurar SSO baseado em Kerberos no serviço do
Power BI para fontes de dados locais
Solução de problemas
2. Nas Configurações da fonte de dados, selecione a fonte LLAP do Hive que você
criou e selecione Editar permissões.
5. Refaça as etapas de Conectar-se aos dados do LLAP do Hive desde o Power Query
Desktop.
Se você receber esse erro e vir a seguinte mensagem no rastreamento do Fiddler, esse é
um problema SSL.
Resumo
Item Descrição
Produtos Excel
Power BI (Conjuntos de dados)
Power BI (Fluxos de dados)
Malha (Dataflow Gen2)
Power Apps (Fluxos de dados)
Customer Insights do Dynamics 365
7 Observação
Alguns recursos podem estar presentes em um produto, mas não em outros devido
a cronogramas de implantação e funcionalidades específicas do host.
Pré-requisitos
Por padrão, o conector de banco de dados IBM Db2 usa o driver da Microsoft para se
conectar aos seus dados. Se você optar por usar o driver IBM nas opções avançadas no
Power Query Desktop, primeiro instale o driver IBM Db2 para .NET no computador
usado para se conectar aos dados. O nome desse driver é alterado de tempos em
tempos, portanto, instale o driver IBM Db2 que funciona com o .NET. Para obter
instruções sobre como baixar, instalar e configurar o driver IBM Db2 para .NET, acesse
Baixar drivers e clientes da versão 11.5 iniciais . Mais informações: Limitações do driver,
verifique se o driver IBM Db2 está instalado
acessado é NORTHWD2 .
Por padrão, a caixa de diálogo banco de dados IBM Db2 usa o driver da
Microsoft durante a entrada. Se você quiser usar o driver IBM, abra opções
avançadas e selecione IBM. Mais informações: Conectar usando opções
avançadas
4. Selecione OK.
5. Se esta for a primeira vez que você está se conectando a esse banco de dados IBM
Db2, selecione o tipo de autenticação que deseja usar, insira suas credenciais e
selecione Conectar. Para obter mais informações sobre a autenticação, acesse
Autenticação com uma fonte de dados.
Por padrão, Power Query tenta se conectar ao banco de dados IBM Db2 usando
uma conexão criptografada. Se Power Query não puder se conectar usando uma
conexão criptografada, uma caixa de diálogo "não é possível se conectar" será
exibida. Para se conectar usando uma conexão não criptografada, selecione OK.
6. No Navegador, selecione os dados necessários e selecione Carregar para carregar
os dados ou Transformar dados para transformar os dados.
acessado é NORTHWD2
3. Selecione o nome do gateway de dados local.
7 Observação
Você deve selecionar um gateway de dados local para esse conector, seja o
banco de dados IBM Db2 em sua rede local ou online.
4. Se essa for a primeira vez que você esta se conectando a esse banco de dados IBM
Db2, selecione o tipo de credenciais para a conexão no Tipo de autenticação.
Escolha Básico se você planeja usar uma conta criada com a autenticação do IBM
Db2 em vez da autenticação do Windows.
A tabela a seguir lista todas as opções avançadas que você pode definir no Power
Query.
Opção Descrição
avançada
Driver Determina qual driver é usado para se conectar ao banco de dados IBM Db2. As
opções são IBM e Windows (padrão). Se você selecionar o driver IBM, primeiro
deverá garantir que o driver IBM Db2 para .NET esteja instalado em seu
computador. Esta opção está disponível somente no Power Query Desktop.
Mais informações: Verifique se o driver IBM Db2 está instalado
Opção Descrição
avançada
Tempo limite Se a sua conexão durar mais de 10 minutos (o tempo limite padrão), você
do comando poderá inserir outro valor em minutos para manter a conexão aberta por mais
em minutos tempo.
Coleção de Especifica onde procurar pacotes. Os pacotes são estruturas de controle usadas
pacotes pelo Db2 ao processar uma instrução SQL e serão criados automaticamente, se
necessário. Por padrão, essa opção usa o valor NULLID . Disponível somente ao
usar o driver da Microsoft. Mais informações: Pacotes DB2: conceitos, exemplos
e problemas comuns
Instrução SQL Para obter mais informações, acesse Importar dados de um banco de dados
usando a consulta natuva de banco de dados.
Adicionar Se marcada, inclui colunas que podem ter relações com outras tabelas. Se essa
colunas de caixa estiver desmarcada, você não verá essas colunas.
relação
Limitações e problemas
Limitações do driver
O driver da Microsoft é o mesmo usado no Microsoft Host Integration Server, chamado
de "Provedor ADO.NET para DB2". O driver IBM é o driver IBM Db/2 que trabalha com o
.NET. O nome desse driver muda de vez em quando, portanto, certifique-se de que ele
funcione com o .NET, que é diferente dos drivers IBM Db2 que trabalham com OLE/DB,
ODBC ou JDBC.
Você pode optar por usar o driver da Microsoft (padrão) ou o driver IBM se estiver
usando Power Query Desktop. Atualmente, o Power Query Online usa apenas o driver
da Microsoft. Cada driver tem suas limitações.
Driver da Microsoft
Não dá suporte ao TLS (Transport Layer Security)
Driver IBM
O conector de banco de dados IBM Db2, ao usar o driver IBM Db2 para .NET,
não funciona com sistemas Mainframe ou IBM i
Não dá suporte ao DirectQuery
A Microsoft fornece suporte para o driver da Microsoft, mas não para o driver IBM. No
entanto, se o departamento de TI já tiver configurado e configurado em seus
computadores, seu departamento de TI deverá saber como solucionar problemas do
driver IBM.
Solução de problemas
[System.Data.Common.DbProviderFactories]::GetFactoryClasses() | ogv
3. Na caixa de diálogo que é aberta, você deve ver o seguinte nome na coluna
InvariantName :
IBM.Data.DB2
Se esse nome estiver na coluna InvariantName, o driver IBM Db2 foi instalado e
configurado corretamente.
Normalmente, SQLCODE -805 é seguido por SQLCODE -551, mas você verá apenas a
segunda exceção. Na realidade, o problema é o mesmo. Você não tem autoridade para
associar o pacote à NULLID ou à coleção especificada.
Ao se conectar ao IBM Db2 para z/OS, o administrador do Db2 pode executar as etapas
a seguir.
2. Usando o Power Query, conecte-se ao banco de dados IBM Db2 e recupere uma
lista de esquemas, tabelas e exibições. O conector de banco de dados Power Query
IBM Db2 criará automaticamente o pacote NULLID. MSCS001 e, em seguida,
concede a execução no pacote ao público.
Ao se conectar ao IBM Db2 para Linux, Unix ou Windows, o administrador do Db2 pode
executar as etapas a seguir.
2. Usando o Power Query, conecte-se ao banco de dados IBM Db2 e recupere uma
lista de esquemas, tabelas e exibições. O conector Power Query IBM Db2 criará
automaticamente o pacote NULLID. MSCS001 e, em seguida, conceda a execução
no pacote ao público.
Microsoft Db2 Client: The host resource could not be found. Check that the Initial
Esta mensagem de erro indica que você não colocou o valor certo para o nome do
banco de dados.
Verifique o nome duas vezes e confirme se o host é acessível. Por exemplo, use ping em
um prompt de comando para tentar alcançar o servidor e garantir que o endereço IP
esteja correto ou usar telnet para se comunicar com o servidor.
Para localizar a porta que o Db2 está usando para Linux, Unix e Windows, execute este
comando:
2. Uma das entradas terá um Local Remoto de *LOCAL. Essa entrada é a que deve
ser usada.
Determinar o número da porta
O driver da Microsoft se conecta ao banco de dados usando o protocolo DRDA
(Distributed Relational Database Architecture). A porta padrão para DRDA é a porta 446.
Experimente esse valor primeiro.
Para descobrir com certeza em qual porta o serviço DRDA está em execução:
3. Para confirmar se o serviço DRDA está ativado e escutando nessa porta, execute
NETSTAT .
4. Escolha a opção 3 (para IPv4) ou a opção 6 (para IPv6).
5. Pressione F14 para ver os números da porta em vez de nomes e role até ver a
porta em questão. Ele deve ter uma entrada com um estado "Ouvir".
Mais informações
HIS - Provedor Microsoft OLE DB para DB2
Banco de dados Impala
Artigo • 05/10/2023
Resumo
Item Descrição
7 Observação
Alguns recursos podem estar presentes em um produto, mas não em outros devido
a cronogramas de implantação e funcionalidades específicas do host.
3. Na janela Impala que será exibida, digite ou cole o nome do servidor Impala na
caixa. Você pode Importar dados diretamente para o Power BI ou usar
DirectQuery. Saiba mais sobre como usar o DirectQuery. Depois, selecione OK.
4. Ao receber a solicitação, insira suas credenciais ou conecte-se anonimamente. O
conector do Impala é compatível com a autenticação Anônima, Banco de dados
(nome de usuário e senha) e do Windows.
7 Observação
4. Se essa for a primeira vez que você esta se conectando a esse banco de dados
Impala, selecione o tipo de credenciais para a conexão em Tipo de autenticação.
Duração do tempo Especifica o tempo máximo que o Power Query aguardará para a
limite de conexão conclusão de uma conexão. Você pode inserir outro valor para manter a
conexão aberta por mais tempo.
Duração do tempo Especifica o tempo máximo que um comando tem permissão para ser
limite de comando executado antes que Power Query abandone a chamada.
Considerações e limitações
Veja algumas considerações e limitações que você deve ter em mente com relação ao
conector Impala:
Resumo
Item Descrição
Produtos Excel
Power BI (Conjuntos de dados)
Power BI (Fluxos de dados)
Malha (Dataflow Gen2)
Power Apps (Fluxos de dados)
Customer Insights do Dynamics 365
Analysis Services
7 Observação
Alguns recursos podem estar presentes em um produto, mas não em outros devido
a cronogramas de implantação e funcionalidades específicas do host.
5. Selecione Avançar.
Solução de problemas
Se você vir a mensagem a seguir, pode ser porque o arquivo é inválido; por exemplo,
não é realmente um arquivo JSON ou está malformado. Ou você pode estar tentando
carregar um arquivo de Linhas JSON.
Power Query M
let
// Read the file into a list of lines
Source = Table.FromColumns({Lines.FromBinary(File.Contents("C:\json-
lines-example.json"), null, null)}),
// Transform each line using Json.Document
#"Transformed Column" = Table.TransformColumns(Source, {"Column1",
Json.Document})
in
#"Transformed Column"
Em seguida, você precisará usar uma operação Expandir para combinar as linhas.
Banco de dados KQL (Visualização)
Artigo • 05/10/2023
Resumo
Item Descrição
7 Observação
Alguns recursos podem estar presentes em um produto, mas não em outros devido
a cronogramas de implantação e funcionalidades específicas do host.
Pré-requisitos
Você deve ter permissões de leitura no banco de dados KQL.
3. Se esta for a primeira vez que você está se conectando a este site, selecione Entrar
e insira suas credenciais. Depois, selecione Conectar.
4. No Navegador, selecione as tabelas desejadas e carregue ou transforme os dados.
1. Em Escolher fonte de dados, procure KQL e selecione Banco de dados KQL. Mais
informações: Locais para obter dados
3. Se necessário, insira um gateway de dados local se estiver usando dados locais. Por
exemplo, se você for combinar dados de fluxos de dados e um banco de dados
SQL Server local.
A tabela a seguir lista todas as opções avançadas que você pode definir no Power Query
Desktop e no Power Query Online.
Limitar o tamanho dos O tamanho máximo dos dados em bytes a serem retornados no
dados do resultado da resultado.
consulta em Bytes
Resumo
ノ Expandir a tabela
Item Descrição
Pré-requisitos
Você já precisa ter um lakehouse - Criar um lakehouse no Microsoft Fabric.
7 Observação
3. Selecione os dados com os quais você deseja criar elementos visuais no painel
Dados no Power BI Desktop.
Resumo
Item Descrição
Pré-requisitos
Uma conta do LinkedIn Sales Navigator. Caso ainda não tenha uma conta, inscreva-se
para obter uma avaliação gratuita .
4. Na janela LinkedIn Sales Navigator exibida, selecione quais dados você deseja
retornar, Todos os contatos ou Contatos selecionados no primeiro seletor
suspenso. Em seguida, especifique as datas de início e término para restringir os
dados recebidos a um período específico.
Obtendo ajuda
Se você tiver problemas ao se conectar aos seus dados, entre em contato com o suporte
do LinkedIn Sales Navigator .
MailChimp (descontinuado)
Artigo • 05/10/2023
Resumo
Item Descrição
Produtos -
Reprovação
Esse conector foi descontinuado e em breve não será mais suporte. Recomendamos que
faça a transição das conexões existentes usando esse conector. Não use esse conector
para novas conexões.
Microsoft Azure Consumption Insights
(Beta) (preterido)
Artigo • 23/03/2023
Resumo
Item Descrição
Produtos —
Reprovação
7 Observação
Esse conector foi preterido devido ao fim do suporte para o serviço Microsoft
Azure Consumption Insights. Recomendamos que os usuários faça a transição das
conexões existentes usando esse conector e não usem esse conector para novas
conexões.
Instruções de transição
Os usuários são instruídos a usar o conector certificado do Gerenciamento de Custos do
Microsoft Azure como uma substituição. Os nomes de tabela e de campo são
semelhantes e devem oferecer a mesma funcionalidade.
Linha do tempo
O serviço mMcrosoft Azure Consumption Insights deixará de funcionar em dezembro de
2021. Os usuários devem fazer a transição do conector do Microsoft Azure
Consumption Insights para o conector de Gerenciamento de Custos do Microsoft Azure
até dezembro de 2021.
Microsoft Exchange
Artigo • 05/10/2023
Resumo
Item Descrição
Produtos Excel
Power BI (Conjuntos de dados)
Analysis Services
3. Selecione OK.
Resumo
Item Descrição
Produtos Excel
Power BI (Conjuntos de dados)
Power BI (Fluxos de dados)
Malha (fluxo de dados Gen2)
Power Apps (Fluxos de dados)
Customer Insights do Dynamics 365
Analysis Services
3. Selecione OK.
2. Insira o endereço da caixa de correio da conta que você deseja acessar e quaisquer
outros detalhes de conexão, se necessário. Selecione Avançar.
3. Selecione as tabelas a serem importadas e, em seguida, selecione Transformar
Dados.
4. Se desejar, você pode filtrar e refinar o conjunto de dados nesta janela antes de
carregar. Quando terminar, selecione Salvar e Fechar&.
Segurança do Microsoft Graph
(preterido)
Artigo • 05/10/2023
Resumo
Item Descrição
Produtos —
Reprovação
7 Observação
7 Observação
Resumo
Item Descrição
Pré-requisitos
Sua organização deve ter um ambiente de MicroStrategy configurado. A conta de
usuário no ambiente MicroStrategy deve ter acesso ao conector do Power BI.
7 Observação
7. Selecione OK.
a. Standard/LDAP
b. Biblioteca/OIDC
) Importante
7 Observação
3. Se essa for a primeira vez que você estiver se conectando a esse banco de dados,
selecione o tipo de autenticação e insira suas credenciais.
7 Observação
Resumo
Item Descrição
Pré-requisitos
Para usar o conector SQL do MongoDB Atlas, você deve ter uma configuração de banco
de dados federado do Atlas .
Também recomendamos que você instale o Driver ODBC do MongoDB Atlas SQL antes
de usar o conector do MongoDB Atlas SQL.
Selecione Continuar.
Selecione OK.
5. Insira seu nome de usuário e senha de acesso ao banco de dados Atlas MongoDB
e selecione Conectar.
7 Observação
1. Selecione MongoDB Atlas SQL na página Power Query - Escolher fonte de dados.
verificando suas credenciais e se você não tem problemas de rede ao acessar seu banco
de dados federado.
Próximas etapas
As informações a seguir poderão ser úteis:
Resumo
Item Descrição
Produtos Excel
Power BI (Conjuntos de dados)
Power BI (Fluxos de dados)
Malha (fluxo de dados Gen2)
Power Apps (Fluxos de dados)
Customer Insights do Dynamics 365
Analysis Services
Tipos de autenticação compatíveis Windows (Power BI Desktop, Excel, serviço online com
gateway)
Banco de dados (Power BI Desktop, Excel)
Básico (serviço online com gateway)
7 Observação
Alguns recursos podem estar presentes em um produto, mas não em outros devido
a cronogramas de implantação e funcionalidades específicas do host.
Pré-requisitos
Você precisa instalar o pacote Oracle MySQL Connector/NET antes de usar esse
conector no Power BI Desktop. Esse componente também deve ser instalado no
computador que executa o gateway de dados local para usar esse conector no Power
Query Online (fluxos de dados) ou no serviço do Power BI. O conector MySQL requer
que o pacote MySQL Connector/NET esteja instalado corretamente. Para determinar se
o pacote foi instalado corretamente, abra uma janela do PowerShell e execute o
seguinte comando:
[System.Data.Common.DbProviderFactories]::GetFactoryClasses()|ogv
Se o pacote estiver instalado corretamente, o MySQL Data Provider será exibido na caixa
de diálogo resultante. Por exemplo:
Se o pacote não for instalado corretamente, trabalhe com sua equipe de suporte do
MySQL ou entre em contato com o MySQL.
7 Observação
A tabela a seguir lista todas as opções avançadas que você pode definir no Power Query
Desktop.
Tempo limite do Se a sua conexão durar mais de 10 minutos (o tempo limite padrão), você
comando em poderá inserir outro valor em minutos para manter a conexão aberta por
minutos mais tempo.
Opção avançada Descrição
Instrução SQL Para obter mais informações, acesse Importar dados de um banco de dados
usando a consulta natuva de banco de dados.
Adicionar colunas Se marcada, inclui colunas que podem ter relações com outras tabelas. Se
de relação essa caixa estiver desmarcada, essas colunas não serão incluídas.
Resumo
Item Descrição
Produtos Excel
Power BI (Conjuntos de dados)
Power BI (Fluxos de dados)
Malha (Dataflow Gen2)
Power Apps (Fluxos de dados)
Customer Insights do Dynamics 365
Analysis Services
7 Observação
Alguns recursos podem estar presentes em um produto, mas não em outros devido
a cronogramas de implantação e funcionalidades específicas do host.
7 Observação
Não há suporte para o Microsoft Graph. Mais informações: Falta de suporte para o
Microsoft Graph no Power Query
2. Escolha o botão Básico e insira um endereço de URL na caixa de texto. Essa URL
deve ser a raiz do serviço OData ao qual você deseja se conectar. Por exemplo,
insira http://services.odata.org/V4/northwind/northwind.svc/ . Depois, selecione
OK.
3. Se esta for a primeira vez que você está se conectando usando o Feed OData,
selecione o tipo de autenticação, insira suas credenciais (se necessário) e selecione
o nível ao qual aplicar as configurações de autenticação. Depois, selecione
Conectar.
4. No diálogo do Navegador, é possível selecionar uma tabela e transformar os
dados no editor do Power Query ao selecionar Transformar Dados ou carregar os
dados ao selecionar Carregar.
Se você tiver várias tabelas que têm uma relação direta com uma ou mais das
tabelas já selecionadas, poderá selecionar o botão Selecionar Tabelas
Relacionadas. Quando você fizer isso, todas as tabelas que têm uma relação direta
com uma ou mais das tabelas já selecionadas também serão importadas.
Se você tiver várias tabelas que têm uma relação direta com uma ou mais das
tabelas já selecionadas, poderá selecionar o botão Selecionar Tabelas
Relacionadas. Quando você fizer isso, todas as tabelas que têm uma relação direta
com uma ou mais das tabelas já selecionadas também serão importadas.
Junções
Devido à arquitetura do OData e de outros conectores da Web, as junções podem não
ter desempenho. Embora você tenha a opção de usar colunas de navegação ao mesclar
entre tabelas de uma origem OData, você não tem essa opção ao mesclar com fontes
não Odata.
Se você estiver vendo problemas de desempenho ao mesclar uma fonte OData, aplique
Table.Buffer à consulta OData no editor avançado antes de mesclar os dados.
Quando você insere OData.Feed credenciais para um serviço OData em serviço do Power
BI (por exemplo, depois de publicar um PBIX que usa ), serviço do Power BI testará as
credenciais, mas ignorará todas as opções de consulta especificadas na consulta M.
Essas opções de consulta podem ter sido especificadas diretamente na fórmula (por
exemplo, usando a barra de fórmulas ou o editor avançado) ou podem ter sido
adicionadas pelo editor de Power Query por padrão. Você pode encontrar a lista
completa dessas opções de consulta no OData.Feed.
We were unable to connect because this credential type isn’t supported for this
Para contornar essa limitação, comece com o ponto de extremidade raiz do OData e
navegue e filtre dentro de Power Query. Power Query filtra essa URL localmente quando
a URL é muito longa para o SharePoint manipular. Por exemplo, comece com:
OData.Feed("https://contoso.sharepoint.com/teams/sales/_api/ProjectData")
em vez de
OData.Feed("https://contoso.sharepoint.com/teams/sales/_api/ProjectData/Projects?
select=_x0031_MetricName...etc...")
Conectar-se com dados usando
consultas do Power BI e OData
Artigo • 30/05/2023
Azure DevOps Services | Azure DevOps Server 2022 - Azure DevOps Server 2019
O uso de consultas OData é a abordagem recomendada para efetuar pull de dados para
o Power BI. OData (Open Data Protocol) é um padrão ISO/IEC aprovado e OASIS que
define as práticas recomendadas para criar e consumir APIs REST. Para saber mais,
confira a documentação do OData.
Para começar rapidamente, marcar a Visão geral dos relatórios de exemplo que usam
consultas OData. Para obter informações sobre outras abordagens, consulte Visão geral
da integração do Power BI.
O Power BI pode executar consultas OData, que podem retornar um conjunto de dados
filtrado ou agregado para o Power BI. As consultas OData têm duas vantagens:
Pré-requisitos
Para exibir dados do Analytics e consultar o serviço, você precisa ser membro de
um projeto com acesso Básico ou superior. Por padrão, todos os membros do
projeto recebem permissões para consultar Análise e definir exibições do
Analytics.
Para saber mais sobre outros pré-requisitos relacionados à habilitação de serviço e
recursos e atividades gerais de acompanhamento de dados, consulte Permissões e
pré-requisitos para acessar o Analytics.
Usar Visual Studio Code para gravar e testar
consultas OData
A maneira mais fácil de escrever e testar o OData é usar Visual Studio Code com a
extensão OData . Visual Studio Code é um editor de código gratuito disponível no
Windows, Mac e Linux. A extensão OData fornece realce de sintaxe e outras funções
úteis para escrever e testar consultas.
https://analytics.dev.azure.com/{organization}/{project}/_odata/v3.0-
preview/WorkItems?
$select=WorkItemId,Title,WorkItemType,State,CreatedDate
&$filter=startswith(Area/AreaPath,'{area path}')
&$orderby=CreatedDate desc
&$top=10
Para consultar entre projetos, omita /{project} inteiramente.
Para obter mais informações sobre como escrever consultas OData no Analytics,
consulte Referência rápida de consulta OData.
Depois de escrever a consulta em Visual Studio Code, você deverá ver o realce da
sintaxe:
Selecione OData: Abrir. Essa ação combina a consulta de várias linhas em uma URL de
uma linha e a abre no navegador padrão.
7 Observação
Em Visual Studio Code, coloque sua consulta em qualquer lugar no texto da consulta e
selecione Exibir>Paleta de Comandos. Na caixa de pesquisa, digite odata e, na lista de
resultados, selecione OData: Combinar.
Na janela feed OData , na caixa URL , cole a consulta OData copiada na seção anterior e
selecione OK.
[Implementation="2.0",OmitValues = ODataOmitValues.Nulls,ODataVersion = 4]
7 Observação
7 Observação
A ação a seguir é necessária para que o Power BI execute com êxito uma consulta
OData no Serviço de Análise do Azure DevOps.
Resumo
Item Descrição
Produtos Excel
Power BI (Conjuntos de dados)
Power BI (Fluxos de dados)
Malha (fluxo de dados Gen2)
Power Apps (Fluxos de dados)
Customer Insights do Dynamics 365
Analysis Services
7 Observação
Alguns recursos podem estar presentes em um produto, mas não em outros devido
a cronogramas de implantação e funcionalidades específicas do host.
Pré-requisitos
Antes de começar, verifique se você configurou corretamente a conexão no
Administrador de Fonte de Dados ODBC do Windows. O processo exato aqui depende
do driver.
Você também pode escolher Opções avançadas para inserir outras informações de
conexão opcionais. Mais informações: Conectar usando opções avançadas
4. Se você estiver se conectando a esse banco de dados pela primeira vez, selecione
o tipo de autenticação e insira suas credenciais quando solicitado.
Os tipos de autenticação disponíveis são:
5. Selecione Avançar.
Cadeia de Fornece uma cadeia de conexão opcional que pode ser usada em vez da
conexão seleção DSN (nome da fonte de dados) no Power BI Desktop. Se o DSN
(propriedades (nome da fonte de dados) estiver definido como (Nenhum),você poderá
não relacionadas inserir uma cadeia de conexão aqui. Por exemplo, as seguintes cadeias de
à credencial) conexão são válidas: dsn=<myDSN> ou driver=<myDriver>;port=
<myPortNumber>;server=<myServer>;database=<myDatabase>;. Use
caracteres { } para escapar caracteres especiais. As chaves para cadeias de
conexão variam entre diferentes drivers ODBC. Consulte o provedor do driver
ODBC para obter mais informações sobre cadeias de conexão válidas.
SQL statement Fornece uma instrução SQL, dependendo das funcionalidades do driver. Peça
mais informações ao fornecedor ou acesse Importar dados de um banco de
dados usando a consulta de banco de dados nativa.
Resumo
Item Descrição
Produtos Excel
Power BI (Conjuntos de dados)
Analysis Services
7 Observação
Alguns recursos podem estar presentes em um produto, mas não em outros devido
a cronogramas de implantação e funcionalidades específicas do host.
Dica
3. Selecione OK.
7 Observação
Resumo
ノ Expandir a tabela
Item Descrição
Pré-requisitos
Microsoft Power BI Desktop
OpenSearch
Driver ODBC do SQL do OpenSearch
4. Insira valores de host e porta e selecione a opção SSL que deseja. Selecione OK.
7. Selecione Carregar.
Solução de problemas
Se você receber um erro indicando que o driver não foi instalado, instale o ODBC Driver
do SQL do OpenSearch .
Resumo
Item Descrição
Produtos Excel
Power BI (Conjuntos de dados)
Power BI (Fluxos de dados)
Malha (fluxo de dados Gen2)
Power Apps (Fluxos de dados)
Customer Insights do Dynamics 365
Analysis Services
7 Observação
Alguns recursos podem estar presentes em um produto, mas não em outros devido
a cronogramas de implantação e funcionalidades específicas do host.
Pré-requisitos
Versões do Oracle com suporte:
O software OCMT é gratuito. Pode ser baixado na página do Oracle Client for Microsoft
Tools. Para o Power BI Desktop e o Power BI service de 64 bits, utilize o OCMT de 64
bits. Para o Power BI Desktop de 32 bits, utilize o OCMT de 32 bits.
Mesmo que você já tenha um Oracle Client ou ODP.NET instalado no seu cliente Power
BI, é altamente recomendado usar o instalador OCMT para concluir adequadamente
todas as etapas de configuração que o Power BI requer para funcionar com o banco de
dados Oracle.
4. Se você estiver se conectando a esse banco de dados Oracle pela primeira vez,
selecione o tipo de autenticação que deseja usar e insira suas credenciais. Os tipos
de autenticação disponíveis são:
Para obter mais informações sobre a autenticação, acesse Autenticação com uma
fonte de dados.
5. No Navegador, selecione os dados necessários e selecione Carregar para carregar
os dados ou Transformar dados para transformar os dados.
7 Observação
Você deve selecionar um gateway de dados local para esse conector, seja o
banco de dados Oracle em sua rede local ou em um site.
6. Se for a primeira vez que você está se conectando a este banco de dados Oracle,
selecione o tipo de credenciais para a conexão em Tipo de autenticação. Escolha
Básico se você planeja entrar com um nome de usuário e senha Oracle. Escolha
Windows ao utilizar a autenticação do sistema operacional Windows e com o
cliente e o servidor Oracle executados no Windows.
7 Observação
Para conectar o Power BI a um Banco de Dados Independente Oracle, você precisa das
seguintes contas e aplicativos:
3. Insira a senha que você deseja usar com essa carteira, confirme a senha e selecione
Baixar.
Configurar as credenciais do Oracle ADB
1. Em seu computador do Windows, acesse a pasta em que você baixou suas
credenciais do Oracle ADB de Baixar as credenciais de cliente.
7 Observação
(DIRECTORY=c:\data\wallet\Wallet_ContosoMart)))
Abra o arquivo tnsnames.ora na pasta carteiras. O arquivo contém uma lista de nomes
de serviço net do ADB aos quais você pode se conectar. Neste exemplo, os nomes são
contosomart_high, contosomart_low e contosomart_medium. Seus nomes de serviço de
rede do ADB são diferentes.
Conecte o Power BI Desktop ao Oracle ADB
1. Abra o Power BI Desktop.
5. Se estiver entrando neste servidor a partir do Power BI Desktop pela primeira vez,
insira suas credenciais. Selecione Banco de Dados e, em seguida, insira o nome de
usuário e a senha do banco de dados Oracle. As credenciais inseridas aqui são o
nome de usuário e a senha do Oracle Autonomous Database específico ao qual
você deseja se conectar. Neste exemplo, o nome de usuário e a senha do
administrador inicial do banco de dados são usados. Depois, selecione Conectar.
7 Observação
Você pode usar a autenticação do Azure Active Directory para fazer login no
Banco de Dados Independente Oracle através da opção conta da Microsoft.
Você também pode encontrar um dos vários erros porque a configuração não foi
configurada corretamente. Esses erros são discutidos na Solução de problemas.
Um erro que pode ocorrer neste teste inicial ocorre no Navegador, onde o banco de
dados parece estar conectado, mas não contém dados. Em vez disso, um Oracle: ORA-
28759: a falha ao abrir o erro de arquivo aparece no lugar dos dados.
Configurar o gateway
1. Instale e configure um gateway de dados local.
4. Em Nome da Fonte de Dados, insira o nome que você deseja usar como a
configuração da fonte de dados.
9. Selecione Adicionar.
Se tudo tiver sido instalado e configurado corretamente, uma mensagem de Conexão
bem-sucedida será exibida. Agora você pode se conectar ao Banco de Dados
Independente Oracle usando as mesmas etapas descritas em Conecte-se a um banco de
dados Oracle local a partir do Power Query Online.
A tabela a seguir lista todas as opções avançadas que você pode definir no Power Query
Desktop e no Power Query Online.
Tempo limite do Se a sua conexão durar mais de 10 minutos (o tempo limite padrão), você
comando em poderá inserir outro valor em minutos para manter a conexão aberta por
minutos mais tempo. Esta opção está disponível somente no Power Query Desktop.
Instrução SQL Para obter mais informações, acesse Importar dados de um banco de dados
usando a consulta natuva de banco de dados.
Adicionar colunas Se marcada, inclui colunas que podem ter relações com outras tabelas. Se
de relação essa caixa estiver desmarcada, essas colunas não serão exibidas.
Solução de problemas
Você pode encontrar um destes vários erros do Oracle quando a sintaxe de
nomenclatura está incorreta ou não está configurada corretamente:
Se você baixou o Power BI Desktop na Microsoft Store, talvez não consiga se conectar a
bancos de dados Oracle devido a um problema de driver Oracle. Se você encontrar esse
problema, a mensagem de erro retornada será: Referência de objeto não definida. Para
resolver o problema, siga as etapas:
Próximas etapas
Otimizar o Power Query ao expandir as colunas da tabela
Palantir Foundry
Artigo • 05/10/2023
7 Observação
Resumo
Item Descrição
Pré-requisitos
Este conector funciona com qualquer ambiente ativo do Palantir Foundry. Verifique se
você concluiu as seguintes etapas de configuração antes de usar o conector:
4. Selecione OK.
7 Observação
Antes de começar, verifique se você tem acesso a um gateway local com uma
conexão existente com o Foundry.
Para conectar ao Palantir Foundry do Power Query Online, execute as seguintes etapas:
de dados e Ramificação.
Verifique se a lista suspensa Conexão mostra o nome do gateway local.
Solução de problemas
Se você encontrar problemas para se conectar ao Foundry, consulte os seguintes
recursos na documentação do Palantir Foundry para obter as etapas de solução de
problemas:
Resumo
Item Descrição
7 Observação
Alguns recursos podem estar presentes em um produto, mas não em outros devido
a cronogramas de implantação e funcionalidades específicas do host.
3. Selecione OK.
4. Se você estiver se conectando a essa fonte de dados pela primeira vez, selecione o
tipo de autenticação, insira suas credenciais e selecione o nível ao qual aplicar as
configurações de autenticação. Depois, selecione Conectar.
Anônima
Chave de conta
Assinatura de acesso compartilhado (SAS)
4. Se você estiver se conectando a essa fonte de dados pela primeira vez, selecione o
tipo de autenticação e insira suas credenciais. No Power Query Online, selecione
um dos seguintes tipos de autenticação:
Anônima (online)
Chave da conta (online)
Windows (arquivo local)
5. Selecione Avançar para continuar para o editor de Power Query, em que você
pode começar a transformar seus dados.
Talvez seja possível ler pequenos arquivos de outras fontes usando a função
Binary.Buffer para armazenar o arquivo em buffer na memória. No entanto, se o arquivo
for muito grande, é provável que você obtenha o seguinte erro:
Resumo
ノ Expandir a tabela
Item Descrição
Produtos Excel
Power BI (Conjuntos de dados)
Power BI (Fluxos de dados)
Malha (fluxo de dados Gen2)
Power Apps (Fluxos de dados)
Dynamics 365 Customer Insights
7 Observação
Alguns recursos podem estar presentes em um produto, mas não em outros devido
a cronogramas de implantação e funcionalidades específicas do host.
7 Observação
Pré-requisitos
Nenhum.
2. Procure e selecione o arquivo PDF que você deseja carregar. Em seguida, selecione
Abrir.
Limitações e considerações
Tente selecionar uma página de cada vez ou um pequeno intervalo de cada vez
usando as opções StartPage ou EndPage , iterando em todo o documento,
conforme necessário.
Se o documento PDF for apenas uma tabela muito grande, a opção
MultiPageTables poderá coletar valores intermediários muito grandes, portanto,
Uma lista completa das opções disponíveis pode ser encontrada em Pdf.Tables.
Resumo
Item Descrição
Pré-requisitos
Para entrar no Planview OKR você deve ter uma conta do administrador do Planview.
3. Insira o local da URL do Planview OKR OData que você deseja acessar e selecione
OK.
4. Para entrar na sua conta do administrador do Planview, selecione Entrar.
5. Na janela do Planview OKR exibida, forneça suas credenciais para entrar em sua
conta do Planview OKR.
6. Selecione Entrar.
3. Se estiver se conectando usando o Planview OKR pela primeira vez, você precisará
entrar em sua conta do administrador do Planview.
4. Depois de entrar, selecione Avançar.
Resumo
Item Descrição
Produtos Excel
Power BI (Conjuntos de dados)
Power BI (Fluxos de dados)
Malha (Dataflow Gen2)
Power Apps (Fluxos de dados)
Customer Insights do Dynamics 365
Analysis Services
7 Observação
Alguns recursos podem estar presentes em um produto, mas não em outros devido
a cronogramas de implantação e funcionalidades específicas do host.
Pré-requisitos
A partir da versão de dezembro de 2019, o NpgSQL 4.0.10 é enviado com o Power BI
Desktop e nenhuma instalação adicional é necessária. A Instalação do GAC substitui a
versão fornecida com o Power BI Desktop, que será o padrão. A atualização tem suporte
tanto por meio da nuvem no serviço do Power BI quanto no local por meio do gateway
de dados local. Para atualizar dados do serviço do Power BI sem um gateway de dados
local, o PostgreSQL deve ser hospedado de uma maneira que permita a conexão direta
dos serviços do Power BI no Azure. Isso tem suporte nativo para PostgreSQL hospedado
no Microsoft Azure. Para outros ambientes de hospedagem, consulte seu provedor de
hospedagem sobre como configurar seu PostgreSQL para acesso direto da Internet. Se
o PostgreSQL estiver configurado para que ele não possa ser acessado diretamente da
Internet (recomendado para segurança), você precisará usar um gateway de dados local
para atualizações. No serviço do Power BI, o NpgSQL 4.0.10 será usado, enquanto a
atualização local usará a instalação local do NpgSQL, se disponível, e, caso contrário,
usará o NpgSQL 4.0.10.
Para versões do Power BI Desktop lançadas antes de dezembro de 2019, você deve
instalar o provedor NpgSQL em seu computador local. Para instalar o provedor NpgSQL,
vá para a página de versões , pesquise v4.0.10 e baixe e execute o arquivo .msi. A
arquitetura do provedor (32 bits ou 64 bits) precisa corresponder à arquitetura do
produto em que você pretende usar o conector. Ao instalar, verifique se você selecionou
a Instalação do GAC do NpgSQL para garantir que o próprio NpgSQL seja adicionado
ao computador.
Para o Power Apps, você deve instalar o provedor NpgSQL em seu computador local.
Para instalar o provedor NpgSQL, acesse a página de versões e baixe a versão
relevante. Baixe e execute o arquivo do instalador (o arquivo NpgSQL-[número de
versão].msi). Certifique-se de selecionar a Instalação do GAC do NpgSQL e, após a
conclusão, reinicie o computador para que essa instalação entre em vigor.
4. Se essa for a primeira vez que você estiver se conectando a esse banco de dados,
insira suas credenciais PostgreSQL nas caixas Nome de usuário e Senha do tipo de
autenticação de banco de dados. Selecione o nível ao qual aplicar as
configurações de autenticação. Depois, selecione Conectar.
Para obter mais informações sobre como usar métodos de autenticação, acesse
Autenticação com uma fonte de dados.
7 Observação
Tempo limite do Se a sua conexão durar mais de 10 minutos (o tempo limite padrão), você
comando em poderá inserir outro valor em minutos para manter a conexão aberta por
minutos mais tempo. Esta opção está disponível somente no Power Query Desktop.
Instrução SQL Para obter mais informações, acesse Importar dados de um banco de dados
usando a consulta natuva de banco de dados.
Adicionar colunas Se marcada, inclui colunas que podem ter relações com outras tabelas. Se
de relação essa caixa estiver desmarcada, você não verá essas colunas.
No caso raro de a dobra não funcionar com a dobragem de consultas nativa habilitada,
você pode desabilitá-la. Para desabilitar a dobragem de consultas nativa, defina o
sinalizador EnableFolding como false para Value.NativeQuery() no editor avançado.
Exemplo: Value.NativeQuery(target as any, query, null, [EnableFolding=false])
Solução de problemas
Sua consulta nativa pode gerar o seguinte erro:
We cannot fold on top of this native query. Please modify the native query or
7 Observação
Item Descrição
7 Observação
Alguns recursos podem estar presentes em um produto, mas não em outros devido
a cronogramas de implantação e funcionalidades específicas do host.
Pré-requisitos
Antes de usar o conector Profisee, você deve ter:
2. Selecione a opção Obter Dados na faixa de opções Página Inicial para abrir a caixa
de diálogo Obter Dados.
6. Selecione Conectar.
7. Uma vez conectado, o Navegador é exibido. Essa exibição lista todas as entidades
em sua instância do Profisee. Você pode rolar pelo navegador para localizar
entidades específicas ou procurar entidades por nome usando a barra de pesquisa.
8. Selecione as entidades que você deseja importar para o Power BI. Você pode
visualizar os dados e optar por primeiro Transformar Dados se quiser editar as
colunas de atributo, aplicar filtros e assim por diante, ou Carregar os dados
diretamente no Power BI Desktop.
As relações no Profisee não são criadas no modelo no Power BI. Depois que as
entidades são carregadas, você pode exibir o modelo e criar ou modificar
relacionamentos conforme desejado.
QuickBooks Online (Beta)
Artigo • 05/10/2023
Resumo
Item Descrição
2 Aviso
Pré-requisitos
Para usar o conector QuickBooks Online, você deve ter um nome de usuário e senha de
conta do QuickBooks Online.
Microsoft Edge
Mozilla Firefox
Google Chrome
Safari 11 ou mais recente (somente para Mac)
Para obter mais informações, consulte Alerta: suporte para IE11 será descontinuado a
partir de 31 de julho de 2020 para telas de autorização .
Para obter informações sobre o suporte atual do Microsoft Edge no Power BI Desktop,
acesse Habilitar o Microsoft Edge (Chromium) para autenticação OAuth no Power BI
Desktop.
Objetos do Salesforce
Artigo • 14/07/2023
Resumo
Item Descrição
Produtos Excel
Power BI (Conjuntos de dados)
Power BI (Fluxos de dados)
Malha (Dataflow Gen2)
Power Apps (Fluxos de dados)
Customer Insights do Dynamics 365
Analysis Services
7 Observação
Alguns recursos podem estar presentes em um produto, mas não em outros devido
a cronogramas de implantação e funcionalidades específicas do host.
2 Aviso
Por padrão, o Salesforce não é compatível com o Internet Explorer 11, que é usado
como parte da experiência de autenticação de serviços online no Power Query
Desktop. Aceite o suporte estendido para acessar o Lightning Experience usando
o Microsoft Internet Explorer 11 . Também examine a documentação do
Salesforce sobre como configurar o Internet Explorer . Neste momento, os
usuários serão impedidos de autenticar, mas as credenciais armazenadas
continuarão funcionando até que os tokens de autenticação existentes expirem.
Para resolver isso, acesse Habilitar o Microsoft Edge (Chromium) para
autenticação OAuth no Power BI Desktop.
Pré-requisitos
Para usar o conector dos Objetos do Salesforce, você deve ter um nome de usuário e
senha de conta do Salesforce.
Além disso, o acesso à API do Salesforce deve estar habilitado. Para verificar as
configurações de acesso, navegue até a sua página pessoal do Salesforce, abra suas
configurações de perfil e pesquise e verifique se a caixa de seleção API habilitada está
selecionada. Observe que as contas de avaliação do Salesforce não têm acesso à API.
4. Se essa for a primeira vez que você entra usando um aplicativo específico, você
precisará inserir o código enviado ao seu email para verificar sua autenticidade.
Depois, aparecerá uma pergunta questionado se deseja que o aplicativo que você
está usando acesse os dados. Por exemplo, você será questionado se deseja
permitir que o Power BI Desktop acesse seus dados do Salesforce. selecione
Permitir.
7 Observação
3. Se essa for a primeira vez que você faz essa conexão, selecione um gateway de
dados local, se necessário.
4. Clique em Entrar para entrar na conta do Salesforce. Depois de entrar, selecione
Avançar.
Se você especificar uma versão sem suporte do Salesforce, encontrará uma mensagem
de erro indicando que especificou uma ApiVersion sem suporte.
Para obter mais informações sobre versões e suporte da API do Salesforce, visite o site
do Salesforce .
limite. Para evitar esse erro, use a opção avançada Selecionar consulta e
especifique os campos de que você realmente precisa.
Para obter mais informações sobre os limites internos da API do Salesforce, acesse a
Referência rápida de limites e alocações do desenvolvedor do Salesforce .
Relatórios do Salesforce
Artigo • 14/07/2023
Resumo
Item Descrição
Produtos Excel
Power BI (Conjuntos de dados)
Power BI (Fluxos de dados)
Malha (Dataflow Gen2)
Power Apps (Fluxos de dados)
Customer Insights do Dynamics 365
Analysis Services
7 Observação
Alguns recursos podem estar presentes em um produto, mas não em outros devido
a cronogramas de implantação e funcionalidades específicas do host.
2 Aviso
Por padrão, o Salesforce não é compatível com o Internet Explorer 11, que é usado
como parte da experiência de autenticação de serviços online no Power Query
Desktop. Aceite o suporte estendido para acessar o Lightning Experience usando
o Microsoft Internet Explorer 11 . Também examine a documentação do
Salesforce sobre como configurar o Internet Explorer . Neste momento, os
usuários serão impedidos de autenticar, mas as credenciais armazenadas
continuarão funcionando até que os tokens de autenticação existentes expirem.
Para resolver isso, acesse Habilitar o Microsoft Edge (Chromium) para
autenticação OAuth no Power BI Desktop.
Pré-requisitos
Para usar o conector dos Relatórios do Salesforce, você deve ter um nome de usuário e
senha de conta do Salesforce.
Além disso, o acesso à API do Salesforce deve estar habilitado. Para verificar as
configurações de acesso, navegue até a sua página pessoal do Salesforce, abra suas
configurações de perfil e pesquise e verifique se a caixa de seleção API habilitada está
selecionada. Observe que as contas de avaliação do Salesforce não têm acesso à API.
4. Se essa for a primeira vez que você entra usando um aplicativo específico, você
precisará inserir o código enviado ao seu email para verificar sua autenticidade.
Depois, aparecerá uma pergunta questionado se deseja que o aplicativo que você
está usando acesse os dados. Por exemplo, você será questionado se deseja
permitir que o Power BI Desktop acesse seus dados do Salesforce. selecione
Permitir.
3. Se essa for a primeira vez que você faz essa conexão, selecione um gateway de
dados local, se necessário.
Se você especificar uma versão sem suporte do Salesforce, encontrará uma mensagem
de erro indicando que especificou uma ApiVersion sem suporte.
Para obter mais informações sobre versões e suporte da API do Salesforce, visite o site
do Salesforce .
limite. Para evitar esse erro, use a opção avançada Selecionar consulta e
especifique os campos de que você realmente precisa.
O número de linhas que você pode acessar nos Relatórios do Salesforce é limitado
pelo Salesforce a 2 mil linhas. Como solução alternativa para esse problema, você
pode usar o conector Relatórios do Salesforce no Power BI Desktop para recuperar
todas as linhas de tabelas individuais e recriar os relatórios desejados. O conector
Objetos não tem o limite de 2 mil linhas.
Para obter mais informações sobre os limites internos da API do Salesforce, acesse a
Referência rápida de limites e alocações do desenvolvedor do Salesforce .
Servidor de Aplicativos SAP Business
Warehouse
Artigo • 18/12/2023
7 Observação
Resumo
ノ Expandir a tabela
Item Descrição
7 Observação
Alguns recursos podem estar presentes em um produto, mas não em outros devido
a cronogramas de implantação e funcionalidades específicas do host.
Pré-requisitos
) Importante
Você precisará de uma conta SAP para entrar no site e baixar os drivers. Se você estiver
inseguro, entre em contato com o administrador do SAP em sua organização. Os drivers
precisam ser instalados no computador do gateway.
ID do cliente de 837 .
O restante deste exemplo descreve como importar seus dados para o Power Query
Desktop, que é a configuração padrão para o modo Conectividade de Dados. Se
você quiser usar o DirectQuery para carregar seus dados, acesse Conectar-se ao
SAP Business Warehouse usando o DirectQuery no Power BI.
Se você quiser usar qualquer uma das opções avançadas para esse conector para
ajustar sua consulta, acesse Usar opções avançadas.
Para obter mais informações sobre a autenticação, acesse Autenticação com uma
fonte de dados.
4. Na caixa de diálogo Navegador, selecione os itens que você deseja usar. Quando
você seleciona um ou mais itens do servidor, a caixa de diálogo Navegador cria
uma visualização da tabela de saída. Para obter mais informações sobre como
navegar pelos objetos de consulta do Servidor de Mensagens SAP BW no Power
Query, acesse Navegar pelos objetos de consulta.
ID do cliente de 837 .
3. Selecione o gateway de dados local que você deseja usar para se conectar aos
dados.
4. Defina o Tipo de Autenticação como Básico. Informe seu nome de usuário e
senha.
7. Na caixa de diálogo Navegador, selecione os itens que você deseja usar. Quando
você seleciona um ou mais itens do servidor, a caixa de diálogo Navegador cria
uma visualização da tabela de saída. Para obter mais informações sobre como
navegar pelos objetos de consulta do Servidor de Mensagens SAP BW no Power
Query, acesse Navegar pelos objetos de consulta.
Em que:
or service name>
7 Observação
/S/<port> pode ser omitido se a porta for a porta padrão (3299).
ノ Expandir a tabela
Considerações
As strings do roteador podem incluir senhas, prefixadas por /P/ ou /W/ . Não há
suporte para senhas em strings do roteador do Power Query, pois isso pode não
ser seguro. Usar uma senha resultará em um erro.
No Power Query, você pode usar a sintaxe "string do roteador" para especificar
uma porta personalizada, para que as strings do roteador com uma única estação
sejam permitidas. As strings do roteador podem ser identificadas como
começando com /H/ ou /M/ . Qualquer outra entrada é assumida como um nome
de servidor/endereço IP.
Próximas etapas
Navegar pelos objetos de consulta
Princípios básicos do SAP Business Warehouse
Usar opções avançadas
Solução de problemas do conector do SAP Business Warehouse
Servidor de Mensagens SAP Business
Warehouse
Artigo • 14/11/2023
7 Observação
Resumo
Item Descrição
7 Observação
Alguns recursos podem estar presentes em um produto, mas não em outros devido
a cronogramas de implantação e funcionalidades específicas do host.
Pré-requisitos
) Importante
A versão 1.0 do conector do SAP BW Message Server foi desativada. Novas
conexões usarão a Implementação 2.0 do conector do SAP BW Message Server.
Todo o suporte para a versão 1.0 será removido do Connector em um futuro
próximo.
Você precisará de uma conta SAP para entrar no site e baixar os drivers. Se você estiver
inseguro, entre em contato com o administrador do SAP em sua organização.
7 Observação
1. Na guia Página Inicial do Power BI Desktop, selecione Obter Dados > Servidor de
Mensagens SAP Business Warehouse.
7 Observação
Você também pode usar strings do roteador para se conectar aos dados. Para
obter mais informações: Conectar-se usando strings do roteador
O restante deste exemplo descreve como importar seus dados para o Power Query
Desktop, que é a configuração padrão para o modo Conectividade de Dados. Se
você quiser usar o DirectQuery para carregar seus dados, consulte Conectar-se ao
SAP Business Warehouse usando o DirectQuery no Power BI.
Se você quiser usar qualquer uma das opções avançadas para esse conector para
ajustar sua consulta, acesse Usar opções avançadas.
Para obter mais informações sobre a autenticação, acesse Autenticação com uma
fonte de dados.
4. Na caixa de diálogo Navegador, selecione os itens que você deseja usar. Quando
você seleciona um ou mais itens do servidor, a caixa de diálogo Navegador cria
uma visualização da tabela de saída. Para obter mais informações sobre como
navegar pelos objetos de consulta do Servidor de Mensagens SAP BW no Power
Query, acesse Navegar pelos objetos de consulta.
3. Selecione o gateway de dados local que você deseja usar para se conectar aos
dados.
4. Defina o Tipo de Autenticação como Básico. Informe seu nome de usuário e
senha.
7. Na caixa de diálogo Navegador, selecione os itens que você deseja usar. Quando
você seleciona um ou mais itens do servidor, a caixa de diálogo Navegador cria
uma visualização da tabela de saída. Para obter mais informações sobre como
navegar pelos objetos de consulta do Servidor de Mensagens SAP BW no Power
Query, acesse Navegar pelos objetos de consulta.
Em que:
7 Observação
/S/<port> pode ser omitido se a porta for a porta padrão (3299).
Considerações
As strings do roteador podem incluir senhas, prefixadas por /P/ ou /W/ . Não há
suporte para senhas em strings do roteador do Power Query, pois isso pode não
ser seguro. Usar uma senha resultará em um erro.
No Power Query, você pode usar a sintaxe "string do roteador" para especificar
uma porta personalizada, para que as strings do roteador com uma única estação
sejam permitidas. As strings do roteador podem ser identificadas como
começando com /H/ ou /M/ . Qualquer outra entrada é assumida como um nome
de servidor/endereço IP.
Para permitir que você use as mesmas strings do roteador que você usa em outras
ferramentas, a opção /G/ na string do roteador é suportada. Quando fornecido,
deve corresponder ao valor especificado no parâmetro "Grupo de logon".
Se uma porta do servidor de mensagens for especificada, ela será enviada. Nessas
circunstâncias, o SystemId é omitido da cadeia de conexão, pois não é mais
necessário. No entanto, você ainda deve fornecer um valor para SystemId mesmo
que ele não será usado para estabelecer a conexão.
Confira também
Navegar pelos objetos de consulta
Princípios básicos do SAP Business Warehouse
Usar opções avançadas
Solução de problemas do conector do SAP Business Warehouse
Conceitos básicos do SAP BW
Artigo • 23/03/2023
Arquitetura de integração
Do ponto de vista técnico, a integração entre aplicativos e SAP BW baseia-se nas
chamadas BAPI (Interfaces de Programação de Aplicativos Empresariais) do OLAP
(Processamento Analítico Online).
Aplicativos de todos os tipos podem ser conectados com um servidor SAP BW usando
esses métodos.
Os BAPIs OLAP fornecem métodos para navegar por metadados e dados mestres e
também para passar instruções MDX para execução para o Processador MDX.
Os outros catálogos representam InfoProviders para os quais existe pelo menos uma
consulta. Ao expandir um desses nós no navegador, você pode selecionar entre as
consultas disponíveis associadas ao InfoProvider.
Embora as consultas BEx tenham vantagens como fontes de dados (vá para
considerações de desempenho), você não precisa de uma consulta para cada relatório.
Você precisará avaliar o custo de desenvolvimento e manutenção de consultas
adicionais em relação aos requisitos de relatório.
Uma dimensão Time pode ter as características Dia (no formato AAAA.MM.DD),
Semana (no formulário AAAAA.SS), Mês (no formato AAAA.MM), Ano (no formato
AAAA) e Período Fiscal (no formato AAAA. PPP).
Por exemplo, a dimensão Cliente pode ter as características Vendido para parceiro
comercial, Enviado para parceiro comercial e Pagador.
Provedores compostos são um novo objeto de dados em sistemas SAP BW que são
executados no HANA, ou seja, SAP BW 7.5 ou BW4/HANA. Um provedor composto
baseia-se em um JOIN ou UNION de outros InfoProviders ou índices analíticos. Os
dados em provedores compostos podem ser avaliados usando uma consulta BEx.
Confira também
Navegar pelos objetos de consulta
Navegar pelos objetos de consulta
Artigo • 23/03/2023
Você verá uma pasta de catálogo com o nome $INFOCUBE, que contém todos os
InfoProviders no sistema SAP BW.
Símbolo Descrição
Valor-chave
Característica
Nível de característica
Propriedade (Atributo)
Hierarquia
7 Observação
O navegador mostra consultas InfoCubes e BEx. Para consultas BEx, talvez seja
necessário entrar no Business Explorer, abrir a consulta desejada e verificar Permitir
acesso externo a esta consulta: por OLE DB para OLAP para que a consulta esteja
disponível no navegador.
7 Observação
Hierarquias de características
Uma característica sempre terá pelo menos um nível de característica (Nível 01), mesmo
quando nenhuma hierarquia é definida na característica. O objeto Nível de
característica 01 contém todos os membros para a característica como uma lista simples
de valores.
As características no SAP BW podem ter mais de uma hierarquia definida. Para essas
características, você só pode selecionar uma hierarquia ou o objeto Nível 01.
7 Observação
O Power Query usa uma interface mais recente que está disponível no SAP BW versão
7.01 ou superior. A interface reduz o consumo de memória e o conjunto de resultados
não é restrito pelo número de células.
Mesmo com essas melhorias, o conjunto de dados resultante pode se tornar muito
grande e demorado para processar.
Recomendação de desempenho
Inclua apenas as características e as propriedades de que você precisa. Tente níveis mais
altos de agregação, ou seja, você precisa de detalhes de nível material em seu relatório
ou o nível do MaterialGroup é suficiente? Quais níveis de hierarquia são necessários no
Power BI? Tente criar conjuntos de dados menores, com níveis mais altos de agregação
ou vários conjuntos de dados menores, que podem ser unidos posteriormente.
Parâmetros de consulta
As consultas no SAP BW podem ter filtros dinâmicos definidos que permitem restringir
o conjunto de dados retornado pela consulta. No Designer de Consultas BEx, esse tipo
de filtro dinâmico pode ser definido com Restrição de característica e pela atribuição de
uma Variável a essa restrição. Variáveis em uma consulta podem ser obrigatórias ou
opcionais e estão disponíveis para o usuário no navegador.
Usando o seletor Mostrar, você pode exibir todos os parâmetros definidos na consulta
ou apenas os obrigatórios.
A consulta mostrada na imagem anterior tem vários parâmetros opcionais, incluindo um
do Grupo de Materiais. Você pode selecionar um ou mais grupos de materiais para
retornar apenas informações de compra para os valores selecionados, ou seja,
gabinetes, placas-mãe e processadores. Também é possível digitar os valores
diretamente no campo "Valores". Para variáveis com várias entradas, valores separados
por vírgula são esperados; neste exemplo, seria algo semelhante a [0D_MTLGROUP].[201],
[0D_MTLGROUP].[202], [0D_MTLGROUP].[208] .
O valor # significa não atribuído; no exemplo, qualquer registro de dados sem um valor
de grupo de material atribuído.
Recomendação de desempenho
Em muitos casos, também pode ser possível trabalhar com o autor da Consulta BEx no
SAP BW para clonar e modificar uma consulta existente e otimizá-la para desempenho
adicionando restrições de características adicionais ou removendo características
desnecessárias.
No exemplo acima, um parâmetro foi usado para mostrar apenas registros com um
grupo de materiais de gabinetes, placas-mãe e processadores.
No Power Query Desktop, você também pode selecionar Carregar para trazer todo o
conjunto de dados do SAP BW para o Power BI Desktop. O Power BI Desktop leva você
para a visualização Relatório, que permite ver os dados ou fazer mais alterações com as
visualizações Dados ou Relacionamentos.
Confira também
Transformar e filtrar um conjunto de dados do SAP BW
Transformar e filtrar um conjunto de
dados do SAP BW
Artigo • 23/03/2023
Com o Editor do Power Query, você pode aplicar transformações de dados adicionais e
etapas de filtragem antes de trazer o conjunto de dados do SAP BW para o modelo de
dados do Power BI Desktop ou do Microsoft Power Platform.
Por exemplo, você poderia filtrar o conjunto de dados para incluir apenas registros para
Ano Civil/Mês FEV 2003 ou aplicar um filtro de texto para incluir apenas registros em
que Ano Civil/Mês contém 2003.
Nem todos os filtros serão dobrados na consulta no SAP BW. Você pode determinar se
um filtro é dobrado na consulta examinando o ícone no canto superior esquerdo da
tabela de dados, diretamente acima do número 1 do primeiro registro de dados.
Se o ícone for um cubo, o filtro será aplicado na consulta no sistema do SAP BW.
Se o ícone for uma tabela, o filtro não fará parte da consulta e só será aplicado à tabela.
Você pode exibir o código M gerado com a opção Editor Avançado na guia Exibir.
Para ver uma descrição de cada função ou para testá-la, clique com o botão direito do
mouse na consulta do SAP BW existente no painel Consultas e selecione Criar Função.
Na barra de fórmulas, na parte superior, digite:
= <function name>
em que <function name> é o nome da função que você deseja ver descrita. O exemplo
a seguir mostra a descrição da função Cube.Transform .
aplicado ao cubo.
Cube.Dimensions : retorna uma tabela com o conjunto de dimensões para o cubo.
Cube.Measures : retorna uma tabela com o conjunto de medidas para o cubo.
Confira também
Referência da linguagem de fórmula do Power Query M
Detalhes de implementação
Detalhes de implementação
Artigo • 05/10/2023
) Importante
SapBusinessWarehouseExecutionMode.BasXml
SapBusinessWarehouseExecutionMode.BasXmlGzip
SapBusinessWarehouseExecutionMode.DataStream
Desempenho de aprimorado.
Capacidade de recuperar milhões de linhas de dados e fazer um ajuste fino por
meio do parâmetro de tamanho do lote.
Capacidade de alternar os modos de execução.
Suporte para modo compactado. Especialmente benéfico para conexões de alta
latência ou grandes conjuntos de dados.
Melhoria na detecção de variáveis Date .
Exposição das dimensões Date (tipo DATS do ABAP) e Time (tipo TIMS do ABAP),
como datas e horas, respectivamente, em vez de valores de texto. Mais
informações: Suporte para datas tipada no SAP BW
Melhoria no tratamento de exceção. Os erros que ocorrem em chamadas BAPI
agora são apresentados.
Dobramento de colunas nos modos BasXml e BasXmlGzip. Por exemplo, se a
consulta MDX gerada recuperar 40 colunas, mas a seleção atual precisar apenas de
10, essa solicitação será transmitida para o servidor para recuperar um conjunto de
dados menor.
Todos os esforços necessários foram feitos para tornar a Implementação 2.0 do conector
do SAP BW compatível com a versão 1. No entanto, pode haver algumas diferenças
devido aos diferentes modos de execução do SAP BW MDX que estão sendo usados.
Para resolver conflitos, tente alternar entre os modos de execução.
let
Source = SapBusinessWarehouse.Cubes("sapbwtestserver", "00", "837",
[ExecutionMode=SapBusinessWarehouseExecutionMode.BasXmlGzip,
Implementation="2.0"]),
#"$INFOCUBE" = Source{[Name="$INFOCUBE"]}[Data],
#"$0D_DECU" = #"$INFOCUBE"{[Id="$0D_DECU"]}[Data],
#"Added Items" = Cube.Transform(#"$0D_DECU",
{
{Cube.AddAndExpandDimensionColumn, "[0CALDAY]", {"[0CALDAY].
[LEVEL01]"}, {"Calendar day.Calendar day Level 01"}},
{Table.AddColumn, "Calendar day.Calendar day Level 01.Key", each
Cube.AttributeMemberProperty([Calendar day.Calendar day Level 01], "
[20CALDAY]")},
{Cube.AddMeasureColumn, "Billed Quantity", "[Measures].[0D_INV_QTY]"}
})
in
#"Added Items"
Você precisará adicionar a chave para acessar a data tipada. Por exemplo, se houver um
atributo de dimensão chamado [0CALDAY], você precisará adicionar a chave [20CALDAY]
para obter o valor tipado.
Recurso Descrição
Unidades de medida Unidades de medida (por exemplo, 230 KG) não são refletidas
no Power Query.
Chave versus texto (curto, Para uma característica do SAP BW como o CostCenter, o
médio, longo) navegador mostrará um único item Centro de Custo Nível 01.
A seleção deste item incluirá o texto padrão do Centro de
Custos na lista de campos. Além disso, os valores Chave, Nome
Curto, Nome Médio e Nome Longo estão disponíveis para
seleção no nó Propriedades para a característica (se mantido
no SAP BW).
Várias hierarquias de uma No SAP, uma característica pode ter várias hierarquias. Em
característica ferramentas como o BEx Analyzer, quando uma característica é
incluída em uma consulta, o usuário pode selecionar a
hierarquia a ser usada.
Continente
Américas
Canadá
EUA
Not Assigned
Austrália
Continente
Américas
Canadá
EUA
Not Assigned
(Em branco)
Austrália
Fator de escala/inverter sinal No SAP, um valor-chave pode ter um fator de escala (por
exemplo, 1.000) definido como uma opção de formatação, o
que significa que toda a exibição será dimensionada segundo
esse fator.
Filtro padrão Uma consulta BEX pode incluir filtros padrão, que serão
aplicados automaticamente pelo SAP Bex Analyzer. Eles não
são expostos e, portanto, o uso equivalente no Power Query
não aplicará os mesmo filtros por padrão.
Ordem de classificação A ordem de classificação (por Texto ou por Chave) para uma
característica pode ser definida no SAP. Essa ordem de
classificação não se reflete no Power Query. Por exemplo, os
meses podem aparecer como "Abril", "Agosto" e assim por
diante.
Variáveis de saída do cliente Variáveis de Saída do Cliente não são expostas pela API pública
e, portanto, não têm suporte no Power Query.
Sugestão Descrição
Limitar seleção de O tempo necessário para carregar dados do SAP BW no Power Query
características e aumenta com o tamanho do conjunto de dados, ou seja, o número de
propriedades (atributo) colunas e linhas no conjunto de resultados nivelado. Para reduzir o
número de colunas, selecione apenas as características e as
propriedades no navegador que você provavelmente vai querer ver
em seu relatório ou painel.
Dividir consultas muito Pode ser benéfico dividir consultas muito grandes em InfoCubes ou
grandes em várias BEx. Por exemplo, uma consulta pode estar obtendo os valores-chave,
Sugestão Descrição
consultas menores enquanto outra consulta (ou várias outras consultas), obtendo os
dados de características. Você pode juntar os resultados da consulta
individual no Power Query.
Evitar o uso de atributos Uma consulta com um atributo de navegação precisa executar uma
de navegação na junção adicional, em comparação com uma consulta com o mesmo
consulta do BEx objeto como característica para chegar aos valores.
Usar o RSRT para Seu Administrador do SAP pode usar o Monitor de Consultas no SAP
monitorar e solucionar BW (transação RSRT) para analisar problemas de desempenho com
problemas de consultas consultas do SAP BW. Examine a Nota do SAP 1591837 para obter
com execução lenta mais informações.
Confira também
Servidor de Aplicativos SAP Business Warehouse
Servidor de Mensagens SAP Business Warehouse
Importar vs. DirectQuery para SAP BW
Importar vs. DirectQuery para SAP BW
Artigo • 23/03/2023
7 Observação
Com o Power Query, você pode se conectar a uma ampla variedade de fontes de dados,
incluindo serviços online, bancos de dados, formatos de arquivo diferentes e outros. Se
você estiver usando o Power BI Desktop, poderá se conectar a essas fontes de dados de
duas maneiras diferentes: importar os dados para o Power BI ou se conectar
diretamente aos dados no repositório de origem, que é conhecido como DirectQuery.
Ao se conectar a um sistema SAP BW, você também pode escolher entre esses dois
modos de conectividade. Para obter uma lista completa de fontes de dados que dão
suporte ao DirectQuery, consulte as fontes de dados do Power BI.
As principais diferenças entre os dois modos de conectividade são descritas aqui, bem
como diretrizes e limitações, pois se relacionam com conexões SAP BW. Para obter
informações adicionais sobre o modo DirectQuery, acesse Usar o DirectQuery no Power
BI.
Importar Conexões
Quando você se conecta a uma fonte de dados com Power BI Desktop, o navegador
permitirá que você selecione um conjunto de tabelas (para fontes relacionais) ou um
conjunto de objetos de origem (para fontes multidimensionais).
Para conexões SAP BW, você pode selecionar os objetos que deseja incluir em sua
consulta na árvore exibida. Você pode selecionar uma consulta InfoProvider ou BEx para
um InfoProvider, expandir suas figuras-chave e dimensões e selecionar figuras-chave
específicas, características, atributos (propriedades) ou hierarquias a serem incluídas em
sua consulta.
A seleção define uma consulta que retornará um conjunto de dados nivelado que
consiste em colunas e linhas. Os níveis de características selecionados, as propriedades e
as figuras-chave serão representados no conjunto de dados como colunas. As figuras-
chave são agregadas de acordo com as características selecionadas e seus níveis. Uma
visualização dos dados é exibida no navegador. Você pode editar essas consultas no
Power Query antes de carregar os dados, por exemplo, para aplicar filtros ou agregar os
dados ou unir tabelas diferentes.
Quando os dados definidos pelas consultas forem carregados, eles serão importados
para o cache na memória do Power BI.
Quando você começar a criar seus visuais no Power BI Desktop, os dados importados no
cache serão consultados. A consulta de dados armazenados em cache é muito rápida e
as alterações nos visuais serão refletidas imediatamente.
No entanto, o usuário deve tomar cuidado ao criar visuais que agregam ainda mais os
dados ao lidar com medidas não aditivas. Por exemplo, se a consulta importou cada
Escritório de Vendas e a % de crescimento para cada um, se o usuário tiver criado um
visual que Somará os valores de % de crescimento em todos os Escritórios de Vendas,
essa agregação será executada localmente, nos dados armazenados em cache. O
resultado não seria o mesmo que solicitar a % de crescimento geral do SAP BW e
provavelmente não é o que se pretende. Para evitar essas agregações acidentais, é útil
definir o Resumo Padrão para essas colunas como Não resumir.
Se os dados na fonte subjacente forem alterados, eles não serão refletidos em seus
visuais. Será necessário fazer uma Atualização, que reimportará os dados da fonte
subjacente para o cache do Power BI.
Quando você publica um relatório (arquivo .pbix) no serviço do Power BI, um conjunto
de dados é criado e carregado no servidor do Power BI. Os dados importados no cache
são incluídos nesse conjunto de dados. Enquanto você trabalha com um relatório no
serviço do Power BI, os dados carregados são consultados, fornecendo um tempo de
resposta rápido e interatividade. Você pode configurar uma atualização agendada do
conjunto de dados ou importar novamente os dados manualmente. Para fontes de
dados locais do SAP BW, é necessário configurar um gateway de dados local.
Informações sobre como instalar e configurar o gateway de dados local podem ser
encontradas na seguinte documentação:
Documentação do gateway de dados local
Gerenciar a fonte de dados do gateway no Power BI
Gerenciamento de fonte de dados no Power Platform
Conexões do DirectQuery
A experiência de navegação é um pouco diferente ao se conectar a uma fonte do SAP
BW no modo DirectQuery. O navegador ainda exibirá uma lista de consultas
InfoProviders e BEx disponíveis no SAP BW, no entanto, nenhuma consulta do Power BI
está definida no processo. Você selecionará o objeto de origem em si, ou seja, a
consulta InfoProvider ou BEx e verá a lista de campos com as características e as figuras-
chave depois de se conectar.
Para consultas SAP BW com variáveis, você pode inserir ou selecionar valores como
parâmetros da consulta. Selecione o botão Aplicar para incluir os parâmetros
especificados na consulta.
À medida que você começa a criar seus visuais em Power BI Desktop, a fonte de dados
subjacente no SAP BW é consultada para recuperar os dados necessários. O tempo
necessário para atualizar um visual depende do desempenho do sistema SAP BW
subjacente.
Quando você publica um relatório no serviço do Power BI, ele resultará novamente na
criação de um conjunto de dados no serviço do Power BI, assim como para uma
conexão de importação. No entanto, nenhum dado está incluído nesse conjunto de
dados.
Enquanto você trabalha com um relatório no serviço do Power BI, a fonte de dados
subjacente é consultada novamente para recuperar os dados necessários. Para conexões
do DirectQuery com seus sistemas SAP BW e SAP HANA, você deve ter um gateway de
dados local instalado e a fonte de dados registrada com o gateway.
Para consultas SAP BW com variáveis, os usuários finais podem editar parâmetros da
consulta.
7 Observação
Para que o usuário final edite parâmetros, o conjunto de dados precisa ser
publicado em um espaço de trabalho premium, no modo DirectQuery, e o SSO
(logon único) precisa ser habilitado.
Recomendações gerais
Você deve importar dados para o Power BI sempre que possível. A importação aproveita
o mecanismo de consulta de alto desempenho do Power BI e proporciona uma
experiência completa e altamente interativa com os dados.
Fornece a capacidade de acessar dados SAP BW usando SSO, para garantir que a
segurança definida na fonte do SAP BW subjacente seja sempre aplicada. Ao
acessar o SAP BW usando o SSO, as permissões de acesso a dados do usuário no
SAP serão aplicadas, o que pode produzir resultados diferentes para usuários
diferentes. Os dados que um usuário não está autorizado a exibir serão cortados
pelo SAP BW.
Garante que os dados mais recentes possam ser vistos facilmente, mesmo que
estejam sendo alterados com frequência na fonte do SAP BW subjacente.
Garante que medidas complexas possam ser facilmente tratadas, em que o SAP
BW de origem sempre é consultado para os dados agregados, sem risco de
agregações não intencionais e enganosas sobre caches importados dos dados.
Evita caches de dados que estão sendo extraídos e publicados, o que pode violar
políticas de segurança ou soberania de dados que se aplicam.
Essas mudanças serão aplicadas ao relatório enquanto você interage com ele no Power
BI Desktop, além de quando os usuários consomem o relatório no serviço do Power BI.
Além disso, muitas das práticas recomendadas gerais descritas em Usar o DirectQuery
no Power BI se aplicam igualmente ao usar o DirectQuery no SAP BW. Detalhes
adicionais específicos do SAP BW são descritos no Conectar-se ao SAP Business
Warehouse usando o DirectQuery no Power BI.
Confira também
Autenticação do Windows e logon único
Autenticação do Windows e logon único
Artigo • 23/03/2023
7 Observação
Além do servidor do SAP BW ser configurado para entrar com o SNC, sua conta de
usuário SAP precisa ser configurada com um nome SNC (transação SU01 no sistema
SAP).
O Secure Login é uma solução de software da SAP que permite que os clientes se
beneficiem das vantagens do SNC sem precisar configurar uma PKI (infraestrutura de
chave pública). O Secure Login permite que os usuários se autentiquem com credenciais
do Windows Active Directory.
p:CN=<service_User_Principal_Name>
Confira também
Usar opções avançadas
Usar opções avançadas
Artigo • 23/03/2023
Ao criar uma conexão com um servidor do SAP Business Warehouse, você pode,
opcionalmente, especificar um código de idioma, modo de execução, tamanho do lote e
uma instrução MDX. Além disso, você pode selecionar se deseja habilitar estruturas
características.
7 Observação
Código de idioma
Opcionalmente, você pode especificar um código de idioma ao estabelecer uma
conexão com o servidor SAP BW.
O valor esperado é um código de linguagem de duas letras, conforme definido no
sistema SAP. No Power Query Desktop selecione o ícone de Ajuda (ponto de
interrogação) ao lado do campo Código de Idioma para obter uma lista de valores
válidos.
Depois de definir o código de idioma, o Power Query exibirá os nomes descritivos dos
objetos de dados no SAP BW no idioma especificado, incluindo os nomes de campo
para os objetos selecionados.
7 Observação
Nem todos os idiomas listados podem estar configurados em seu sistema SAP BW
e as descrições de objeto podem não ser traduzidas em todos os idiomas.
Tamanho do lote
Especifica o número máximo de linhas que serão recuperadas de cada vez durante a
execução de uma instrução MDX. Um número pequeno gerará mais chamadas para o
servidor ao recuperar um conjunto de dados grande. Um número grande de linhas pode
melhorar o desempenho, mas pode causar problemas de memória no servidor do SAP
BW. O valor padrão é 50000 linhas.
Instrução MDX
7 Observação
Para obter informações mais detalhadas sobre essa transação, acesse o Ambiente de
Teste do MDX .
O MDXTEST também pode ser usado para construir uma instrução MDX. A tela da
transação inclui painéis à esquerda que ajudam o usuário a navegar até um objeto de
consulta no SAP BW e gerar uma instrução MDX.
Confira também
Navegar pelos objetos de consulta
Transforme e filtre o conjunto de dados SAP BW
Solução de problemas do conector do SAP Business Warehouse
Solução de problemas do conector do
SAP Business Warehouse
Artigo • 05/10/2023
Este artigo fornece situações de problemas (e possíveis soluções) para trabalhar com o
conector do SAP BW (Business Warehouse).
7 Observação
Muitas vezes, quando ocorre um erro, pode ser vantajoso coletar um rastreamento da
consulta que foi enviada para o servidor do SAP BW e sua resposta. O procedimento a
seguir mostra como configurar rastreamentos avançados para problemas que ocorrem
usando o conector do SAP BW.
e. Selecione OK.
Quando esse rastreamento avançado for ativado, uma pasta adicional chamada
SapBw será criada na pasta Rastreamentos. Confira o restante deste procedimento
para saber o local da pasta Rastreamentos.
7. Reproduza o problema.
8. Depois de concluído, feche Power BI Desktop para que os logs sejam liberados
para o disco.
CPIC_TRACE – 3
CPIC_TRACE_DIR – uma pasta válida, por exemplo: E:\traces\CPIC
O restante do procedimento permanece o mesmo. Você pode ver os rastreamentos
CPIC na pasta especificada na variável de ambiente CPIC_TRACE_DIR. Você também
pode ver os rastreamentos regulares na pasta SapBw.
2. Depois de remover, verifique se o Conector SAP .NET não está instalado no GAC
(Cache de Assembly Global), confirmando se os seguintes caminhos NÃO existem
ou NÃO contêm DLLs:
GAC de 32 bits:
C:\Windows\Microsoft.NET\assembly\GAC_32\sapnco\v4.0_3.0.0.42__50436dc
a5c7f7d23
C:\Windows\Microsoft.NET\assembly\GAC_32\sapnco_utils\v4.0_3.0.0.42__504
36dca5c7f7d23
64 bit GAC:
C:\Windows\Microsoft.NET\assembly\GAC_64\sapnco\v4.0_3.0.0.42__50436dc
a5c7f7d23
C:\Windows\Microsoft.NET\assembly\GAC_64\sapnco_utils\v4.0_3.0.0.42__504
36dca5c7f7d23
C:\Program Files\SAP\SAP_DotNetConnector3_Net40_x64
SAP.Middleware.Connector.RfcBaseException.get_ErrorCode()'
Esse erro é gerado quando ocorre um erro no servidor do SAP BW e o conector SAP
.NET tenta recuperar informações sobre esse erro. No entanto, esse erro pode estar
ocultando o erro real. Esse erro pode acontecer quando:
O conector SAP .NET tiver sido instalado duas vezes, uma no GAC (Cache de
Assembly Global) e outra fora do GAC.
Siga as instruções em Executar instalação limpa do conector SAP .NET para reinstalar o
conector.
C:\Windows\Microsoft.NET\assembly\GAC_64\sapnco
C:\Windows\Microsoft.NET\assembly\GAC_64\sapnco\v4.0_3.0.0.42__50436dca
5c7f7d23\sapnco.dll
Outra maneira de verificar o GAC é usar a gacutil (uma das opções para desabilitar a
assinatura de nome forte). Você precisaria executá-la em um prompt de comando de 64
bits. Você pode verificar o conteúdo do GAC abrindo um prompt de comando,
navegando até o caminho gacutil.exe e executando:
gacutil -l
Conectividade:
RFC_PING
RFC_METADATA_GET
Execução de MDX:
RSR_MDX_CREATE_OBJECT
BAPI_MDDATASET_CREATE_OBJECT
BAPI_MDDATASET_SELECT_DATA
BAPI_MDDATASET_DELETE_OBJECT
RSR_MDX_GET_AXIS_INFO
RSR_MDX_GET_AXIS_DATA
RSR_MDX_GET_CELL_DATA
BAPI_MDDATASET_GET_AXIS_INFO
BAPI_MDDATASET_GET_AXIS_DATA
BAPI_MDDATASET_GET_CELL_DATA
Nivelamento de ExecutionMode:
RSR_MDX_GET_FLAT_DATA
RSR_MDX_GET_FS_DATA
BAPI_MDDATASET_GET_FLAT_DATA
BAPI_MDDATASET_GET_FS_DATA
Fluxo de ExecutionMode:
BAPI_MDDATASET_GET_STREAMDATA
BAPI_MDDATASET_GET_STREAMINFO
BasXml de ExecutionMode:
RSR_MDX_BXML_GET_DATA
RSR_MDX_BXML_GET_GZIP_DATA
RSR_MDX_BXML_GET_INFO
RSR_MDX_BXML_SET_BINDING
Metadados:
BAPI_MDPROVIDER_GET_DIMENSIONS
BAPI_MDPROVIDER_GET_CATALOGS
BAPI_MDPROVIDER_GET_CUBES
BAPI_MDPROVIDER_GET_MEASURES
BAPI_MDPROVIDER_GET_HIERARCHYS
BAPI_MDPROVIDER_GET_LEVELS
BAPI_MDPROVIDER_GET_PROPERTIES
BAPI_MDPROVIDER_GET_MEMBERS
BAPI_MDPROVIDER_GET_VARIABLES
Informações:
BAPI_IOBJ_GETDETAIL (necessária para dimensões tipadas (DATS, TIMS))
BAPI_USER_GET_DETAIL (usada apenas para a interface de nivelamento)
RFC_READ_TABLE (necessária para nomes de catálogo e determinadas
chamadas de valores variáveis)
Esse erro aparece quando a versão instalada no GAC é inferior à versão 3.0.18.0
esperada. A Nota SAP 2417315 discute esse cenário.
SNC_MODE – SncModeApply
SNC_LIB – com o caminho da biblioteca especificado; se for uma variável de
ambiente, ela será expandida neste momento
SNC_PARTNERNAME – com o valor fornecido
SNC_QOP = RfcConfigParameters.RfcSncQOP.Default
LANG (Idioma)
CLIENT
MSHOST (MessageServerHost)
SYSID (SystemID)
GROUP (LogonGroup)
Esse problema é discutido nas seguintes Notas do SAP. O acesso a essas notas requer
um S-user. Entre em contato com a equipe do SAP Basis para aplicar as correções
pertinentes a esse problema.
Além disso, para outros erros semelhantes, você pode examinar o conteúdo das
seguintes notas do SAP e aplicá-las conforme apropriado para seu ambiente:
Limitações e problemas
Nos logs – Message: [Expression.Error] The key didn't match any rows in the
table.
Rastreamento de Pilha:
at Microsoft.Mashup.Engine1.Runtime.TableValue.get_Item(Value key)
at
Microsoft.Mashup.Engine1.Library.Cube.CubeParametersModule.Cube.ApplyPa
rameterFunctionValue.GetParameterValue(CubeValue cubeValue, Value
parameter)
at
Microsoft.Mashup.Engine1.Library.Cube.CubeParametersModule.Cube.ApplyPa
rameterFunctionValue.TypedInvoke(TableValue cube, Value parameter,
Value arguments)
Detail: [Key = [Id = \"[!V000004]\"], Table = #table({...}, {...})]
7 Observação
Essa variável de ambiente não tem suporte, portanto, só deve ser usada
conforme descrito aqui.
4. A consulta deve ter uma linha que começa com "{Cube.ApplyParameter, "
[!V000004]" (o parâmetro ausente). Remova essa linha.
5. Selecione Concluído.
Se a solução alternativa acima não funcionar, a única correção alternativa será recriar o
relatório.
O Power BI Desktop consulta o sistema SAP para saber a notação decimal do usuário
conectado e usa essa notação para formatar valores decimais nos dados provenientes
do SAP BW.
tem um campo chamado DCPFM que armazena Notação de Formato Decimal. O campo
usa um dos seguintes valores:
XML
You are not authorized to display users in group TI:
<item>
<TYPE>E</TYPE>
<ID>01</ID>
<NUMBER>512</NUMBER>
<MESSAGE>You are not authorized to display users in group
TI</MESSAGE>
<LOG_NO/>
<LOG_MSG_NO>000000</LOG_MSG_NO>
<MESSAGE_V1>TI</MESSAGE_V1>
<MESSAGE_V2/>
<MESSAGE_V3/>
<MESSAGE_V4/>
<PARAMETER/>
<ROW>0</ROW>
<FIELD>BNAME</FIELD>
<SYSTEM>CLNTPW1400</SYSTEM>
</item>
Para resolver esse erro, os usuários deverão solicitar ao administrador do SAP para
conceder ao usuário do SAP BW que está sendo usado no Power BI, o direito de
executar BAPI_USER_GET_DETAIL . Também vale a pena verificar se o usuário tem o valor
necessário de DCPFM , conforme descrito anteriormente nesta solução de solução de
problemas.
Os usuários SAP precisam acessar módulos de função BAPI específicos para obter
metadados e recuperar dados dos InfoProviders do SAP BW. Esses módulos incluem:
BAPI_MDPROVIDER_GET_CATALOGS
BAPI_MDPROVIDER_GET_CUBES
BAPI_MDPROVIDER_GET_DIMENSIONS
BAPI_MDPROVIDER_GET_HIERARCHYS
BAPI_MDPROVIDER_GET_LEVELS
BAPI_MDPROVIDER_GET_MEASURES
BAPI_MDPROVIDER_GET_MEMBERS
BAPI_MDPROVIDER_GET_VARIABLES
BAPI_IOBJ_GETDETAIL
Para resolver esse problema, verifique se o usuário tem acesso aos vários módulos
MDPROVIDER e BAPI_IOBJ_GETDETAIL . Para solucionar ainda mais esse ou problemas
semelhantes, você pode ativar o rastreamento. Selecione Arquivo>Opções e
configurações>Opções. Em Opções, selecione Diagnóstico e, em seguida, selecione
Ativar rastreamento. Tente recuperar dados do SAP BW enquanto o rastreamento
estiver ativo e examine o arquivo de rastreamento para obter mais detalhes.
Exceções de memória
Em alguns casos, você pode se deparar com um dos seguintes erros de memória:
Como o conector SAP Business Warehouse do Power Query usa a interface MDX
fornecida pelo SAP para acesso de terceiros, você precisará entrar em contato com o
SAP para obter as soluções possíveis, pois eles são proprietários da camada entre a
interface MDX e o servidor do SAP BW. Pergunte como a configuração "long text is XL"
pode ser especificada em seu cenário específico.
Resumo
ノ Expandir a tabela
Item Descrição
Produtos Excel
Power BI (Conjuntos de dados)
Power BI (Fluxos de dados)
Malha (fluxo de dados Gen2)
Power Apps (Fluxos de dados)
Analysis Services
7 Observação
Alguns recursos podem estar presentes em um produto, mas não em outros devido
a cronogramas de implantação e funcionalidades específicas do host.
Pré-requisitos
Você precisará de uma conta SAP para entrar no site e baixar os drivers. Se você estiver
inseguro, entre em contato com o administrador do SAP em sua organização.
Para usar o SAP HANA no Power BI Desktop ou no Excel, o driver ODBC do SAP HANA
deve estar instalado no computador cliente local para que a conexão de dados do SAP
HANA funcione corretamente. Você pode baixar as ferramentas de cliente SAP HANA de
Ferramentas de Desenvolvimento SAP , que contém o driver ODBC necessário. Outra
opção é obtê-lo do Centro de Download de Software SAP . No portal de software,
pesquise os computadores com Windows em SAP HANA CLIENT. Como o Centro de
Download de Software SAP altera sua estrutura com frequência, não há diretrizes mais
específicas disponíveis para navegar nesse site. Para obter instruções sobre como
instalar o driver SAP HANA ODBC, acesse Instalando o driver SAP HANA ODBC no
Windows 64 Bits .
Para usar o SAP HANA no Excel, você deve ter o driver ODBC do SAP HANA de 32 ou 64
bits (de acordo com a versão do Excel, de 32 bits ou 64 bits, que você estiver usando)
instalado no computador cliente local.
Esse recurso só estará disponível no Excel para Windows se você tiver o Office 2019 ou
uma assinatura do Microsoft 365 . Se você for assinante do Microsoft 365, é necessário
ter a versão mais recente do Office .
Há suporte para HANA 1.0 SPS 12rev122.09, 2.0 SPS 3rev30 e BW/4HANA 2.0.
1. Selecione Obter dados > banco de dados SAP HANA no Power BI Desktop ou Do
Banco de Dados > Do Banco de Dados SAP HANA na faixa de opções Dados no
Excel.
2. Insira o nome e a porta do servidor SAP HANA ao qual você deseja se conectar. O
exemplo na figura a seguir usa SAPHANATestServer na porta 30015 .
Por padrão, o número da porta é definido para dar suporte a apenas um banco de
dados de contêiner. Se o banco de dados SAP HANA puder conter mais de um
contêiner de banco de dados multilocatário, selecione Banco de dados de sistema
multilocatário (30013). Se você quiser se conectar a um banco de dados de
locatário ou a um banco de dados com um número de instância fora do padrão,
selecione Personalizado no menu suspenso Porta.
Você também pode inserir uma instrução SQL ou ativar a vinculação de coluna nas
Opções avançadas. Mais informações, Conectar usando opções avançadas
3. Se você estiver acessando um banco de dados pela primeira vez, insira suas
credenciais para autenticação. Neste exemplo, o servidor SAP HANA requer
credenciais de usuário do banco de dados, portanto, selecione Banco de Dados e
insira seu nome de usuário e senha. Se necessário, insira as informações do
certificado do servidor.
Além disso, talvez seja necessário validar o certificado do servidor. Para obter mais
informações sobre como usar a validação de seleções de certificado de servidor,
confira Usando a criptografia do SAP HANA. No Power BI Desktop e no Excel, a
validação da seleção de certificado do servidor é habilitada por padrão. Se você já
tiver configurado essas seleções no Administrador da Fonte de Dados ODBC,
desmarque a caixa de seleção Validar certificado do servidor. Para saber mais
sobre como usar o Administrador de Fonte de Dados ODBC para configurar essas
seleções, acesse Configurar SSL para acesso de cliente ODBC ao SAP HANA.
Para obter mais informações sobre a autenticação, acesse Autenticação com uma
fonte de dados.
2. Insira o nome e a porta do servidor SAP HANA ao qual você deseja se conectar. O
exemplo na figura a seguir usa SAPHANATestServer na porta 30015 .
4. Selecione o nome do gateway de dados local a ser usado para acessar o banco de
dados.
7 Observação
5. Escolha o tipo de autenticação que você deseja usar para acessar seus dados. Você
também precisará inserir um nome de usuário e uma senha.
7 Observação
A tabela a seguir descreve todas as opções avançadas que você pode definir no Power
Query.
ノ Expandir a tabela
Opção avançada Descrição
ConnectionTimeout Uma duração que controla por quanto tempo é necessário esperar antes
de abandonar a tentativa de obter uma conexão com o servidor. O valor
padrão é 15 segundos.
CommandTimeOut Uma duração que controla por quanto tempo a consulta do servidor tem
permissão para ser executada antes do cancelamento. O valor padrão é
dez minutos.
Com o SAP HANA, você também pode usar comandos SQL na instrução SQL de
consulta de banco de dados nativo para se conectar a tabelas de linhas e colunas
em tabelas do Catálogo do HANA, que não estão incluídas nas exibições
analíticas/de cálculo fornecidas pela experiência do Navigator. Você também pode
usar o conector ODBC para consultar essas tabelas.
Atualmente, ao usar o Power Query Desktop para se conectar a um banco de dados SAP
HANA, você pode selecionar a opção avançada Ativar vinculação de colunas para ativar
a vinculação de colunas.
Você também pode ativar a vinculação de colunas em consultas existentes ou em
consultas usadas no Power Query Online adicionando manualmente a opção
EnableColumnBinding à conexão na barra de fórmulas do Power Query ou no editor
Power Query M
Os servidores SAP HANA versão 1.0 nem sempre relatam comprimentos de coluna
corretos. Nesse contexto, EnableColumnBinding permite a vinculação parcial de
colunas. Para algumas consultas, isso pode significar que nenhuma coluna está
vinculada. Quando nenhuma coluna está vinculada, nenhum benefício de
desempenho é obtido.
Para usar parâmetros em uma consulta, coloque pontos de interrogação (?) em seu
código como placeholders. Para especificar o parâmetro, use o valor de texto SqlType e
um valor para isso SqlType em Value . Value pode ser qualquer valor M, mas deve ser
atribuído ao valor do SqlType especificado.
Power Query M
Power Query M
Power Query M
SqlType segue os nomes de tipo padrão definidos pelo SAP HANA. Por exemplo, a lista
bigint
BINARY
BOOLEAN
CHAR
DATE
DECIMAL
DOUBLE
INTEGER
NVARCHAR
SECONDDATE
SHORTTEXT
SMALLDECIMAL
SMALLINT
TIME
TIMESTAMP
VARBINARY
VARCHAR
Power Query M
let
Source = Value.NativeQuery(
SapHana.Database(
"myhanaserver:30015",
[Implementation = "2.0"]
),
"select ""VARCHAR_VAL"" as ""VARCHAR_VAL""
from ""_SYS_BIC"".""DEMO/CV_ALL_TYPES""
where ""VARCHAR_VAL"" = ? and ""DATE_VAL"" = ?
group by ""VARCHAR_VAL""
",
{"Seattle", #date(1957, 6, 13)},
[EnableFolding = true]
)
in
Source
O exemplo a seguir demonstra como fornecer uma lista de registros (ou misturar
valores e registros):
Power Query M
let
Source = Value.NativeQuery(
SapHana.Database(Server, [Implementation="2.0"]),
"select
""COL_VARCHAR"" as ""COL_VARCHAR"",
""ID"" as ""ID"",
sum(""DECIMAL_MEASURE"") as ""DECIMAL_MEASURE""
from ""_SYS_BIC"".""DEMO/CV_ALLTYPES""
where
""COL_ALPHANUM"" = ? or
""COL_BIGINT"" = ? or
""COL_BINARY"" = ? or
""COL_BOOLEAN"" = ? or
""COL_DATE"" = ?
group by
""COL_ALPHANUM"",
""COL_BIGINT"",
""COL_BINARY"",
""COL_BOOLEAN"",
""COL_DATE"",
{
[ SqlType = "CHAR", Value = "M" ],
// COL_ALPHANUM - CHAR
[ SqlType = "BIGINT", Value = 4 ],
// COL_BIGINT - BIGINT
[ SqlType = "BINARY", Value = Binary.FromText("AKvN",
BinaryEncoding.Base64) ], // COL_BINARY - BINARY
[ SqlType = "BOOLEAN", Value = true ],
// COL_BOOLEAN - BOOLEAN
[ SqlType = "DATE", Value = #date(2022, 5, 27) ],
// COL_DATE - TYPE_DATE
} ,
[EnableFolding=false]
)
in
Source
Antes, quando você adicionava uma coluna de tabela (ou outra transformação que
adiciona internamente uma coluna), a consulta "descartava o espaço do cubo" e todas
as operações eram feitas no nível da tabela. Em algum momento, essa desistência pode
fazer com que a consulta pare de dobrar. Não era mais possível executar operações de
cubo depois de adicionar uma coluna.
Com essa alteração, as colunas adicionadas são tratadas como atributos dinâmicos
dentro do cubo. Fazer com que a consulta permaneça no espaço do cubo para essa
operação tem a vantagem de permitir que você continue usando operações de cubo
mesmo depois de adicionar colunas.
7 Observação
A consulta de exemplo a seguir aproveita esse novo recurso. No passado, você obteria
uma exceção "o valor não é um cubo" ao aplicar Cube.CollapseAndRemoveColumns.
Power Query M
let
Source = SapHana.Database(“someserver:someport”,
[Implementation="2.0"]),
Contents = Source{[Name="Contents"]}[Data],
SHINE_CORE_SCHEMA.sap.hana.democontent.epm.models =
Contents{[Name="SHINE_CORE_SCHEMA.sap.hana.democontent.epm.models"]}[Data],
PURCHASE_ORDERS1 =
SHINE_CORE_SCHEMA.sap.hana.democontent.epm.models{[Name="PURCHASE_ORDERS"]}
[Data],
#"Added Items" = Cube.Transform(PURCHASE_ORDERS1,
{
{Cube.AddAndExpandDimensionColumn, "[PURCHASE_ORDERS]", {"
[HISTORY_CREATEDAT].[HISTORY_CREATEDAT].Attribute", "[Product_TypeCode].
[Product_TypeCode].Attribute", "[Supplier_Country].
[Supplier_Country].Attribute"}, {"HISTORY_CREATEDAT", "Product_TypeCode",
"Supplier_Country"}},
{Cube.AddMeasureColumn, "Product_Price", "[Measures].
[Product_Price]"}
}),
#"Inserted Year" = Table.AddColumn(#"Added Items", "Year", each
Date.Year([HISTORY_CREATEDAT]), Int64.Type),
#"Filtered Rows" = Table.SelectRows(#"Inserted Year", each
([Product_TypeCode] = "PR")),
#"Added Conditional Column" = Table.AddColumn(#"Filtered Rows",
"Region", each if [Supplier_Country] = "US" then "North America" else if
[Supplier_Country] = "CA" then "North America" else if [Supplier_Country] =
"MX" then "North America" else "Rest of world"),
#"Filtered Rows1" = Table.SelectRows(#"Added Conditional Column", each
([Region] = "North America")),
#"Collapsed and Removed Columns" =
Cube.CollapseAndRemoveColumns(#"Filtered Rows1", {"HISTORY_CREATEDAT",
"Product_TypeCode"})
in
#"Collapsed and Removed Columns"
Próximas etapas
Habilitar a criptografia para SAP HANA
Os artigos a seguir contêm mais informações que lhe podem ser úteis ao se conectar a
um banco de dados SAP HANA.
7 Observação
A SAP deixou de dar suporte ao OpenSSL e, por esse motivo, a Microsoft também
descontinuou o suporte a ele. Em vez disso, use CommonCryptoLib.
Este artigo fornece uma visão geral de como habilitar a criptografia usando o
CommonCryptoLib, e faz referência a algumas áreas específicas da documentação do
SAP. Atualizamos o conteúdo e os links periodicamente, mas para obter instruções e
suporte abrangentes, consulte sempre a documentação oficial do SAP. Use
CommonCryptoLib para configurar a criptografia em vez do OpenSSL; para obter etapas
para fazer isso, acesse Como configurar o TLS/SSL no SAP HANA 2.0 . Para ver etapas
sobre como migrar do OpenSSL para o CommonCryptoLib, vá para a nota SAP
2093286 (s-user necessário).
7 Observação
Há quatro fases para habilitar a criptografia para o SAP HANA. Abordaremos essas fases
em seguida. Para saber mais, confira Proteger a comunicação entre o SAP HANA Studio
e o servidor do SAP HANA com SSL
Use CommonCryptoLib
Verifique se o servidor HANA está configurado para usar o CommonCryptoLib como
provedor criptográfico.
Criar uma solicitação de assinatura de
certificado
Crie uma solicitação de assinatura de certificado X509 para o servidor HANA.
Se você ainda não tiver um AC que possa ser usado, crie um AC raiz seguindo as
etapas descritas em Proteger a comunicação entre o SAP HANA Studio e o
servidor SAP HANA com SSL .
Este comando cria uma solicitação de assinatura de certificado e uma chave privada.
Preencha <HOSTNAME com FQDN> com o nome do host e o FQDN (nome de domínio
totalmente qualificado).
openssl x509 -req -days 365 -in csr.txt -CA CA_Cert.pem -CAkey CA_Key.pem -
CAcreateserial -out cert.pem
Testar a conexão
7 Observação
Antes de usar os procedimentos nesta seção, você deve se conectar ao Power BI
usando suas credenciais da conta de administrador.
Antes de validar um certificado de servidor no serviço do Power BI online, você deve ter
uma fonte de dados já configurada para o gateway de dados local. Se você ainda não
tiver uma fonte de dados configurada para testar a conexão, precisará criar uma. Para
configurar a fonte de dados no gateway:
3. Selecione as reticências (...) ao lado do nome do gateway que você deseja usar
com esse conector.
5. Nas Configurações da Fonte de Dados, insira o nome da fonte de dados que você
deseja chamar de nova fonte na caixa de texto Nome da Fonte de Dados.
Power BI Desktop
Serviço do Power BI
Informações adicionais
Propriedades de configuração do TLS/SSL do lado do servidor para comunicação
externa (JDBC/ODBC)
Próximas etapas
Configurar o SSL para acesso do cliente ODBC ao SAP HANA
Configurar o SSL para acesso do cliente
ODBC ao SAP HANA
Artigo • 23/03/2023
Se você estiver se conectando a um banco de dados SAP HANA do Power Query Online,
talvez seja necessário configurar vários valores de propriedade para se conectar. Essas
propriedades podem ser o provedor de criptografia SSL, um repositório de chaves SSL e
um repositório de confiança SSL. Você também pode exigir que a conexão seja
criptografada. Nesse caso, você pode usar o aplicativo Administrador da Fonte de
Dados ODBC fornecido com o Windows para configurar essas propriedades.
7 Observação
Você deve ter o driver ODBC do SAP HANA adequado (32 bits ou 64 bits) instalado
antes de poder definir essas propriedades no Administrador da Fonte de Dados
ODBC.
3. Na caixa de diálogo Criar Nova Fonte de Dados, selecione Driver ODBC do Simba
Spark e clique em Concluir.
4. Na caixa de diálogo Configuração ODBC para SAP HANA , insira um nome de
fonte de dados. Em seguida, insira as informações do servidor e do banco de
dados e selecione Validar o certificado TLS/SSL.
5. Selecione o botão Avançado.
8. Na caixa de texto Valor , insira o nome do provedor de criptografia que você usará:
sapcrypto, commoncrypto, openssl ou mscrypto.
9. Selecione OK.
12. Para testar a conexão que você configurou, selecione Testar conexão na caixa de
diálogo Configuração ODBC para SAP HANA.
13. Quando a conexão de teste for concluída com êxito, selecione OK.
Para obter mais informações sobre as propriedades de conexão do SAP HANA, consulte
As Propriedades de Configuração do TLS/SSL do Lado do Servidor para Comunicação
Externa (JDBC/ODBC) .
7 Observação
Próximas etapas
Solução de problemas do conector de banco de dados SAP HANA
Solução de problemas
Artigo • 23/03/2023
A seção a seguir descreve alguns problemas que podem ocorrer ao usar o conector do
SAP HANA para Power Query, junto com algumas soluções possíveis.
A chave do Registro é:
HKEY_LOCAL_MACHINE\Software\ODBC\ODBCINST.INI\ODBC Drivers
Se você estiver usando um computador 64 bits, mas o Excel ou o Power BI Desktop for
32 bits (como mostrado nas capturas de tela abaixo), verifique o driver no nó
WOW6432:
HKEY_LOCAL_MACHINE\Software\WOW6432Node\ODBC\ODBCINST.INI\ODBC Drivers
Por exemplo:
O usuário não tem privilégios suficientes para a exibição que está tentando
acessar.
Resposta da SAP:
Resumo
Item Descrição
Produtos Excel
Power BI (Conjuntos de dados)
Power BI (Fluxos de dados)
Malha (fluxo de dados Gen2)
Power Apps (Fluxos de dados)
Dynamics 365 Customer Insights
7 Observação
Alguns recursos podem estar presentes em um produto, mas não em outros devido
a cronogramas de implantação e funcionalidades específicas do host.
7 Observação
3. Se esta for a primeira vez que você visita esse endereço de site, selecione o
método de autenticação apropriado. Insira suas credenciais e escolha o nível no
qual você deseja aplicar essas configurações. Depois, selecione Conectar.
7 Observação
5. Selecione Avançar.
7 Observação
Solução de problemas
Combinar arquivos
Todos os arquivos na pasta do SharePoint que você selecionar serão incluídos nos
dados a serem combinados. Se você tiver arquivos de dados localizados em uma
subpasta da pasta do SharePoint, todos esses arquivos também serão incluídos. Para
assegurar que a combinação dos dados do arquivo funcione corretamente, verifique se
todos os arquivos na pasta e nas subpastas têm o mesmo esquema.
Em alguns casos, pode haver várias pastas no site do SharePoint que contêm diferentes
tipos de dados. Nesse caso, exclua os arquivos desnecessários. Para excluir esses
arquivos:
2. No editor do Power Query, role para baixo até encontrar os arquivos que você
deseja manter.
3. No exemplo mostrado na captura de tela acima, os arquivos necessários estão nas
últimas linhas da tabela. Selecione Remover linhas, insira o valor da última linha
antes dos arquivos a serem mantidos (neste caso, 903) e selecione OK.
Para obter mais informações sobre como combinar arquivos, acesse Combinar arquivos
no Power Query.
# % $
Se esses caracteres estiverem presentes no nome do arquivo, o proprietário do arquivo
deverá renomeá-lo, excluindo os caracteres.
Permissões
Ao solicitar o conteúdo da biblioteca de documentos, você deve ter acesso de leitura ao
site do SharePoint, bem como à biblioteca de documentos e a todas as pastas que
levam ao arquivo solicitado.
Resumo
Item Descrição
Produtos Excel
Power BI (Conjuntos de dados)
Power BI (Fluxos de dados)
Malha (Dataflow Gen2)
Power Apps (Fluxos de dados)
Customer Insights do Dynamics 365
Analysis Services
7 Observação
Alguns recursos podem estar presentes em um produto, mas não em outros devido
a cronogramas de implantação e funcionalidades específicas do host.
7 Observação
Não há suporte para AAD/OAuth para SharePoint local usando o gateway de dados
local.
3. Se esta for a primeira vez que você visitou esse endereço do site, selecione o
método de autenticação apropriado. Insira suas credenciais e escolha o nível no
qual você deseja aplicar essas configurações. Depois, selecione Conectar.
5. Selecione Avançar.
Solução de problemas
Esse problema acontece apenas quando o Tipo de dados não está explicitamente
definido para uma coluna no Modo de Exibição de consulta do Power BI Desktop. Você
pode constatar que o tipo de dados não está definido ao ver a imagem "ABC 123" na
coluna e o tipo de dados "Qualquer" na faixa de opções, conforme mostrado abaixo.
O usuário pode forçar a interpretação a ser consistente ao definir explicitamente o tipo
de dados para a coluna por meio do Editor do Power Query. Por exemplo, a imagem a
seguir mostra a coluna com um tipo booliano explícito.
Próximas etapas
Otimizar o Power Query ao expandir as colunas da tabela
Lista do SharePoint Online
Artigo • 14/07/2023
Resumo
Item Descrição
Produtos Excel
Power BI (Conjuntos de dados)
Power BI (Fluxos de dados)
Malha (Dataflow Gen2)
Power Apps (Fluxos de dados)
Customer Insights do Dynamics 365
7 Observação
Alguns recursos podem estar presentes em um produto, mas não em outros devido
a cronogramas de implantação e funcionalidades específicas do host.
3. Se esta for a primeira vez que você visitou esse endereço do site, selecione o
método de autenticação apropriado. Insira suas credenciais e escolha o nível no
qual você deseja aplicar essas configurações. Depois, selecione Conectar.
5. Selecione Avançar.
Para acessá-lo, você inserirá a mesma tela do conector por meio da etapa 2 em
Conectar-se a uma lista do SharePoint Online no Power Query Desktop. No entanto,
selecione 2.0 em Implementação se ela ainda não estiver selecionada.
Todos
Default
A exibição Todos inclui todas as colunas criadas pelo usuário e definidas pelo sistema. É
possível ver quais colunas estão incluídas na tela a seguir.
A exibição padrão é o que você verá ao examinar a lista online em qualquer exibição
definida como Padrão nas configurações. Se você editar essa exibição para adicionar ou
remover colunas criadas pelo usuário ou definidas pelo sistema, ou ao criar uma nova
exibição e definindo-o como padrão, essas alterações serão propagadas por meio do
conector.
7 Observação
Se você definir o modo de exibição padrão em seu site do SharePoint como modo
de exibição Calendário ou Quadro , o SharePoint retornará apenas as colunas
mostradas no modo de exibição selecionado. Nesse cenário, o Power BI não
recuperará todas as colunas na lista, mesmo que você escolha a opção Todos . Isso
ocorre por design.
Solução de problemas
A API de back-end do SharePoint usa a hora UTC e envia esse horário UTC diretamente
para o Power BI. O Power BI não converte esse horário UTC, mas o relata ao usuário.
Para obter a hora local, o usuário deve fazer a mesma conversão que o cliente do
SharePoint faz. A seguir, há um exemplo das operações de coluna que fariam isso:
O conector da lista do SharePoint Online v2.0 usa uma API diferente do conector v1.0 e
está sujeito a um máximo de 12 operações de junção por consulta, conforme a
Documentação do SharePoint Online em Limite de pesquisa de exibição da lista. Esse
problema se manifestará nos erros das consultas do SharePoint quando mais de 12
colunas forem acessadas simultaneamente em uma lista do SharePoint. No entanto,
você pode contornar essa situação criando uma exibição padrão com menos de 12
colunas de pesquisa.
7 Observação
Resumo
Item Descrição
Conectar ao SingleStore
Para conectar o Microsoft Power BI Desktop ao banco de dados ou ao Serviço
gerenciado do SingleStore:
7 Observação
7 Observação
7 Observação
Qualquer usuário que crie um relatório SQL personalizado deve ter acesso de
somente leitura aos bancos de dados do SingleStore.
Para criar um novo relatório SQL personalizado:
Envie a consulta.
7 Observação
Modificar as credenciais
Para modificar as credenciais usadas para se conectar ao SingleStore:
7 Observação
Resumo
Item Descrição
Pré-requisitos
Para começar, confirme se você configurou corretamente a URL da API do provedor de
serviços. O processo exato dependerá do provedor de serviços.
Instruções de conexão
Para se conectar aos dados do Serviço Web do SDMX:
1. Selecione Obter Dados na faixa de opções Início no Power BI Desktop. Selecione
Todas nas categorias à esquerda e selecione SIS-CC SDMX. Depois, selecione
Conectar.
2. Preencha os parâmetros:
a. Na URL da consulta de dados, insira uma URL de consulta de dados REST do
SDMX (o serviço Web deve dar suporte ao formato SDMX-CSV).
b. No Formato de exibição, selecione uma das opções:
Limitações e problemas
Esta versão do conector não dá suporte à importação de formatos de dados SDMX-ML
ou SDMX-JSON.
Próximas etapas
Se você quiser enviar uma solicitação de recurso ou contribuir com o projeto de código
aberto, acesse o site de projeto do Gitlab .
Smartsheet
Artigo • 05/10/2023
Resumo
Item Descrição
7 Observação
Alguns recursos podem estar presentes em um produto, mas não em outros devido
a cronogramas de implantação e funcionalidades específicas do host.
Limitações e problemas
Resumo
Item Descrição
7 Observação
Alguns recursos podem estar presentes em um produto, mas não em outros devido
a cronogramas de implantação e funcionalidades específicas do host.
4. Selecione OK.
5. Para entrar no seu depósito de computação Snowflake, insira seu nome de usuário
e senha e selecione Conectar.
7 Observação
7 Observação
O SSO (logon único) do Azure Active Directory (Azure AD) dá suporte apenas
ao DirectQuery.
Conectar-se a um banco de dados Snowflake
do Power Query Online
Para fazer a conexão, execute as seguintes etapas:
3. Insira os valores que você deseja usar nas opções avançadas. Se houver opções
avançadas não representadas na interface do usuário, você poderá editá-las no
Editor avançado no Power Query posteriormente.
4. Insira suas credenciais de conexão, selecione ou crie uma nova conexão, qual
gateway você gostaria de usar e um nome de usuário e senha.
A tabela a seguir lista todas as opções avançadas que você pode definir no Power
Query.
Nome da função Especifica a função que o relatório usa pelo driver. Essa função deve estar
disponível para o usuário, caso contrário, nenhuma função será definida.
Adicionar colunas de Se marcada, inclui colunas que podem ter relações com outras tabelas. Se
relação essa caixa estiver desmarcada, você não verá essas colunas.
Tempo limite da Especifica quanto tempo aguardar uma resposta ao interagir com o
conexão em serviço Snowflake antes de retornar um erro. O padrão é 0 (sem tempo
segundos limite).
Tempo limite do Especifica quanto tempo aguardar a conclusão de uma consulta antes de
comando em retornar um erro. O padrão é 0 (sem tempo limite).
segundos
Banco de dados Especifica um banco de dados específico no depósito. Esta opção está
disponível somente no Power Query Desktop.
Instrução SQL Para obter mais informações, acesse Importar dados de um banco de
dados usando a consulta natuva de banco de dados. Esta opção está
disponível somente no Power Query Desktop.
Depois de selecionar as opções avançadas necessárias, selecione OK no Power Query
Desktop ou Avançar no Power Query Online para se conectar ao banco de dados
Snowflake.
Informações adicionais
Conectar-se ao Snowflake no serviço do Power BI
Socialbakers (Beta)
Artigo • 05/10/2023
7 Observação
Resumo
Item Descrição
7 Observação
Alguns recursos podem estar presentes em um produto, mas não em outros devido
a cronogramas de implantação e funcionalidades específicas do host.
Pré-requisitos
Para usar o conector Socialbakers (Emplifi), você deve ter credenciais do Socialbakers
(Emplifi) (Token e Segredo). Entre em contato com a equipe de suporte da Emplifi para
obter o seu, caso não tenha. As credenciais permitem que o usuário obtenha os dados e
as métricas dos perfis que o usuário adicionou à plataforma Emplifi.
Autenticação
Quando o conector é iniciado pela primeira vez, a autenticação é necessária. Insira seu
Token e Segredo na nova janela modal. As credenciais podem ser fornecidas a você pela
equipe de Suporte da Emplifi.
Exemplo de uso
1. Escolha a fonte de dados com a qual você quer trabalhar marcando a caixa de
seleção.
7 Observação
Nem todos os parâmetros são explicitamente obrigatórios, mas podem ser
necessários para seleções específicas. Por exemplo, a seleção de perfil é
opcional, mas você ainda precisa selecionar alguns perfis para obter dados.
7 Observação
O Facebook Ads é uma fonte de dados um pouco mais específica que difere das outras.
Todas as outras fontes (por exemplo, Métricas de Postagem Agregadas, Métricas de
Postagem, Métricas de Perfil) seguem o mesmo processo descrito acima. O Facebook
Ads tem uma etapa extra a ser executada antes que os parâmetros sejam definidos.
Quando selecionado, o Facebook Ads exibe primeiro uma lista dos últimos 12 meses.
Ao selecionar os meses específicos, você está restringindo todas as suas Contas do
Facebook Ads àquelas que estavam ativas no período selecionado.
Você pode selecionar as Contas de anúncios específicas na seção Parâmetros no
parâmetro "Contas", juntamente com a seleção de Campanhas.
Solução de problemas
Se ocorrer algum erro, verifique a documentação e verifique se você está seguindo as
diretrizes da API.
Instruções adicionais
É possível limpar a seleção de parâmetros escolhendo Limpar.
Se Transformar Dados for escolhido, você poderá ver toda a documentação da
função a partir da qual é possível obter mais compreensão do que está
acontecendo por trás da tela.
SoftOne BI (beta)
Artigo • 14/07/2023
7 Observação
Resumo
Item Descrição
Pré-requisitos
Você precisará do produto Soft1 ERP/CRM ou Atlantis ERP instalado com um módulo de
conector SoftOne BI licenciado. Uma conta da Web deve ser configurada no aplicativo
com acesso ao serviço do Conector SoftOne BI. As informações dessa conta e o número
de série da instalação serão validados durante a autenticação pelo conector SoftOne BI.
Instruções de conexão
A SoftOne fornece muitos modelos como arquivos de modelo do Power BI (.pbit) que
você pode usar ou personalizar, o que fornecerá um início para o seu projeto de BI. Por
exemplo, Vendas & Coleções e Finanças.
Para se conectar ao Power BI Desktop usando um novo relatório, siga as etapas abaixo.
Se você estiver se conectando por meio de um relatório criado usando um dos modelos
do SoftOne BI, confira Usar um modelo fornecido mais adiante neste artigo.
1. Selecione Obter Dados > Mais... > Serviços Online no Power BI Desktop e
pesquise SoftOne BI. Selecione Conectar.
2. Selecione Entrar. Um formulário de autenticação será exibido.
7 Observação
4. Depois que a atualização for concluída, você estará pronto para começar a
personalizar o relatório ou publicá-lo como está no Serviço do Power BI.
) Importante
Esse conector permite importar registros de incidentes do SolarWinds Service Desk para
o Microsoft Power BI. Você pode importar registros dos últimos dois anos. Você terá
dados brutos sobre os tópicos mais relevantes para sua organização, que poderão ser
analisados e revisados exibindo-os em vários formatos, como tabelas, gráficos e tabelas.
7 Observação
Resumo
Item Descrição
Tipos de autenticação compatíveis SolarWinds Service Desk JSON Web Token (JWT)
Pré-requisitos
Antes de usar esse conector para obter dados do SolarWinds Service Desk, você deve
ter um usuário do SolarWinds Service Desk que tenha configurado a autenticação de
token para integração de API .
2. Entre com o token da Web JSON gerado conforme descrito nos pré-requisitos e
selecione Conectar para verificar seu acesso ao SolarWinds Service Desk.
3. Na caixa de diálogo Navegador, selecione a tabela que deseja importar. Em
seguida, você pode carregar ou transformar os dados.
Limitações e problemas
Os usuários devem estar cientes das seguintes limitações e problemas associados ao
acesso ao SolarWinds Service Desk:
Você pode importar apenas uma vez por dia; ou seja, uma vez a cada 24 horas. Se
você tentar atualizar antes do ciclo de 24 horas permitido, receberá uma
mensagem de erro.
Não há limite para o número de usuários que podem extrair dados, mas cada
usuário pode atualizar apenas uma vez a cada 24 horas.
Resumo
Item Descrição
Produtos Excel
Power BI (Conjuntos de dados)
Power Apps (Fluxos de dados)
Analysis Services
7 Observação
Alguns recursos podem estar presentes em um produto, mas não em outros devido
a cronogramas de implantação e funcionalidades específicas do host.
Pré-requisitos
O Analysis Services deve ser instalado junto com o SQL Server. Confira informações
sobre como instalar o Analysis Services no SQL Server em Instalar o SQL Server Analysis
Services. Este artigo do conector pressupõe que você já tenha instalado o Analysis
Services no SQL Server e tenha um banco de dados existente na instância do servidor.
7 Observação
3. Selecione OK.
4. Se você estiver se conectando a esse banco de dados pela primeira vez, selecione
o tipo de autenticação e insira suas credenciais. Depois, selecione Conectar.
5. No Navegador, selecione as informações desejadas do banco de dados e
selecione Carregar para carregar os dados ou Transformar dados para continuar
transformando os dados no editor do Power Query.
4. Se você estiver se conectando a esse banco de dados pela primeira vez, selecione
o tipo de autenticação e insira suas credenciais.
Opção Descrição
avançada
Instrução MDX Opcionalmente, fornece uma instrução MDX ou DAX específica para o servidor
ou DAX de banco de dados do SQL Server Analysis Services executar.
Confira também
Conectar dados tabulares do Analysis Services no Power BI Desktop
Conectar-se a modelos multidimensionais do SSAS no Power BI Desktop
Conectar-se a conjuntos de dados no serviço do Power BI no Power BI Desktop
SQL Server
Artigo • 05/10/2023
Resumo
Item Descrição
Produtos Excel
Power BI (Conjuntos de dados)
Power BI (Fluxos de dados)
Malha (fluxo de dados Gen2)
Power Apps (Fluxos de dados)
Customer Insights do Dynamics 365
Analysis Services
7 Observação
Alguns recursos podem estar presentes em um produto, mas não em outros devido
a cronogramas de implantação e funcionalidades específicas do host.
Pré-requisitos
Por padrão, o Power BI instala um driver OLE DB para SQL Server. No entanto, para um
desempenho ideal, recomendamos que o cliente instale o SQL Server Native Client
antes de usar o conector Azure Synapse Analytics (SQL DW). O SQL Server Native Client
11.0 e o SQL Server Native Client 10.0 têm suporte para a versão mais recente.
4. Selecione OK.
5. Se essa for a primeira vez que você está se conectando a esse banco de dados,
selecione o tipo de autenticação, insira suas credenciais e selecione o nível ao qual
deseja aplicar as configurações de autenticação. Depois, selecione Conectar.
7 Observação
Tempo limite do Se a sua conexão durar mais de 10 minutos (o tempo limite padrão), você
comando em poderá inserir outro valor em minutos para manter a conexão aberta por
minutos mais tempo. Esta opção está disponível somente no Power Query Desktop.
Instrução SQL Para obter mais informações, acesse Importar dados de um banco de
dados usando a consulta natuva de banco de dados.
Adicionar colunas Se marcada, inclui colunas que podem ter relações com outras tabelas. Se
de relação essa caixa estiver desmarcada, você não verá essas colunas.
Habilitar o suporte Se marcada, quando um nó no SQL Server do SQL do Azure não estiver
de failover do SQL disponível, o Power Query passará desse nó para outro quando ocorrer
Server failover. Se estiver limpo, nenhum failover ocorrerá.
Erros de certificado
Ao usar o conector de banco de dados do SQL Server, se a criptografia estiver
desativada e o certificado do SQL Server não for confiável no cliente (Power BI Desktop
ou gateway de dados local), você verá o seguinte erro.
A connection was successfully established with the server, but then an error
occurred during the login process. (provider: SSL Provider, error: 0 - The
Próximas etapas
Otimizar o Power Query ao expandir as colunas da tabela
Stripe (preterido)
Artigo • 05/10/2023
Resumo
Item Descrição
Produtos -
Reprovação
Esse conector foi descontinuado e em breve não será mais suporte. Recomendamos que
faça a transição das conexões existentes usando esse conector. Não use esse conector
para novas conexões.
SumTotal
Artigo • 05/10/2023
7 Observação
Resumo
Item Descrição
Pré-requisitos
Você deve ter um ambiente hospedado na SumTotal com permissões padrão para
acessar o portal e permissões de leitura para acessar os dados nas tabelas.
URL. Mantenha essa URL em algum lugar acessível para que você possa usá-lo mais
tarde.
7 Observação
7 Observação
Você verá um erro de script, que carrega scripts JS/CSS que o formulário de
login usa. Selecione Sim.
Se esta for a primeira vez que você está se conectando a este site, selecione Entrar
e insira suas credenciais. Depois, selecione Conectar.
Resumo
Item Descrição
7 Observação
Alguns recursos podem estar presentes em um produto, mas não em outros devido
a cronogramas de implantação e funcionalidades específicas do host.
Pré-requisitos
Antes de se conectar a um banco de dados Sybase, você precisa do driver SAP SQL
Anywhere instalado no computador. Selecione o driver correspondente à sua
instalação do Excel (32 ou 64 bits).
3. Selecione OK.
4. Se for a primeira vez que você está se conectando a este servidor e banco de
dados Sybase, selecione o tipo de autenticação que deseja usar, insira as
credenciais e selecione Conectar. Para obter mais informações sobre como usar e
gerenciar a autenticação, acesse Autenticação com uma fonte de dados.
5. No Navegador, selecione os dados necessários e selecione Carregar para carregar
os dados ou Transformar dados para transformar os dados.
7 Observação
4. Se for a primeira vez que você está se conectando a este servidor e banco de
dados Sybase, selecione o tipo de credenciais para a conexão em Tipo de
autenticação. Escolha Básico se você pretende usar uma conta criada no banco de
dados Sybase em vez da autenticação do Windows. Para obter mais informações
sobre como usar e gerenciar a autenticação, acesse Autenticação com uma fonte
de dados.
5. Insira suas credenciais.
A tabela a seguir lista todas as opções avançadas que você pode definir no Power
Query.
Tempo limite do Se a sua conexão durar mais de 10 minutos (o tempo limite padrão), você
comando em poderá inserir outro valor em minutos para manter a conexão aberta por
minutos mais tempo.
Opção avançada Descrição
Instrução SQL Para obter mais informações, acesse Importar dados de um banco de dados
usando a consulta natuva de banco de dados.
Adicionar colunas Se marcada, inclui colunas que podem ter relações com outras tabelas. Se
de relação essa caixa estiver desmarcada, você não verá essas colunas.
Resumo
Item Descrição
Produtos Excel
Power BI (Conjuntos de dados)
Power BI (Fluxos de dados)
Malha (fluxo de dados Gen2)
Power Apps (Fluxos de dados)
Customer Insights do Dynamics 365
Analysis Services
7 Observação
Alguns recursos podem estar presentes em um produto, mas não em outros devido
a cronogramas de implantação e funcionalidades específicas do host.
Pré-requisitos
Antes de se conectar a um banco de dados Teradata, você precisa do .NET Data Provider
for Teradata instalado no computador.
4. Selecione OK.
5. Se for a primeira vez que você está se conectando a este banco de dados Teradata,
selecione o tipo de autenticação que deseja usar, insira as credenciais e selecione
Conectar. Para obter mais informações sobre como usar e gerenciar a
autenticação, acesse Autenticação com uma fonte de dados.
6. No Navegador, selecione os dados necessários e selecione Carregar para carregar
os dados ou Transformar dados para transformar os dados.
7 Observação
4. Se for a primeira vez que você está se conectando a este banco de dados Teradata,
selecione o tipo de credenciais para a conexão em Tipo de autenticação. Escolha
Básico se você pretende usar uma conta criada no banco de dados Teradata em
vez da autenticação do Windows. Para obter mais informações sobre como usar e
gerenciar a autenticação, acesse Autenticação com uma fonte de dados.
A tabela a seguir lista todas as opções avançadas que você pode definir no Power
Query.
Tempo limite do Se a sua conexão durar mais de 10 minutos (o tempo limite padrão), você
comando em poderá inserir outro valor em minutos para manter a conexão aberta por
minutos mais tempo.
Instrução SQL Para obter mais informações, acesse Importar dados de um banco de dados
usando a consulta natuva de banco de dados.
Adicionar colunas Se marcada, inclui colunas que podem ter relações com outras tabelas. Se
de relação essa caixa estiver desmarcada, você não verá essas colunas.
Resumo
Item Descrição
Produtos Excel
Power BI (Conjuntos de dados)
Power BI (Fluxos de dados)
Malha (Dataflow Gen2)
Power Apps (Fluxos de dados)
Customer Insights do Dynamics 365
Analysis Services
7 Observação
Alguns recursos podem estar presentes em um produto, mas não em outros devido
a cronogramas de implantação e funcionalidades específicas do host.
5. Selecione Avançar.
Carregar na Web
Para carregar um arquivo de texto ou CSV na Web, selecione o Conector Web, insira o
endereço Web do arquivo e siga os prompts de credenciais.
Delimitadores de texto/CSV
O Power Query tratará os CSVs como arquivos estruturados usando uma vírgula como
delimitador— um caso especial de um arquivo de texto. Se você escolher um arquivo de
texto, o Power Query tentará determinar automaticamente se ele tem valores separados
por delimitador e qual é esse delimitador. Se for possível inferir um delimitador, o Power
Query o tratará automaticamente como uma fonte de dados estruturada.
Hello world.
This is sample data.
Ao carregar o arquivo, será exibida uma tela de navegação que carrega cada uma
dessas linhas em sua própria linha.
Há apenas uma coisa que você pode configurar nesta caixa de diálogo, que é a seleção
de lista suspensa Origem do Arquivo. Essa lista suspensa permite selecionar qual
conjunto de caracteres foi usado para gerar o arquivo. No momento, o conjunto de
caracteres não é inferido e o UTF-8 só será inferido se começar com BOM UTF-8.
CSV
É possível encontrar um arquivo CSV de exemplo aqui .
A lista suspensa final permite que você selecione como deseja lidar com a detecção de
tipo de dados. Isso pode ser feito com base nas primeiras 200 linhas, em todo o
conjunto de dados, ou você pode optar por não fazer a detecção automática do tipo de
dados e, em vez disso, deixar todas as colunas padrão como 'Texto'. Aviso: se você fizer
isso em todo o conjunto de dados, pode tornar mais lento o carregamento inicial dos
dados no editor.
Como a inferência pode estar incorreta, vale a pena verificar duas vezes as
configurações, antes do carregamento.
Texto Estruturado
Quando for possível detectar a estrutura para o arquivo de texto, o Power Query tratará
o arquivo de texto como arquivo de valor separado do delimitador e fornecerá as
mesmas opções disponíveis ao abrir um CSV, que é basicamente apenas um arquivo
com uma extensão que indica o tipo de delimitador.
Por exemplo, se você salvar o exemplo a seguir como um arquivo de texto, ele será lido
como tendo um delimitador de guia em vez de texto não estruturado.
Isso pode ser usado para qualquer tipo de outro arquivo baseado em delimitador.
Edição da Origem
Ao editar a etapa de origem, será exibida uma caixa de diálogo um pouco diferente da
que é fornecida ao carregar inicialmente. Dependendo de como você está tratando o
arquivo (ou seja, texto ou CSV), será exibida uma tela com diversos menus suspensos.
A lista suspensa Quebras de linha permitirá que você selecione se deseja aplicar
quebras de linha entre aspas.
Por exemplo, se você editar o exemplo "estruturado" fornecido acima, poderá adicionar
uma quebra de linha.
Se a opção Quebras de linha estiver definidas como Ignorar quebras de linha entre
aspas, ela será carregada como se não houvesse quebra de linha (com um espaço
adicional).
Se a opção Quebras de linha estiver definida como Aplicar todas as quebras de linha,
ela carregará uma linha adicional e o conteúdo após a quebra de linha será o único
conteúdo nessa linha (a saída exata pode depender da estrutura do conteúdo do
arquivo).
A lista suspensa Abrir arquivo como permitirá que você edite como deseja carregar o
arquivo – importante para a solução de problemas. Para arquivos estruturados que não
são tecnicamente CSVs (como um arquivo de valor separado por tabulação salvo como
um arquivo de texto), a opção Abrir arquivo como ainda deve ser definida como CSV.
Essa configuração também determina quais listas suspensas estão disponíveis no
restante da caixa de diálogo.
Ao selecionar esse botão, você acessará a página Extrair Tabela Usando Exemplos.
Nessa página, você especifica valores de saída de exemplo para os dados que deseja
extrair do arquivo de texto/CSV. Depois de inserir a primeira célula da coluna, as outras
células da coluna serão preenchidas. Para que os dados sejam extraídos corretamente,
talvez seja necessário inserir mais de uma célula na coluna. Se algumas células na coluna
estiverem incorretas, você poderá corrigir a primeira célula incorreta e os dados serão
extraídos novamente. Confira os dados nas primeiras células para verificar se os dados
foram extraídos com êxito.
7 Observação
Solução de problemas
Carregamento de Arquivos na Web
Se você estiver solicitando arquivos de texto/CSV na Web e também promovendo
cabeçalhos, e estiver recuperando arquivos suficientes com os quais precisa se
preocupar em relação à possível limitação, encapsule a chamada Web.Contents com
Binary.Buffer() . Nesse caso, executar o buffer do arquivo antes de promover
cabeçalhos fará com que o arquivo seja solicitado apenas uma vez.
O exemplo a seguir mostra essa solução alternativa. Esse buffer precisa ser feito antes
que a tabela resultante seja passada para Table.PromoteHeaders.
Original:
Power Query M
Csv.Document(Web.Contents("https://.../MyFile.csv"))
Com Binary.Buffer :
Power Query M
Csv.Document(Binary.Buffer(Web.Contents("https://.../MyFile.csv")))
Com Table.Buffer :
Power Query M
Table.Buffer(Csv.Document(Web.Contents("https://.../MyFile.csv")))
TIBCO(R) Data Virtualization
Artigo • 14/07/2023
7 Observação
Resumo
Item Descrição
Pré-requisitos
Para acessar o site TIBCO eDelivery, você deve ter comprado o software da TIBCO. Não
há nenhuma licença da TIBCO necessária para o software TDV (TIBCO) Data
Virtualization – um cliente da TIBCO só precisa ter um contrato válido em vigor. Se você
não tiver acesso, entre em contato com o administrador da TIBCO em sua organização.
O Conector do Power BI para o TIBCO(R) Data Virtualization deve primeiro ser baixado
do https://edelivery.tibco.com e instalado no computador que executa o Power BI
Desktop. O site eDelivery baixa um arquivo zip (por exemplo,
TIB_tdv_drivers_<VERSION>_all.zip*.zip where <VERSION>=TDV Version) que contém
um programa instalador que instala todos os drivers de cliente do TDV, incluindo o
Conector do Power BI.
Depois que o conector for instalado, configure um DSN (nome da fonte de dados) para
especificar as propriedades da conexão necessárias para se conectar ao servidor do
TIBCO(R) Data Virtualization.
7 Observação
4. Se essa for a primeira vez que você está se conectando a esse banco de dados,
selecione o tipo de autenticação. Se aplicável, insira as credenciais necessárias.
Depois, selecione Conectar.
A tabela a seguir lista todas as opções avançadas que você pode definir no Power Query
Desktop.
Opção avançada Descrição
Instrução SQL Para obter mais informações, acesse Importar dados de um banco de
dados usando a consulta nativa de banco de dados.
2. Adicione uma nova fonte de dados no cluster do gateway que deseja usar.
5. Selecione a opção Usar SSO via Kerberos para consultas DirectQuery ou Usar
SSO via Kerberos para consultas DirectQuery e Import.
Para mais informações: Configurar SSO baseado em Kerberos no serviço do Power BI
para fontes de dados locais
Twilio (descontinuado) (beta)
Artigo • 05/10/2023
Resumo
Item Descrição
Produtos -
Reprovação
7 Observação
7 Observação
Resumo
Item Descrição
Pré-requisitos
Você deve ter uma instância do Usercube com a opção PowerBI.
7 Observação
Resumo
Item Descrição
Pré-requisitos
Antes de entrar no Vessel Insight, você deve ter uma conta da organização (nome de
usuário/senha) conectada a um locatário.
5. Na janela exibida, forneça suas credenciais para entrar na sua conta do Vessel
Insight.
Se você inseriu um endereço de email e uma senha, selecione Continuar.
Depois que a conexão for estabelecida, você poderá visualizar e selecionar dados na
caixa de diálogo Navegador para criar uma única saída tabular.
Você pode selecionar as seguintes opções no navegador:
Se você não inserir parâmetros para o Vessel Insight Data 2.0, obterá o valor mais
recente por padrão.
Para o Voyage, você precisa inserir IMOs para os quais deseja buscar dados.
Você pode Carregar os dados de série temporal selecionados, que traz a tabela para
cada marca de série temporal selecionada no Power BI Desktop, ou pode selecionar
Transformar Dados para editar a consulta, que abrirá o editor do Power Query. Em
seguida, é possível filtrar e refinar o conjunto de dados que deseja usar e carregar esse
conjunto refinado de dados no Power BI Desktop.
Intervalo (opcional): como você deseja que os dados sejam agregados quando
exibidos (1s, 5s, =30s, 1m, 1h, >1d).
Tempo (opcional): defina o tipo de filtro de tempo se quiser filtrar em tempo.
Mais recente: obtenha somente o valor mais recente. Retorna um valor.
Período: filtre o intervalo de tempo. Requer a definição das datas de Início e
Término descritas abaixo.
Personalizado: consulta personalizada para filtrar o número de valores a serem
retornados.
Início (Hora: Período), por exemplo, 2019-10-08T00:00:00Z (opcional): filtre o
intervalo inserindo a data e a hora de início aqui. É possível definir ontem e hoje.
Requer a configuração Hora: Período.
Término (Hora: Período), por exemplo, 2019-10-08T01:00:00Z (opcional): filtre o
intervalo inserindo a data e a hora de término aqui. É possível definir hoje e agora.
Requer a configuração Hora: Período.
Personalizado (Tempo: Personalizado), por exemplo, |> takebefore now 5
(opcional): adicione uma consulta personalizada para filtrar o número de valores.
|> takebefore now 5 significa tomar cinco valores antes do período de agora.
Requer Tempo: Personalizado.
Se você estiver importando várias tags, pode ser complicado inserir os parâmetros
manualmente para cada tag. Neste caso, recomendamos que você use os parâmetros
do Power Query para as datas de Início e Término no Power Query Editor. Para obter
mais informações: Parâmetros do Power Query
Viagem
Ao importar dados de viagem pelo nó do Voyage, é possível limitar a quantidade de
dados para a tabela Histórico e Histórico de Localização definindo um conjunto de
parâmetros de entrada opcional.
Limitações e problemas
Você deve estar ciente das seguintes limitações e problemas associados ao acesso de
dados do Vessel Insight.
Cada tag de série temporal com valores associados é gerada em uma tabela
separada no Power BI. Se for necessário combinar tags e valores em uma tabela, as
tags e seus valores necessitarão ser mesclados no editor do Power Query ou com
consultas TQL.
Para obter mais diretrizes sobre como acessar os dados do Vessel Insight, acesse O Guia
de Introdução .
Conteúdo recomendado
As informações sobre o Vessel Insight a seguir poderão ser úteis:
Resumo
ノ Expandir a tabela
Item Descrição
Pré-requisitos
Você já deve ter um Warehouse existente - Criar um Warehouse no Microsoft Fabric.
7 Observação
3. Selecione os dados com os quais você deseja criar elementos visuais no painel
Dados no Power BI Desktop.
Resumo
Item Descrição
Produtos Excel
Power BI (Conjuntos de dados)
Power BI (Fluxos de dados)
Malha (Dataflow Gen2)
Power Apps (Fluxos de dados)
Customer Insights do Dynamics 365
Web.BrowserContents
Anônima
Windows (recurso de visualização)
Básico (recurso de visualização)
API Web (recurso de versão prévia)
Web.Page
Anônima
Windows (somente credenciais do usuário atual)
API Web
7 Observação
Alguns recursos podem estar presentes em um produto, mas não em outros devido
a cronogramas de implantação e funcionalidades específicas do host.
Pré-requisitos
Web.Page requer a Internet Explorer 10.
1. Selecione Obter Dados > Web no Power BI ou na Web na faixa de Opções Dados
no Excel.
Se você precisar construir uma URL mais avançada antes de se conectar ao site, vá
para Carregar dados da Web usando uma URL avançada.
3. Selecione o método de autenticação usado para este site. Por exemplo, selecione
Anônimo. Em seguida, selecione o nível ao qual você deseja aplicar essas
configurações, nesse caso, https://en.wikipedia.org/ Depois, selecione
Conectar.
API Web: selecione este método se o recurso da Web ao qual você está se
conecta usa uma chave de API para fins de autenticação.
7 Observação
7 Observação
Na maioria dos casos, você deve selecionar o conector de página da Web. Por
motivos de segurança, você precisará usar um gateway de dados local com esse
conector. O conector da Página da Web requer um gateway porque as páginas
HTML são recuperadas usando um controle de navegador, que envolve possíveis
preocupações de segurança. Essa preocupação não é um problema com o
conector da API Web, pois ele não usa um controle de navegador.
Em alguns casos, talvez você queira usar uma URL que aponte para uma API ou
um arquivo armazenado na Web. Nesses cenários, o conector da API Web (ou
conectores específicos do arquivo) permitiria que você avançasse sem usar um
gateway de dados local.
Observe também que, se a URL apontar para um arquivo, você deverá usar o
conector de arquivo específico em vez do conector de página da Web.
tes .
Dependendo de quanto tempo a solicitação POST leva para processar dados, talvez seja
necessário prolongar o tempo em que a solicitação continua conectada ao site. O
tempo limite padrão para POST e GET é de 100 segundos. Se esse tempo limite for
muito curto, você poderá usar o tempo limite opcional do Comando em minutos para
estender o número de minutos que você permanece conectado.
Você também pode adicionar cabeçalhos de solicitação específicos ao POST que você
envia para o site usando a caixa suspensa de parâmetros de cabeçalho de solicitação
HTTP opcional. A tabela a seguir descreve os cabeçalhos da solicitação que você pode
selecionar.
Cabeçalho da Descrição
solicitação
Idioma aceito Indica o conjunto de idiomas naturais que são preferenciais na resposta.
Referer Especifica uma referência de URI para o recurso do qual o URI de destino foi
obtido.
Por exemplo, você pode usar as seguintes etapas para importar um arquivo JSON no
site https://contoso.com/products :
http://contoso.com/products/Example_JSON.json
3. Selecione OK.
4. Se essa for a primeira vez que você estiver visitando essa URL, selecione Anônimo
como o tipo de autenticação e Conectar.
5. O Editor do Power Query agora abrirá com os dados importados do arquivo JSON.
Selecione a guia Exibir no Editor do Power Query e selecione Barra de Fórmulas
para ativar a barra de fórmulas no editor.
Como você pode ver, o conector da Web retorna o conteúdo da Web da URL que
você forneceu e, em seguida, encapsula automaticamente o conteúdo da Web no
tipo de documento apropriado especificado pela URL ( Json.Document neste
exemplo).
Confira também
Extrair dados de uma página da Web por meio de exemplos
Solução de problemas do conector Web do Power Query
Obter dados de páginas da Web
fornecendo exemplos
Artigo • 23/03/2023
Obter dados de uma página da Web permite que os usuários extraiam facilmente dados
de páginas da Web. No entanto, geralmente, os dados em páginas da Web não estão
em tabelas organizadas que são fáceis de serem extraídas. A obtenção de dados dessas
páginas pode ser um verdadeiro desafio, mesmo que os dados estejam estruturados e
consistentes.
Mas há uma solução. Com o recurso Obter Dados da Web por meio de exemplos, você
pode, basicamente, mostrar ao Power Query quais dados deseja extrair ao fornecer um
ou mais exemplos na caixa de diálogo do conector. O Power Query coleta outros dados
na página que correspondem aos exemplos. Com essa solução, você pode extrair todos
os tipos de dados de páginas da Web, incluindo dados encontrados em tabelas e outros
dados fora delas.
7 Observação
Em Da Web, insira a URL da página da Web da qual você deseja extrair dados. Neste
artigo, usaremos a página da Web da Microsoft Store e mostraremos como esse
conector funciona.
Se quiser acompanhar, você poderá usar a URL da Microsoft Store que usamos neste
artigo:
https://www.microsoft.com/store/top-paid/games/xbox?category=classics
Quando você selecionar OK, será levado à caixa de diálogo Navegador, em que
qualquer tabela detectada automaticamente da página da Web será apresentada. No
caso mostrado na imagem abaixo, nenhuma tabela foi encontrada. Selecione Adicionar
tabela usando exemplos para fornecer exemplos.
Adicionar tabela usando exemplos apresenta uma janela interativa em que você pode
visualizar o conteúdo da página da Web. Insira valores de exemplo dos dados que
deseja extrair.
Quando estiver satisfeito com os dados extraídos da página da Web, selecione OK para
acessar o Editor do Power Query. Você pode aplicar mais transformações ou formatar os
dados, por exemplo, combinando esses dados com outras fontes de dados.
Confira também
Adicionar uma coluna dos exemplos
Formatar e combinar dados
Obtendo dados
Solução de problemas do conector Web do Power Query
Solução de problemas do conector Web
Artigo • 05/10/2023
Web.Contents é usado para recuperar conteúdo da Web que não precisa ser
acessado por um navegador, como arquivos CSV, resultados da API JSON e assim
por diante.
Ele é compatível com a mais ampla variedade de opções de autenticação.
Ele pode ser usado em ambientes de nuvem, como o Power Query Online, sem um
gateway.
Web.Page
Web.Page é uma função herdada para recuperar conteúdo da Web que precisa ser
Web.BrowserContents
Conteúdo do x x
navegador (HTML)
Requer um gateway em N S S
hosts de nuvem
Como você pode saber se uma página é dinâmica? Normalmente é bem simples. Abra a
página em um navegador e veja-a carregar. Se o conteúdo aparecer imediatamente,
será uma página HTML regular. Se ele aparecer dinamicamente ou mudar ao longo do
tempo, será uma página dinâmica.
Se você estiver usando Web.Page e receber um erro Please specify how to connect ,
verifique se tem o Internet Explorer 10 ou posterior instalado na máquina que hospeda
o gateway de dados local.
set PQ_WebView2Connector=true
No Power BI Desktop, você pode usar a função mais antiga Web.Page desmarcando a
opção Habilitar inferência de tabela da Web:
7 Observação
Você também pode obter uma cópia de uma consulta Web.Page do Excel. Para copiar o
código do Excel:
Você também pode inserir manualmente o código a seguir em uma consulta em branco.
Insira o endereço da página da Web que deseja carregar.
powerqury-m
let
Source = Web.Page(Web.Contents("<your address here>")),
Navigation = Source{0}[Data]
in
Navigation
) Importante
"Não foi possível conectar porque esse tipo de credencial não é compatível com esse
recurso. Escolha outro tipo de credencial."
Não é possível alternar o Power Query para usar HTTP 1.0. O Power Query sempre envia
um Expect:100-continue quando há um corpo para evitar passar um conteúdo
possivelmente grande quando a chamada inicial pode falhar (por exemplo, devido à
falta de permissões). Atualmente, esse comportamento não pode ser alterado.
Confira também
Conector Web do Power Query
Obter dados de páginas da Web fornecendo exemplos
Workforce Dimensions(Beta) (preterido)
Artigo • 05/10/2023
Resumo
Item Descrição
Produtos -
Reprovação
7 Observação
Esse conector foi preterido devido ao fim do suporte para ele. Recomendamos que
os usuários faça a transição das conexões existentes usando esse conector e não
usem esse conector para novas conexões.
XML
Artigo • 05/10/2023
Resumo
Item Descrição
Produtos Excel
Power BI (Conjuntos de dados)
Power BI (Fluxos de dados)
Malha (fluxo de dados Gen2)
Power Apps (Fluxos de dados)
Customer Insights do Dynamics 365
Analysis Services
7 Observação
Alguns recursos podem estar presentes em um produto, mas não em outros devido
a cronogramas de implantação e funcionalidades específicas do host.
1. Selecione a opção XML na seleção Obter Dados. Essa ação iniciará um navegador
de arquivos local e permitirá que você selecione seu arquivo XML.
2. Navegue até o diretório que contém o arquivo XML local que você deseja carregar
e selecione Abrir.
5. Selecione Avançar.
Solução de problemas
Estrutura de Dados
Devido ao fato de que muitos documentos XML têm dados incompletos ou aninhados,
talvez seja necessário fazer a formatação de dados extra para obtê-los no tipo de forma
que torne conveniente fazer análises. Isso vale se você usar a função acessível
Xml.Tables da interface do usuário ou a função Xml.Document . Dependendo de suas
necessidades, você pode achar que precisa fazer mais ou menos modelagem de dados.
XML
<abc>
Hello <i>world</i>
</abc>
Resumo
Item Descrição
Pré-requisitos
Antes de entrar no Zendesk, você deve ter uma conta do Zendesk (nome de
usuário/senha).
3. Insira o local da URL do Zendesk que você deseja acessar e selecione OK.
4. Para entrar na sua conta do Zendesk, selecione Entrar.
5. Na janela do Zendesk exibida, forneça suas credenciais para entrar em sua conta
do Zendesk.
6. Selecione Entrar.
Limitações e problemas
Você deve estar ciente das seguintes limitações e problemas associados ao acesso aos
dados do Zendesk.
Os limites são impostos no início das avaliações de consulta. Depois que uma avaliação
está em andamento, apenas os limites de tempo limite serão impostos.
Tipos de limite
Contagem de avaliação por hora: o número máximo de solicitações de avaliação que
um usuário pode emitir durante qualquer período de 60 minutos
Tempo de avaliação diária: o tempo líquido que um usuário pode gastar avaliando
consultas durante qualquer período de 24 horas
Limites de criação
Os limites de criação são os mesmos em todos os produtos. Durante a criação, as
avaliações de consulta retornam visualizações que podem ser subconjuntos dos dados.
Os dados não são persistidos.
Limites de atualização
Durante a atualização (agendada ou sob demanda), as avaliações de consultas retornam
resultados completos. Normalmente, os dados são persistidos no armazenamento.
Integração do Produto Contagem de Tempo de Avaliações de
avaliação por avaliação diária consulta
hora (nº) (horas) simultânea (#)
Power Query
Por exemplo, se você classificar uma tabela de vendas para que a maior venda de cada
loja seja mostrada primeiro, talvez você espere que fazer uma operação "Remover
duplicatas" retorne apenas a melhor venda de cada repositório. E essa operação pode,
de fato, parecer que funciona. No entanto, esse comportamento não é garantido.
Por exemplo, imagine uma coluna que contém inteiros nas primeiras 200 linhas (como
todos os zeros), mas contém números decimais após a linha 200. Nesse caso, o Power
Query inferirá o tipo de dados da coluna como Número Inteiro (Int64.Type). Essa
inferência resultará no truncamento das partes decimais dos números não inteiros.
Ou imagine uma coluna que contém valores de texto de data nas primeiras 200 linhas e
outros tipos de valores de texto após a linha 200. Nesse caso, o Power Query inferirá o
tipo de dados da coluna como Data. Essa inferência fará com que os valores de texto
que não são datas sejam tratados como erros de conversão de tipo.
Como a detecção de tipo funciona nas primeiras 200 linhas, mas a Criação de Perfil de
Dados pode operar em todo o conjunto de dados, você pode usar a funcionalidade
Criação de Perfil de Dados para obter uma indicação antecipada no Editor de Consultas
sobre os Erros (na detecção de tipo ou em diversos outros motivos), além das N
principais linhas.
Data source error: Unable to read data from the transport connection: An existing
Quer isso seja reproduzido apenas com quaisquer dados ou apenas com dados maiores,
é provável que haja um tempo limite de rede em algum lugar da rota. Se for apenas
com dados maiores, os clientes devem consultar o proprietário da fonte de dados, para
ver se as APIs permitem a paginação, para que possam dividir as solicitações em partes
menores. Caso contrário, maneiras alternativas de extrair os dados da API (de acordo
com as melhores práticas de fonte de dados) devem ser seguidas.
"TLS_RSA_WITH_AES_256_GCM_SHA384”
"TLS_RSA_WITH_AES_128_GCM_SHA256”
"TLS_RSA_WITH_AES_256_CBC_SHA256”
"TLS_RSA_WITH_AES_128_CBC_SHA256”
"TLS_ECDHE_ECDSA_WITH_AES_128_GCM_SHA256"
"TLS_ECDHE_ECDSA_WITH_AES_256_GCM_SHA384"
"TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256"
"TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384"
"TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA256"
"TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA384"
"TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256"
"TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384"
Esses são os pacotes de criptografia com os quais o servidor a que você se conecta deve
ser compatível para se conectar no Power Query Online ou no Power BI.
No Power Query Desktop (Power BI, Excel), não controlamos os pacotes de criptografia.
Se você estiver tentando se conectar ao Power Platform (por exemplo, fluxos de dados
do Power Platform) ou ao Serviço do Power BI, precisará de um desses pacotes de
criptografia habilitados no sistema operacional. Você pode atualizar a versão do
Windows ou atualizar o registro de TLS do Windows para ter certeza de que o ponto de
extremidade do servidor oferece suporte a uma dessas cifras.
Os clientes devem atualizar seus servidores antes de 1º de março de 2021. Para obter
mais informações sobre como configurar a ordem do conjunto de criptografia de TLS,
consulte Gerenciar Transport Layer Security (TLS).
Revogação de certificado
Uma próxima versão do Power BI Desktop causará falha nas conexões SSL na Área de
Trabalho, quando os certificados da cadeia SSL não tiverem status de revogação de
certificado. Essa é uma alteração no estado atual, em que a revogação só causou falha
de conexão no caso em que o certificado foi explicitamente revogado. Outros
problemas de certificado podem incluir assinaturas inválidas e expiração do certificado.
Como há configurações em que o status de revogação pode ser removido, como nos
servidores proxy corporativos, forneceremos outra opção para ignorar os certificados
que não têm informações de revogação. Essa opção permitirá situações em que as
informações de revogação são removidas em determinados casos, mas você não deseja
reduzir totalmente a segurança, para continuar trabalhando.
Aqui estão algumas maneiras comuns de resolver um excedente de pilha em seu código
M.
Table.Buffer(Table.FromList({1..1000000000}, Splitter.SplitByNothing()))
Para resolver erros de falta de memória, otimize as operações com uso intensivo de
memória, como classificações, junções, agrupamentos e distinções, garantindo que elas
se dobrem para a origem ou removendo-as completamente sempre que possível. As
classificações, por exemplo, muitas vezes são desnecessárias.
Fluxos de dados
Tela de fundo
Devido à maneira como as consultas são armazenadas no Power Query Online, há casos
em que se perde o script M inserido manualmente (geralmente comentários). O painel
Analisar Alterações do Script fornece uma experiência "diff" que realça as alterações,
permitindo que os usuários entendam quais alterações estão sendo feitas. Assim, os
usuários podem aceitar as alterações ou corrigir o script.
Comentários
Os comentários sempre precisam estar dentro da expressão Let .. in e acima de uma
etapa. Isso será mostrado na interface do usuário como uma "Propriedade da etapa".
Todos os outros comentários serão perdidos. Comentários escritos na mesma linha de
uma etapa, mas acima de outra etapa (por exemplo, após a vírgula que segue cada
etapa) serão movidos para baixo.
Experiência
Depois que você confirma uma consulta, o Power Query Online a avalia para ver se a
versão "armazenada" do script difere daquela que você enviou. Se isso acontecer, a
caixa de diálogo Analisar Alterações do Script será apresentada, o que permitirá que
você aceite ou cancele.
Este artigo descreve como enviar comentários para conectores Power Query. É
importante distinguir entre conectores de propriedade da Microsoft e conectores não
pertencentes à Microsoft, pois os canais de suporte e comentários são diferentes.
Se você estiver buscando ajuda para usar conectores de Power Query de propriedade da
Microsoft, acesse um dos recursos a seguir.
Fóruns da comunidade para o produto em que você está usando o Power Query.
Por exemplo, para o Power BI, esse fórum seria a Comunidade do Power BI e,
para fluxos de dados do PowerPlatform, o fórum seria Comunidade do Power
Apps .
Recursos do site do Power Query .
Enviar comentários
Para enviar comentários sobre um conector de propriedade da Microsoft, forneça os
comentários para o fórum "ideias" do produto em que você está usando Power Query
conectores. Por exemplo, para o Power BI, visite o fórum de ideias do Power BI . Se
você tiver um, também poderá fornecer comentários diretamente ao contato de sua
conta Microsoft.
Você também pode envolver os Power Query recursos da comunidade indicados acima
para conectores de propriedade da Microsoft, caso um membro da comunidade possa
ajudar.
Enviar comentários
Como conectores não pertencentes à Microsoft são gerenciados e atualizados pelo
respectivo proprietário do conector, os comentários devem ser enviados diretamente ao
proprietário do conector. Por exemplo, para enviar comentários sobre um conector de
propriedade da Contoso, você deve enviar comentários diretamente à Contoso.
Capturar solicitações da Web com o
Fiddler
Artigo • 13/05/2023
7 Observação
Se você ainda não tem o Fiddler instalado, baixe e instale o Fiddler agora. Instale o
Fiddler no sistema em que o problema está ocorrendo.
1. Abra o Fiddler.
3. Selecione Ferramentas>Opções.
Se você estiver executando apenas o Power Query e o Fiddler, essa configuração mínima
deverá produzir uma sequência de solicitações e respostas HTTP de qualquer back-end
com o qual você está se comunicando, por exemplo, serviço do Power BI, SharePoint ou
Azure. As solicitações, respostas, cabeçalhos, códigos de resposta e, às vezes, o
conteúdo, todos fornecerão pistas que poderão ser usados para solucionar o problema.
4. Selecione Ações.
10. Se a caixa de diálogo do certificado raiz for exibida, feche a caixa de diálogo sem
selecionar Sim ou Não.
Confira também
Diagnóstico de consulta
Comentários do Power Query
Introdução ao Fiddler Classic
Visão geral do SDK do Power Query
Artigo • 05/10/2023
Criar uma exibição de uma API REST fácil de usar por analistas de negócios.
Fornecer identidade visual usando um conector existente para uma fonte que o
Power Query suporta (como por exemplo, um serviço OData ou driver ODBC).
Implementar o fluxo de autenticação do OAuth v2 para uma oferta de SaaS.
Expor uma exibição limitada ou filtrada sobre a fonte de dados para aprimorar a
usabilidade.
Habilitar o DirectQuery para uma fonte de dados usando um driver ODBC.
SDK do Power Query para Visual Studio: Lançado em 2017 como uma extensão
para Visual Studio 2017 e 2019.
SDK do Power Query para Visual Studio Code (Versão Preliminar): lançado em
2022 como a maneira nova e recomendada de criar conectores do Power Query.
7 Observação
O novo SDK do Power Query para Visual Studio Code está atualmente em
visualização pública desde setembro de 2022.
Instale o novo SDK do Power Query para Visual Studio Code na seção Visual Studio
Code do Visual Studio Marketplace . Selecione Instalar para instalar o SDK.
As seguintes seções descrevem, em um nível mais alto, o processo mais comum para
criar um conector do Power Query usando o SDK.
Testando
O SDK do Power Query fornece recursos básicos de execução de consulta, permitindo
que você teste sua extensão sem precisar alternar para o Power BI Desktop.
Criar e implantar
A construção do seu projeto gera o arquivo .mez ou arquivo de extensão.
7 Observação
Eles começam com uma declaração de seção (por exemplo, section HelloWorld; ).
Cada expressão termina com um ponto e vírgula (por exemplo, a = 1; ou b = let
c = 1 + 2 in c; ).
Power BI Desktop
Os usuários do Power BI Desktop podem seguir as etapas abaixo para consumir um
conector personalizado do Power Query:
7 Observação
Dica
Antes de criar um projeto de extensão, recomendamos que você crie uma nova
pasta para armazenar o projeto. Durante a criação de um novo projeto, se
nenhuma pasta for selecionada, o SDK do Power Query ajudará você a localizar ou
criar uma nova pasta antes de criar o projeto de extensão.
No Visual Studio Code, no painel principal Explorer do Visual Studio Code, há uma
seção chamada SDK do Power Query. Esta seção tem apenas o botão Criar um projeto
de extensão. Selecione esse botão.
Esse botão abre um campo de entrada na parte superior da interface do Visual Studio
Code. Insira o nome do novo projeto de extensão e selecione Enter.
Depois de alguns segundos, a janela Visual Studio Code abre o arquivo *.pq principal do
projeto de extensão que contém a lógica do conector. O SDK do Power Query executa
automaticamente algumas tarefas necessárias para concluir a configuração do espaço
de trabalho. Você pode verificar essas tarefas no console de saída no Visual Studio
Code.
O SDK do Power Query cria automaticamente o seguinte conjunto de arquivos:
Credenciais
) Importante
O SDK do Power Query oferece várias tarefas pela interface de usuário para permitir que
você defina, liste e exclua credenciais do projeto de extensão.
Definir credencial
O SDK do Power Query é direcionado principalmente por tarefas que podem ser
acionadas por vários pontos de entrada. A definição de uma credencial pode ser feita de
duas maneiras (as outras tarefas de credencial podem ser feitas da mesma maneira).
Quando você executa essa tarefa, o Visual Studio Code o guia por uma série de prompts
para permitir a definição da credencial. Essas séries de prompts são previsíveis e sempre
consistem nos mesmos estágios:
Credenciais da lista
Semelhante à definição de uma credencial, a tarefa de listar credenciais tem dois pontos
de entrada nos mesmos locais: a seção SDK do Power Query no painel Explorer e
dentro do menu Terminal.
Essa tarefa serve como uma maneira de apagar todas as credenciais da sessão atual
quando você precisar definir uma nova credencial para avaliar suas consultas.
Para esse conector específico onde o nome do projeto era MyConnector, o código tem
esta aparência:
Power Query M
Power Query M
Selecione com o botão direito do mouse o arquivo que está em uso e selecione a
opção Avaliar arquivo do Power Query atual.
Percorra o menu Terminal e selecione a tarefa Avaliar arquivo atual.
7 Observação
O SDK do Power Query não gerencia nenhum tipo de mecanismo de cache para as
avaliações.
Para trazer o projeto de extensão herdado para o novo SDK, realize estas etapas:
A adição de duas novas pastas e arquivos é o que transforma o espaço de trabalho atual
em um novo espaço de trabalho do SDK do Power Query.
Workspace de configuração
O que a tarefa Configurar espaço de trabalho faz é criar um arquivo settings.json para
seu espaço de trabalho que dita algumas variáveis que serão usadas para o espaço de
trabalho quando se trata de avaliações e configurações gerais.
Criar um arquivo de extensão
A tarefa de compilação permite que você crie o arquivo .mez para a extensão sob
demanda.
A tarefa para executar TestConnection permite que você teste o manipulador dentro do
SDK do Power Query sem precisar usar manualmente esse manipulador na Microsoft
Cloud.
Para executar essa tarefa, primeiro defina uma credencial para o conector e, em seguida,
execute a tarefa na seção SDK do Power Query no Explorer ou na lista de tarefas dentro
do menu do terminal.
Comentários e bugs
Você tem algum feedback, sugestão ou bug que gostaria de relatar? Visite nosso
repositório público oficial no GitHub .
Você pode usar o fórum da Comunidade do Power BI para postar perguntas gerais
sobre o Power Query, a linguagem M e o desenvolvimento de conectores
personalizados.
Criar seu primeiro conector: Olá, mundo
Artigo • 23/03/2023
Seguindo as instruções sobre como instalar o SDK do PowerQuery, crie um novo projeto
chamado "OláMundo" e copie o código M a seguir e siga o restante das instruções para
abri-lo no PowerBI.
section HelloWorld;
[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;
HelloWorld = [
Authentication = [
Implicit = []
],
Label = Extension.LoadString("DataSourceLabel")
];
HelloWorld.Publish = [
Beta = true,
ButtonText = { Extension.LoadString("FormulaTitle"), Extension.LoadStrin
g("FormulaHelp") },
SourceImage = HelloWorld.Icons,
SourceTypeImage = HelloWorld.Icons
];
HelloWorld.Icons = [
Icon16 = { Extension.Contents("HelloWorld16.png"), Extension.Contents("H
elloWorld20.png"), Extension.Contents("HelloWorld24.png"), Extension.Content
s("HelloWorld32.png") },
Icon32 = { Extension.Contents("HelloWorld32.png"), Extension.Contents("H
elloWorld40.png"), Extension.Contents("HelloWorld48.png"), Extension.Content
s("HelloWorld64.png") }
];
Esta etapa apresentará uma caixa de diálogo de autenticação. Como não há opções de
autenticação e a função não usa parâmetros, não há mais etapas nessas caixas de
diálogo.
Por fim, o editor de consultas aparecerá mostrando o que você espera, uma função que
retorna o texto "Olá, mundo".
Este tutorial de várias partes aborda a criação de uma nova extensão de fonte de dados
para o Power Query. O tutorial deve ser seguido sequencialmente; cada lição se baseia
no conector criado nas lições anteriores, adicionando incrementalmente novos recursos
a ele.
Este tutorial usa um serviço público OData (TripPin ) como fonte de referência.
Embora esta lição exija o uso das funções OData do mecanismo M, as lições
subsequentes usarão Web.Contents, tornando-o aplicável à maioria das APIs REST.
Pré-requisitos
Os seguintes aplicativos serão usados ao longo deste tutorial:
7 Observação
Partes
Parte Lição Detalhes
Este tutorial de várias partes aborda a criação de uma nova extensão de fonte de dados
para o Power Query. O tutorial deve ser seguido sequencialmente. Cada lição se baseia
no conector criado nas lições anteriores, adicionando incrementalmente novos recursos
ao conector.
Abra o Visual Studio e crie um projeto. Na pasta do Power Query, selecione o projeto
Conector de Dados. Para este exemplo, defina o nome do projeto como TripPin .
section TripPin;
[DataSource.Kind="TripPin", Publish="TripPin.Publish"]
shared TripPin.Feed = Value.ReplaceType(TripPinImpl, type function (url as
Uri.Type) as any);
Abra o arquivo TripPin.query.pq. Substitua o conteúdo atual por uma chamada para a
função exportada.
Power Query M
TripPin.Feed("https://services.odata.org/v4/TripPinService/")
Selecione OK para fechar a caixa de diálogo e selecione o botão Iniciar mais uma vez.
Você verá uma caixa de diálogo de status de execução de consulta e, por fim, uma
tabela resultados da consulta mostrando os dados retornados da consulta.
Você pode experimentar algumas URLs do OData diferentes no arquivo de teste para
ver como outros resultados são retornados. Por exemplo:
https://services.odata.org/v4/TripPinService/Me
https://services.odata.org/v4/TripPinService/GetPersonWithMostFriends()
https://services.odata.org/v4/TripPinService/People
Power Query M
let
Source = TripPin.Feed("https://services.odata.org/v4/TripPinService/"),
People = Source{[Name="People"]}[Data],
SelectColumns = Table.SelectColumns(People, {"UserName", "FirstName",
"LastName"})
in
SelectColumns
Abra o Fiddler para capturar o tráfego HTTP e execute a consulta. Você verá algumas
solicitações diferentes ao services.odata.org, geradas pelo processo de contêiner de
mashup. Veja que o acesso à URL raiz do serviço resulta em um status 302 e um
redirecionamento para a versão mais longa da URL. Os redirecionamentos a seguir são
outros comportamentos que você obtém "gratuitamente" das funções da biblioteca
básica.
Uma coisa a observar se você olhar para as URLs é que você poderá ver a dobragem de
consultas que aconteceu com a instrução SelectColumns .
https://services.odata.org/v4/TripPinService/People?
$select=UserName%2CFirstName%2CLastName
Se você adicionar transformações à sua consulta, verá como elas afetam a URL gerada.
Como esta é a primeira vez que você está acessando essa fonte de dados, você receberá
um prompt de credenciais. Verifique se a URL mais curta está selecionada e escolha
Conectar.
Observe que, em vez de obter uma tabela simples de dados, o navegador é exibido. Isso
ocorre porque a função OData.Feed retorna uma tabela com metadados especiais que a
experiência do Power Query sabe exibir como uma tabela de navegação. Este passo a
passo abordará como você faz para criar e personalizar sua própria tabela de navegação
em uma lição futura.
Na próxima lição, você substituirá o uso de OData.Feed por uma função com menos
funcionalidades: Web.Contents. Cada lição implementará mais recursos de conector,
incluindo paginação, detecção de metadados/esquema e dobragem de consultas na
sintaxe da consulta do OData, até que seu conector personalizado dê suporte à mesma
variedade de recursos que o OData.Feed.
Próximas etapas
Parte 2 do TripPin – Conector de Dados para um serviço REST
TripPin parte 2 – Conector de dados
para um serviço REST
Artigo • 23/03/2023
Este tutorial de várias partes aborda a criação de uma extensão de fonte de dados para
o Power Query. O tutorial deve ser seguido sequencialmente. Cada lição se baseia no
conector criado nas lições anteriores, adicionando incrementalmente novos recursos ao
conector.
" Criar uma função base que chama uma API REST usando Web.Contents
" Saber como definir cabeçalhos de solicitação e processar uma resposta JSON
" Usar o Power BI Desktop para organizar a resposta em um formato amigável
Esta lição converte o conector baseado em OData para o serviço TripPin (criado na
lição anterior) em um conector que se assemelha a algo que você criaria para qualquer
API RESTful. O OData é uma API RESTful, mas com um conjunto fixo de convenções. A
vantagem do OData é que ele fornece um esquema, um protocolo de recuperação de
dados e uma linguagem de consulta padrão. A remoção do uso do OData.Feed exigirá
que criemos essas funcionalidades no conector por nossa conta.
TripPin.Feed("https://services.odata.org/v4/TripPinService/Me")
JSON
{
"@odata.context":
"https://services.odata.org/v4/TripPinService/$metadata#Me",
"UserName": "aprilcline",
"FirstName": "April",
"LastName": "Cline",
"MiddleName": null,
"Gender": "Female",
"Age": null,
"Emails": [ "April@example.com", "April@contoso.com" ],
"FavoriteFeature": "Feature1",
"Features": [ ],
"AddressInfo": [
{
"Address": "P.O. Box 555",
"City": {
"Name": "Lander",
"CountryRegion": "United States",
"Region": "WY"
}
}
],
"HomeAddress": null
}
Para fazer solicitações da Web bem-sucedidas para o serviço OData, no entanto, você
precisará definir alguns cabeçalhos OData padrão . Você fará isso definindo um
conjunto comum de cabeçalhos como uma nova variável em seu conector:
Power Query M
DefaultRequestHeaders = [
#"Accept" = "application/json;odata.metadata=minimal", // column name
and values only
#"OData-MaxVersion" = "4.0" // we only
support v4
];
Você alterará sua implementação da função TripPin.Feed para que, em vez de usar
OData.Feed , ela use Web.Contents para fazer uma solicitação da Web, e analise o
resultado como um documento JSON.
Power Query M
Agora você pode testar isso no Visual Studio usando o arquivo de consulta. O resultado
do registro /Me agora se assemelha ao JSON bruto que você viu na solicitação do
Fiddler.
Se você observar o Fiddler ao executar a nova função, também verá que agora a
avaliação faz uma única solicitação da Web, em vez de três. Parabéns, você conseguiu
um aumento de 300% no desempenho! É claro que agora você perdeu todas as
informações de tipo e esquema, mas ainda não há necessidade de se concentrar nessa
parte.
Atualize sua consulta para acessar algumas das Entidades/Tabelas do TripPin, como:
https://services.odata.org/v4/TripPinService/Airlines
https://services.odata.org/v4/TripPinService/Airports
https://services.odata.org/v4/TripPinService/Me/Trips
Você observará que os caminhos usados para retornar tabelas bem formatadas agora
retornam um campo de "valor" de nível superior com uma [Lista] inserida. Você
precisará fazer algumas transformações no resultado para torná-lo utilizável para
cenários do Power BI.
Criando transformações no Power Query
Embora certamente seja possível criar suas transformações da M manualmente, a
maioria das pessoas prefere usar o Power Query para moldar os dados. Você abrirá sua
extensão no Power BI Desktop e a usará para criar consultas e transformar a saída em
um formato mais amigável. Recompile sua solução, copie o novo arquivo de extensão
para o diretório de conectores de dados personalizados e reinicie o Power BI Desktop.
= TripPin.Feed("https://services.odata.org/v4/TripPinService/Airlines")
Manipule a saída até que ela se pareça com o feed original do OData – uma tabela com
duas colunas: AirlineCode e Name.
Power Query M
let
Source =
TripPin.Feed("https://services.odata.org/v4/TripPinService/Airlines"),
value = Source[value],
toTable = Table.FromList(value, Splitter.SplitByNothing(), null, null,
ExtraValues.Error),
expand = Table.ExpandRecordColumn(toTable, "Column1", {"AirlineCode",
"Name"}, {"AirlineCode", "Name"})
in
expand
Dê um nome à consulta ("Companhias Aéreas").
Crie uma consulta em branco. Desta vez, use a função TripPin.Feed para acessar a
entidade /Airports. Aplique transformações até obter algo semelhante ao
compartilhamento mostrado abaixo. A consulta correspondente também pode ser
encontrada abaixo – dê a essa consulta um nome ("Aeroportos") também.
Power Query M
let
Source =
TripPin.Feed("https://services.odata.org/v4/TripPinService/Airports"),
value = Source[value],
#"Converted to Table" = Table.FromList(value, Splitter.SplitByNothing(),
null, null, ExtraValues.Error),
#"Expanded Column1" = Table.ExpandRecordColumn(#"Converted to Table",
"Column1", {"Name", "IcaoCode", "IataCode", "Location"}, {"Name",
"IcaoCode", "IataCode", "Location"}),
#"Expanded Location" = Table.ExpandRecordColumn(#"Expanded Column1",
"Location", {"Address", "Loc", "City"}, {"Address", "Loc", "City"}),
#"Expanded City" = Table.ExpandRecordColumn(#"Expanded Location",
"City", {"Name", "CountryRegion", "Region"}, {"Name.1", "CountryRegion",
"Region"}),
#"Renamed Columns" = Table.RenameColumns(#"Expanded City",{{"Name.1",
"City"}}),
#"Expanded Loc" = Table.ExpandRecordColumn(#"Renamed Columns", "Loc",
{"coordinates"}, {"coordinates"}),
#"Added Custom" = Table.AddColumn(#"Expanded Loc", "Latitude", each
[coordinates]{1}),
#"Added Custom1" = Table.AddColumn(#"Added Custom", "Longitude", each
[coordinates]{0}),
#"Removed Columns" = Table.RemoveColumns(#"Added Custom1",
{"coordinates"}),
#"Changed Type" = Table.TransformColumnTypes(#"Removed Columns",
{{"Name", type text}, {"IcaoCode", type text}, {"IataCode", type text},
{"Address", type text}, {"City", type text}, {"CountryRegion", type text},
{"Region", type text}, {"Latitude", type number}, {"Longitude", type
number}})
in
#"Changed Type"
Você pode repetir esse processo para outros caminhos no serviço. Quando estiver
pronto, vá para a próxima etapa de criação de uma tabela de navegação (simulada).
Simulando uma tabela de navegação
Agora você vai criar uma tabela (usando o código da M) que apresenta suas entidades
TripPin bem formatadas.
Power Query M
let
source = #table({"Name", "Data"}, {
{ "Airlines", Airlines },
{ "Airports", Airports }
})
in
source
Selecione Salvar e sua tabela será exibida. Embora esta ainda não seja uma tabela de
navegação, ela fornece a funcionalidade básica necessária para transformá-la durante
uma lição subsequente.
Conclusão
Esta lição mostrou como criar um conector simples para um serviço REST. Nesse caso,
você transformou uma extensão existente do OData em uma extensão REST padrão
(usando Web.Contents), mas os mesmos conceitos se aplicam se você estiver criando
uma extensão do zero.
Na próxima lição, você pegará as consultas criadas nesta lição usando o Power BI
Desktop e as transformará em uma tabela de navegação verdadeira dentro da extensão.
Próximas etapas
TripPin Parte 3 – Tabelas de Navegação
TripPin parte 3 – Tabelas de navegação
Artigo • 29/04/2023
Este tutorial de várias partes aborda a criação de uma nova extensão de fonte de dados
para o Power Query. O tutorial deve ser seguido sequencialmente. Cada lição se baseia
no conector criado nas lições anteriores, adicionando incrementalmente novos recursos
ao conector.
Esta lição adiciona uma tabela de navegação ao conector do TripPin criado na lição
anterior. Quando o conector usou a OData.Feed função (Parte 1), você recebeu a tabela
de navegação "gratuitamente", conforme derivado do documento $metadata do serviço
do OData. Quando você mudou para a Web.Contents função (Parte 2), você perdeu a
tabela de navegação interna. Nesta lição, você usará um conjunto de consultas fixas
criadas no Power BI Desktop e adicionará os metadados apropriados ao Power Query
para exibir a caixa de diálogo Navegador da sua função de fonte de dados.
Você começará copiando as consultas que escreveu no Power BI Desktop (na lição
anterior) no arquivo do conector. Abrirá o projeto do Visual Studio no TripPin Visual e
colará as consultas de companhias aéreas e aeroportos no arquivo TripPin.pq.
Transformará essas consultas em funções que usam um único parâmetro de texto:
Power Query M
Power Query M
dados.
Power Query M
[DataSource.Kind="TripPin"]
shared TripPin.Feed = Value.ReplaceType(TripPinImpl, type function (url as
Uri.Type) as any);
[DataSource.Kind="TripPin", Publish="TripPin.Publish"]
shared TripPin.Contents = Value.ReplaceType(TripPinNavTable, type function
(url as Uri.Type) as any);
7 Observação
Sua extensão pode marcar várias funções como shared , com ou sem associá-las a
um DataSource.Kind . No entanto, quando você associa uma função a um específico
DataSource.Kind , cada função deve ter o mesmo conjunto de parâmetros
Power Query M
TripPin.Contents("https://services.odata.org/v4/TripPinService/")
Criando uma tabela de navegação
Você usará a função Table.ToNavigationTable útil para formatar sua tabela estática em
algo que Power Query reconhecerá como uma tabela de navegação. Como essa função
não faz parte da biblioteca padrão do Power Query, você precisará copiar seu código-
fonte para o arquivo .pq.
Com essa função auxiliar em vigor, atualize a TripPinNavTable função para adicionar os
campos da tabela de navegação.
Power Query M
Próximas etapas
TripPin parte 4 – Caminhos da fonte de dados
TripPin parte 4 – Caminhos da fonte de
dados
Artigo • 23/03/2023
Este tutorial de várias partes aborda a criação de uma extensão de fonte de dados para
o Power Query. O tutorial deve ser seguido sequencialmente. Cada lição se baseia no
conector criado nas lições anteriores, adicionando incrementalmente novos recursos ao
conector.
Para obter uma explicação detalhada de como as credenciais são identificadas, consulte
a seção Caminhos da fonte de dados de Manipulação de autenticação.
Na lição anterior, você compartilhou duas funções de fonte de dados, ambas com um
único parâmetro Uri.Type.
Power Query M
[DataSource.Kind="TripPin"]
shared TripPin.Feed = Value.ReplaceType(TripPinImpl, type function (url as
Uri.Type) as any);
[DataSource.Kind="TripPin", Publish="TripPin.Publish"]
shared TripPin.Contents = Value.ReplaceType(TripPinNavTable, type function
(url as Uri.Type) as any);
Na primeira vez que você executar uma consulta que usa uma das funções, receberá um
prompt de credencial com listas suspensas que permite selecionar um caminho e um
tipo de autenticação.
Simplificando o conector
Agora, você simplificará seu conector ao remover os parâmetros para sua função de
fonte de dados ( TripPin.Contents ). Você também removerá o qualificador shared para
TripPin.Feed e deixará como uma função somente interna.
Uma das filosofias de design do Power Query é manter a caixa de diálogo da fonte de
dados inicial o mais simples possível. Se possível, você deverá fornecer ao usuário
opções no nível do Navegador, em vez da caixa de diálogo de conexão. Se um valor
fornecido pelo usuário pode ser determinado programaticamente, considere adicioná-lo
como o nível superior da tabela de navegação em vez de um parâmetro de função.
Como o serviço TripPin tem um ponto de extremidade de URL fixo, você não precisa
solicitar nenhum valor ao usuário. Você removerá o parâmetro url da função e definirá
uma variável BaseUrl no conector.
Power Query M
BaseUrl = "https://services.odata.org/v4/TripPinService/";
[DataSource.Kind="TripPin", Publish="TripPin.Publish"]
shared TripPin.Contents = () => TripPinNavTable(BaseUrl) as table;
Você manterá a função TripPin.Feed , mas não a tornará mais compartilhada, não a
associará a um Tipo de Fonte de Dados e simplificará sua declaração. A partir deste
ponto, você só a usará internamente neste documento de seção.
Power Query M
Power Query M
RootEntities = {
"Airlines",
"Airports",
"People"
};
Em seguida, atualize sua função TripPinNavTable para criar uma coluna de cada vez na
tabela. A coluna [Dados] de cada entidade é recuperada chamando TripPin.Feed com a
URL completa para a entidade.
Power Query M
Ao criar caminhos de URL dinamicamente, verifique onde estão as barras (/)! Observe
que Uri.Combine usa as seguintes regras ao combinar caminhos:
Power Query M
7 Observação
Uma desvantagem de usar uma abordagem genérica para processar suas entidades
é que você perde a boa formatação e as informações de tipo para as entidades.
Uma seção posterior neste tutorial mostra como impor o esquema nas chamadas à
API REST.
Conclusão
Neste tutorial, você limpou e simplificou o conector corrigindo o valor do Caminho da
Fonte de Dados e passando para um formato mais flexível para sua tabela de
navegação. Depois de concluir essas etapas (ou usar o código de exemplo neste
diretório), a função TripPin.Contents retorna uma tabela de navegação no Power BI
Desktop.
Próximas etapas
TripPin parte 5 – Paginação
TripPin parte 5 – Paginação
Artigo • 23/03/2023
Este tutorial de várias partes aborda a criação de uma nova extensão de fonte de dados
para o Power Query. O tutorial deve ser seguido sequencialmente. Cada lição se baseia
no conector criado nas lições anteriores, adicionando incrementalmente novos recursos
ao conector.
Muitas APIs Rest retornarão dados em "páginas", exigindo que os clientes façam várias
solicitações para costurar os resultados juntos. Embora haja algumas convenções
comuns para paginação (como RFC 5988 ), ela geralmente varia de API para API.
Felizmente, TripPin é um serviço OData e o padrão OData define uma maneira de
fazer paginação usando valores odata.nextLink retornados no corpo da resposta.
Nesta lição, você melhorará sua lógica de tratamento de resposta, tornando-a ciente da
página. Tutoriais futuros tornarão a lógica de tratamento de página mais robusta e
capaz de lidar com vários formatos de resposta (incluindo erros do serviço).
7 Observação
Você não precisa implementar sua própria lógica de paginação com conectores
baseados em OData.Feed, pois ele manipula tudo para você automaticamente.
A resposta a essas perguntas afetará a maneira como você implementa sua lógica de
paginação. Embora haja alguma quantidade de reutilização de código em
implementações de paginação (como o uso de Table.GenerateByPage, a maioria dos
conectores acabará exigindo lógica personalizada.
7 Observação
Esta lição contém lógica de paginação para um serviço OData, que segue um
formato específico. Verifique a documentação da API para determinar as alterações
que você precisará fazer no conector para dar suporte ao formato de paginação.
JSON
{
"odata.context": "...",
"odata.count": 37,
"value": [
{ },
{ },
{ }
],
"odata.nextLink": "...?$skiptoken=342r89"
}
Alguns serviços OData permitem que os clientes forneçam uma preferência máxima de
tamanho de página , mas cabe ao serviço honre-a ou não. O Power Query deve ser
capaz de lidar com respostas de qualquer tamanho, portanto, você não precisa se
preocupar em especificar uma preferência de tamanho de página, você pode dar
suporte a qualquer coisa que o serviço jogue em você.
Mais informações sobre paginação controlada por servidor podem ser encontradas na
especificação OData.
Testando o TripPin
Antes de corrigir a implementação de paginação, confirme o comportamento atual da
extensão do tutorial anterior. A consulta de teste a seguir recuperará a tabela Pessoas e
adicionará uma coluna de índice para mostrar a contagem de linhas atual.
Power Query M
let
source = TripPin.Contents(),
data = source{[Name="People"]}[Data],
withRowCount = Table.AddIndexColumn(data, "Index")
in
withRowCount
Ative o fiddler e execute a consulta no Visual Studio. Você observará que a consulta
retorna uma tabela com 8 linhas (índice 0 a 7).
Se você examinar o corpo da resposta do fiddler, verá que ele contém de fato um
@odata.nextLink campo, indicando que há mais páginas de dados disponíveis.
JSON
{
"@odata.context":
"https://services.odata.org/V4/TripPinService/$metadata#People",
"@odata.nextLink": "https://services.odata.org/v4/TripPinService/People?
%24skiptoken=8",
"value": [
{ },
{ },
{ }
]
}
Implementando a paginação para TripPin
Agora você fará as seguintes alterações em sua extensão:
7 Observação
Table.GenerateByPage
Para combinar as (potencialmente) várias páginas retornadas pela origem em uma única
tabela, usaremos Table.GenerateByPage. Essa função usa como argumento uma
getNextPage função que deve fazer exatamente o que seu nome sugere: buscar a
próxima página de dados. Table.GenerateByPage chamará repetidamente a getNextPage
função, cada vez que passar os resultados produzidos na última vez em que foi
chamada, até que ela retorne null para sinalizar de volta que não há mais páginas
disponíveis.
Como essa função não faz parte da biblioteca padrão do Power Query, você precisará
copiar seu código-fonte para o arquivo .pq.
Implementando GetAllPagesByNextLink
O corpo da função GetAllPagesByNextLink implementa o argumento de getNextPage
para Table.GenerateByPage. Ele chamará a função GetPage e recuperará a URL para a
próxima página de dados do campo NextLink do registro meta da chamada anterior.
Power Query M
// Read all pages of data.
// After every page, we check the "NextLink" record on the metadata of the
previous request.
// Table.GenerateByPage will keep asking for more pages until we return
null.
GetAllPagesByNextLink = (url as text) as table =>
Table.GenerateByPage((previous) =>
let
// if previous is null, then this is our first page of data
nextLink = if (previous = null) then url else
Value.Metadata(previous)[NextLink]?,
// if NextLink was set to null by the previous call, we know we
have no more data
page = if (nextLink <> null) then GetPage(nextLink) else null
in
page
);
Implementando GetPage
Sua função GetPage usará Web.Contents para recuperar uma única página de dados do
serviço TripPin e converter a resposta em uma tabela. Ele passa a resposta de
Web.Contents para a GetNextLink para extrair a URL da próxima página e a define no
meta da tabela retornada (página de dados).
Power Query M
Implementando GetNextLink
Sua função GetNextLink simplesmente verifica o corpo da resposta para um campo
@odata.nextLink e retorna seu valor.
Power Query M
// In this implementation, 'response' will be the parsed body of the
response after the call to Json.Document.
// Look for the '@odata.nextLink' field and simply return null if it doesn't
exist.
GetNextLink = (response) as nullable text => Record.FieldOrDefault(response,
"@odata.nextLink");
Juntando as peças
A etapa final para implementar sua lógica de paginação é atualizar TripPin.Feed para
usar as novas funções. Por enquanto, você está simplesmente chamando
GetAllPagesByNextLink , mas em tutoriais subsequentes, você adicionará novos recursos
Power Query M
Se você examinar as solicitações no fiddler, agora verá solicitações separadas para cada
página de dados.
7 Observação
Conclusão
Esta lição mostrou como implementar o suporte à paginação para uma API Rest.
Embora a lógica provavelmente varie entre APIs, o padrão estabelecido aqui deve ser
reutilizável com pequenas modificações.
Na próxima lição, você examinará como aplicar um esquema explícito aos seus dados,
indo além dos tipos simples text e number de dados dos quais você obtém
Json.Document .
Próximas etapas
TripPin Parte 6 – Esquema
TripPin parte 6 – Esquema
Artigo • 23/03/2023
Este tutorial de várias partes aborda a criação de uma extensão de fonte de dados para
o Power Query. O tutorial deve ser seguido sequencialmente. Cada lição se baseia no
conector criado nas lições anteriores, adicionando incrementalmente novos recursos ao
conector.
Uma das grandes vantagens de um serviço OData em relação a uma API REST padrão é
sua definição de $metadata . O documento $metadata descreve os dados encontrados
nesse serviço, incluindo o esquema de todas as suas Entidades (Tabelas) e Campos
(Colunas). A função OData.Feed usa essa definição de esquema para definir
automaticamente informações de tipo de dados, portanto, em vez de obter todos os
campos de texto e número (como você faria em Json.Document ), os usuários finais
obterão datas, números inteiros, horas e assim por diante, fornecendo uma melhor
experiência geral do usuário.
Muitas APIs REST não têm uma forma de determinar programaticamente seu esquema.
Nesses casos, você precisará incluir definições de esquema no conector. Nesta lição,
você definirá um esquema simples e embutido em código para cada uma de suas
tabelas e imporá o esquema nos dados lidos do serviço.
7 Observação
A abordagem descrita aqui deve funcionar para muitos serviços REST. As próximas
lições se basearão nessa abordagem, impondo recursivamente esquemas em
colunas estruturadas (registro, lista, tabela) e fornecerão implementações de
exemplo que podem gerar programaticamente uma tabela de documentos de
esquema JSON ou CSDL.
No geral, a imposição de um esquema nos dados retornados pelo conector tem vários
benefícios, como:
Definir os tipos de dados corretos
Remover colunas que não precisam ser mostradas aos usuários finais (como IDs
internas ou informações de estado)
Garantir que cada página de dados tenha a mesma forma adicionando todas as
colunas que possam estar ausentes de uma resposta (uma forma comum para as
APIs REST indicarem que um campo deve ser nulo)
Power Query M
let
source = TripPin.Contents(),
data = source{[Name="Airlines"]}[Data]
in
data
@odata.id
@odata.editLink
AirlineCode
Nome
As colunas "@odata.*" fazem parte do protocolo OData e não é algo que você deseja
ou precisa mostrar aos usuários finais do conector. AirlineCode e Name são as duas
colunas que você vai querer manter. Se você examinar o esquema da tabela (usando a
função Table.Schema útil), poderá ver que todas as colunas da tabela têm um tipo de
dados Any.Type .
Power Query M
let
source = TripPin.Contents(),
data = source{[Name="Airlines"]}[Data]
in
Table.Schema(data)
Coluna Detalhes
Nome O nome da coluna. Isso deve corresponder ao nome nos resultados retornados pelo
serviço.
Tipo O tipo de dados da linguagem M que você vai definir. Pode ser um tipo primitivo ( text ,
number , datetime e assim por diante) ou um tipo atribuído ( Int64.Type , Currency.Type
e assim por diante).
A tabela Airports tem quatro campos que você deseja manter (incluindo um do tipo
record ):
Power Query M
Por fim, a tabela People tem sete campos, incluindo listas ( Emails , AddressInfo ), uma
coluna anulável ( Gender ) e uma coluna com um tipo atribuído ( Concurrency ).
Power Query M
tabela tabela A tabela de dados em que você deseja impor seu esquema.
7 Observação
Power Query M
Power Query M
desejar) para as funções de paginação, em que ele será aplicado aos resultados que
você obterá do serviço.
Power Query M
Você também atualizará todas as chamadas para essas funções para garantir que você
passe o esquema corretamente.
Impor o esquema
A imposição real do esquema será feita em sua função GetPage .
Power Query M
Power Query M
Power Query M
Juntando as peças
Depois que todas as alterações de código forem feitas, compile e execute novamente a
consulta de teste que chama Table.Schema para a tabela Linhas Aéreas.
Power Query M
let
source = TripPin.Contents(),
data = source{[Name="Airlines"]}[Data]
in
Table.Schema(data)
Agora você verá que a tabela Linhas Aéreas tem apenas as duas colunas que você
definiu no esquema:
Power Query M
let
source = TripPin.Contents(),
data = source{[Name="People"]}[Data]
in
Table.Schema(data)
Você verá que o tipo atribuído usado ( Int64.Type ) também foi definido corretamente.
Algo importante a observar é que essa implementação de SchemaTransformTable não
modifica os tipos das colunas list e record , mas as colunas Emails e AddressInfo
permanecem tipadas como list . Isso ocorre porque Json.Document mapeará
corretamente matrizes JSON para listas da M, e objetos JSON para registros da M. Se
você for expandir a lista ou a coluna de registro no Power Query, verá que todas as
colunas expandidas serão do tipo Qualquer. Os próximos tutoriais vão aprimorar a
implementação para definir recursivamente informações de tipo para tipos complexos
aninhados.
Conclusão
Este tutorial forneceu uma implementação de exemplo para impor um esquema em
dados JSON retornados de um serviço REST. Embora este exemplo use um formato de
tabela de esquema simples embutido em código, a abordagem pode ser expandida
criando dinamicamente uma definição de tabela de esquema de outra fonte, como um
arquivo de esquema JSON ou um serviço de metadados/ponto de extremidade exposto
pela fonte de dados.
Além de modificar tipos de coluna (e valores), seu código também está definindo as
informações de tipo corretas na própria tabela. Definir essas informações de tipo
beneficia o desempenho ao executar dentro do Power Query, pois a experiência do
usuário sempre tenta inferir informações de tipo para exibir as filas de interface do
usuário corretas para o usuário final, e as chamadas de inferência podem acabar
disparando chamadas adicionais para as APIs de dados subjacentes.
Se você exibir a tabela Pessoas usando o Conector TripPin da lição anterior, verá que
todas as colunas têm um ícone "tipo qualquer" (até mesmo as colunas que contêm
listas):
Executando a mesma consulta com o conector TripPin desta lição, agora você verá que
as informações de tipo são exibidas corretamente.
Próximas etapas
TripPin Parte 7 – Esquema avançado com Tipos da M
TripPin parte 7 - Esquema avançado
com tipos M
Artigo • 05/10/2023
Este tutorial de várias partes aborda a criação de uma nova extensão de fonte de dados
para o Power Query. O tutorial deve ser seguido sequencialmente; cada lição se baseia
no conector criado nas lições anteriores, adicionando incrementalmente novos recursos
a ele.
Na lição anterior, você definiu seus esquemas de tabela usando um simples sistema de
"Tabela de Esquema". Essa abordagem de tabela de esquema funciona para muitas APIs
REST/conectores de dados, mas os serviços que retornam conjuntos de dados
completos ou profundamente aninhados podem se beneficiar da abordagem neste
tutorial, que utiliza o sistema de tipos M.
Power Query M
section TripPinUnitTests;
shared TripPin.UnitTest =
[
// Put any common variables here if you only want them to be evaluated
once
RootTable = TripPin.Contents(),
Airlines = RootTable{[Name="Airlines"]}[Data],
Airports = RootTable{[Name="Airports"]}[Data],
People = RootTable{[Name="People"]}[Data],
Record.FieldNames(Type.RecordFields(Type.TableRow(Value.Type(Airlines))))
)
},
report = Facts.Summarize(facts)
][report];
Power Query M
Um valor de tipo é um valor que classifica outros valores. Um valor classificado por
um tipo obedece a esse tipo. O sistema de tipos de M é composto pelas seguintes
categorias de tipos:
type ) e também incluem vários tipos abstratos ( function , table , any , none )
Usando a saída JSON bruta que você recebe (e/ou pesquisando as definições nos
$metadata do serviço ), é possível definir os seguintes tipos de registro para
representar tipos OData complexos:
Power Query M
LocationType = type [
Address = text,
City = CityType,
Loc = LocType
];
CityType = type [
CountryRegion = text,
Name = text,
Region = text
];
LocType = type [
#"type" = text,
coordinates = {number},
crs = CrsType
];
CrsType = type [
#"type" = text,
properties = record
];
Para as entidades de nível superior que você deseja representar como tabelas, é possível
definir tipos de tabela:
Power Query M
Em seguida, é possível atualizar sua variável SchemaTable (que você usará como uma
“tabela de pesquisa” para mapeamentos de entidade para tipo) a fim de usar essas
novas definições de tipo:
Power Query M
SchemaTable = #table({"Entity", "Type"}, {
{"Airlines", AirlinesType },
{"Airports", AirportsType },
{"People", PeopleType}
});
Power Query M
7 Observação
Para obter flexibilidade, a função pode ser usada em tabelas e em listas de registros
(que é como as tabelas são representadas em um documento JSON).
Power Query M
que expandir quando você obtém os resultados), mas deixa a imposição real do
esquema para GetEntity .
Power Query M
Executar os testes de unidade novamente mostra que eles agora estão todos sendo
aprovados.
Refatorar códigos comuns em arquivos
separados
7 Observação
Neste ponto, sua extensão tem quase tanto código "comum" quanto o código do
conector TripPin. No futuro, essas funções comuns farão parte da biblioteca de funções
padrão interna ou será possível referenciá-las de outra extensão. Por enquanto, você
refatora seu código da seguinte maneira:
Power Query M
Table.ChangeType = Extension.LoadFunction("Table.ChangeType.pqm");
Table.GenerateByPage = Extension.LoadFunction("Table.GenerateByPage.pqm");
Table.ToNavigationTable =
Extension.LoadFunction("Table.ToNavigationTable.pqm");
Conclusão
Este tutorial fez uma série de melhorias na maneira como você impõe um esquema nos
dados obtidos de uma API REST. No momento, o conector está codificando as
informações do esquema, que têm um benefício de desempenho no runtime, mas não
consegue se adaptar às alterações nos metadados do serviço ao longo do tempo.
Tutoriais futuros passarão para uma abordagem puramente dinâmica que inferirá o
esquema do documento $metadata do serviço.
Além das alterações de esquema, este tutorial adicionou testes de unidade para seu
código e refatorou as funções auxiliares comuns em arquivos separados a fim de
melhorar a legibilidade geral.
Próximas etapas
TripPin Part 8 – Adicionar diagnóstico
TripPin parte 8 – Adicionando
diagnóstico
Artigo • 23/03/2023
Este tutorial de várias partes aborda a criação de uma extensão de fonte de dados para
o Power Query. O tutorial deve ser seguido sequencialmente. Cada lição se baseia no
conector criado nas lições anteriores, adicionando incrementalmente novos recursos ao
conector.
Limpar log – quando essa configuração estiver definida como true , o log será
redefinido/limpo quando você executar suas consultas. Recomendamos que você
mantenha essa configuração definida como true .
Mostrar Rastreamentos do Mecanismo – essa configuração controla a saída de
rastreamentos internos do mecanismo da M. Esses rastreamentos geralmente são
úteis apenas para membros da equipe do Power Query, portanto, você
normalmente deixa definida como false .
Mostrar Rastreamentos do Usuário – essa configuração controla as informações
de rastreamento produzidas pelo conector. Você vai querer definir essa
configuração como true .
Depois de habilitado, você começará a ver entradas de log na janela Saída de Consulta
da M, na guia Log.
Diagnostics.Trace
A função Diagnostics.Trace é usada para registrar mensagens no log de rastreamento do
mecanismo da M.
Power Query M
) Importante
O parâmetro traceLevel pode ser um dos seguintes valores (em ordem decrescente):
TraceLevel.Critical
TraceLevel.Error
TraceLevel.Warning
TraceLevel.Information
TraceLevel.Verbose
O parâmetro message é o texto real que será gerado para o arquivo de rastreamento.
Observe que o texto não conterá o parâmetro value , a menos que você o inclua
explicitamente no texto.
Power Query M
Você pode forçar um erro durante a avaliação (para fins de teste!) passando um nome
de entidade inválido para a função GetEntity . Aqui você altera a linha withData na
função TripPinNavTable , substituindo [Name] por "DoesNotExist" .
Power Query M
Além disso, na guia Log , você verá a mesma mensagem. Observe que, se você usar
valores diferentes para os parâmetros message e value , elas serão diferentes.
Observe também que o campo Action da mensagem de log contém o nome (Tipo de
Fonte de Dados) da sua extensão (nesse caso, Engine/Extension/TripPin ). Isso facilita a
localização das mensagens relacionadas à sua extensão quando há várias consultas
envolvidas e/ou o rastreamento do sistema (mecanismo de mashup) está habilitado.
Avaliação atrasada
Como exemplo do funcionamento do parâmetro delayed , você fará algumas
modificações e executará as consultas novamente.
Primeiro, defina o valor delayed como false , mas deixe o parâmetro value como está:
Power Query M
Ao executar a consulta, você receberá um erro que "Não é possível converter um valor
do tipo Função em Tipo" e não o erro real gerado. Isso ocorre porque a chamada agora
está retornando um valor function , em vez do valor em si.
Power Query M
Power Query M
Diagnostics.LogValue
A função Diagnostics.LogValue é muito semelhante à Diagnostics.Trace e pode ser
usada para gerar o valor do que você está avaliando.
Power Query M
O parâmetro prefix é colocado antes da mensagem de log. Você usaria isso para
descobrir qual chamada gerou a mensagem. O parâmetro value é o que a função
retornará e também será gravado no rastreamento como uma representação de texto
do valor M. Por exemplo, se value for igual a um table com colunas A e B, o log
conterá a representação #table equivalente: #table({"A", "B"}, {{"row1 A", "row1
B"}, {"row2 A", row2 B"}})
7 Observação
Serializar valores de M em texto pode ser uma operação cara. Tome cuidado com o
tamanho potencial dos valores que você está gerando para o rastreamento.
7 Observação
Como exemplo, você atualizará a função TripPin.Feed para rastrear os argumentos url
e schema passados para a função.
Power Query M
Observe que você precisa usar os novos valores _url e _schema na chamada para
GetAllPagesByNextLink . Se você usar os parâmetros originais da função, as chamadas
Acessando a URL:
Tipo de esquema:
Observe que você vê a versão serializada do parâmetro schema type , em vez do que
obteria ao fazer um simples Text.FromValue em um valor de tipo (o que resulta em
"tipo").
Diagnostics.LogFailure
A função Diagnostics.LogFailure pode ser usada para encapsular chamadas de função
e só gravará no rastreamento se a chamada de função falhar (ou seja, retornar um
error ).
Power Query M
Power Query M
No rastreamento, você pode encontrar a mensagem de erro resultante que contém seu
text e as informações de erro originais.
Não se esqueça de redefinir a função para um estado operacional antes de prosseguir
com o próximo tutorial.
Conclusão
Esta breve (mas importante) lição mostrou como usar as funções auxiliares de
diagnóstico para fazer registrar nos arquivos de rastreamento do Power Query. Quando
usadas corretamente, essas funções são extremamente úteis na depuração de
problemas no conector.
7 Observação
Próximas etapas
TripPin Parte 9 – TestConnection
TripPin parte 9 – TestConnection
Artigo • 23/03/2023
Este tutorial de várias partes aborda a criação de uma nova extensão de fonte de dados
para o Power Query. O tutorial deve ser seguido sequencialmente; cada lição se baseia
no conector criado nas lições anteriores, adicionando incrementalmente novos recursos
a ele.
Tela de fundo
Há três pré-requisitos para configurar uma fonte de dados para atualização agendada
usando PowerBI.com:
Os dois primeiros itens são manipulados registrando seu conector com o gateway.
Quando o usuário tenta configurar a atualização agendada no PowerBI.com, as
informações de consulta são enviadas ao gateway pessoal para determinar se as fontes
de dados que não são reconhecidas pelo serviço do Power BI (ou seja, as personalizadas
que você criou) estão disponíveis lá. O terceiro item é tratado invocando o manipulador
TestConnection definido para sua fonte de dados.
Power Query M
7 Observação
7 Observação
Conclusão
Parabéns! Agora você tem um conector personalizado pronto para produção que dá
suporte à atualização automatizada por meio do serviço do Power BI.
Próximas etapas
TripPin Parte 10 – Dobramento de consulta
TripPin parte 10 – Dobragem de
consulta básica
Artigo • 23/03/2023
Este tutorial de várias partes aborda a criação de uma extensão de fonte de dados para
o Power Query. O tutorial deve ser seguido sequencialmente. Cada lição se baseia no
conector criado nas lições anteriores, adicionando incrementalmente novos recursos ao
conector.
$top
$skip
$count
$select
$orderby
Ao criar um conector personalizado que usa uma função M com recursos internos de
dobragem de consultas, como OData.Feed ou Odbc.DataSource, seu conector herdará
automaticamente essa funcionalidade sem custos.
Para entender mais sobre as funcionalidades de consulta que um serviço OData pode
oferecer, acesse Convenções de URL do OData v4 .
7 Observação
Conforme indicado acima, a função OData.Feed fornecerá automaticamente
recursos de dobragem de consultas. Como a série TripPin está tratando o serviço
OData como uma API REST regular, usando Web.Contents em vez de OData.Feed,
você precisará implementar os manipuladores de dobragem de consultas por conta
própria. No mundo real, recomendamos que você use OData.Feed sempre que
possível.
Acesse Dobragem de consultas do Power Query para obter mais informações sobre a
dobragem de consultas.
Usando Table.View
A função Table.View permite que um conector personalizado substitua manipuladores
de transformação padrão em sua fonte de dados. Uma implementação da Table.View
fornecerá uma função para um ou mais manipuladores com suporte. Se um
manipulador não for implementado ou retornar um error durante a avaliação, o
mecanismo da M fará fallback no manipulador padrão.
Quando um conector personalizado usa uma função que não dá suporte implícito à
dobragem de consultas, como Web.Contents, manipuladores de transformação padrão
sempre serão executados localmente. Se a API REST à qual você está se conectando dá
suporte a parâmetros de consulta como parte da consulta, a Table.View permite
adicionar otimizações que possibilitam que o trabalho de transformação seja enviado
por push para o serviço.
Power Query M
Power Query M
TripPin.SuperSimpleView = (url as text, entity as text) as table =>
Table.View(null, [
GetType = () => Value.Type(GetRows()),
GetRows = () => GetEntity(url, entity)
]);
Power Query M
Power Query M
//
// Helper functions
//
// Retrieves the cached schema. If this is the first call
// to CalculateSchema, the table type is calculated based on
// the entity name that was passed into the function.
CalculateSchema = (state) as type =>
if (state[Schema]? = null) then
GetSchemaForEntity(entity)
else
state[Schema],
As funções GetType e GetRows foram atualizadas para usar duas novas funções
auxiliares: CalculateSchema e CalculateUrl . No momento, as implementações dessas
funções são bastante simples: você observará que elas contêm partes do que foi feito
anteriormente pela função GetEntity .
Por fim, você observará que está definindo uma função interna ( View ) que aceita um
parâmetro state . À medida que você implementa mais manipuladores, eles chamarão
recursivamente a função interna View , atualizando e passando state à medida que são
executados.
novamente os testes de unidade. Você ainda não verá nenhuma nova funcionalidade,
mas agora tem uma linha de base sólida para testar.
Implementando a dobragem de consulta
Como o mecanismo da M fará fallback automaticamente no processamento local
quando uma consulta não puder ser dobrada, você deverá executar algumas etapas
adicionais para validar se os manipuladores da Table.View estão funcionando
corretamente.
Não foi possível dobrar a expressão para a fonte. Tente uma expressão mais simples.
Você pode testar isso adicionando um novo Fact ao arquivo de teste de unidade que
contém uma ou mais transformações de tabela.
Power Query M
7 Observação
Power Query M
Esses testes usam Table.FirstN para filtrar o conjunto de resultados para o primeiro
número X de linhas. Se você executar esses testes com Erro na Falha de Dobragem
definido como False (o padrão), os testes deverão ter êxito, mas se você executar o
Fiddler (ou verificar os logs de rastreamento), observará que a solicitação enviada não
contém nenhum parâmetro de consulta OData.
Se você definir Erro na Falha de Dobragem como True , os testes falharão com o erro
Please try a simpler expression. . Para corrigir isso, você definirá seu primeiro
manipulador Table.View para OnTake .
Power Query M
A função CalculateUrl é atualizada para extrair o valor Top do registro state e definir
o parâmetro correto na cadeia de caracteres de consulta.
Power Query M
encodedQueryString = Uri.BuildQueryString(qsWithTop),
finalUrl = urlWithEntity & "?" & encodedQueryString
in
finalUrl
Ao executar novamente os testes de unidade, você observará que a URL que você está
acessando agora contém o parâmetro $top . (Observe que, devido à codificação da URL,
$top aparece como %24top , mas o serviço OData é inteligente o suficiente para
convertê-lo automaticamente).
Testes de unidade:
Power Query M
// OnSkip
Fact("Fold $skip 14 on Airlines",
#table( type table [AirlineCode = text, Name = text] , {{"EK",
"Emirates"}} ),
Table.Skip(Airlines, 14)
),
Fact("Fold $skip 0 and $top 1",
#table( type table [AirlineCode = text, Name = text] , {{"AA", "American
Airlines"}} ),
Table.FirstN(Table.Skip(Airlines, 0), 1)
),
Implementação:
Power Query M
Power Query M
qsWithSkip =
if (state[Skip]? <> null) then
qsWithTop & [ #"$skip" = Number.ToText(state[Skip]) ]
else
qsWithTop,
Nos termos do OData, essa operação será mapeada para a opção de consulta $select .
Testes de unidade:
Power Query M
// OnSelectColumns
Fact("Fold $select single column",
#table( type table [AirlineCode = text] , {{"AA"}} ),
Table.FirstN(Table.SelectColumns(Airlines, {"AirlineCode"}), 1)
),
Fact("Fold $select multiple column",
#table( type table [UserName = text, FirstName = text, LastName = text],
{{"russellwhyte", "Russell", "Whyte"}}),
Table.FirstN(Table.SelectColumns(People, {"UserName", "FirstName",
"LastName"}), 1)
),
Fact("Fold $select with ignore column",
#table( type table [AirlineCode = text] , {{"AA"}} ),
Table.FirstN(Table.SelectColumns(Airlines, {"AirlineCode",
"DoesNotExist"}, MissingField.Ignore), 1)
),
7 Observação
7 Observação
Power Query M
Power Query M
Power Query M
Nos termos do OData, essa operação será mapeada para a opção de consulta
$orderby . A sintaxe $orderby tem o nome da coluna seguido por asc ou desc para
indicar a ordem crescente ou decrescente. Ao classificar em várias colunas, os valores
são separados com uma vírgula. Observe que, se o parâmetro columns contiver mais de
um item, é importante manter a ordem na qual eles aparecem.
Testes de unidade:
Power Query M
// OnSort
Fact("Fold $orderby single column",
#table( type table [AirlineCode = text, Name = text], {{"TK", "Turkish
Airlines"}}),
Table.FirstN(Table.Sort(Airlines, {{"AirlineCode", Order.Descending}}),
1)
),
Fact("Fold $orderby multiple column",
#table( type table [UserName = text], {{"javieralfred"}}),
Table.SelectColumns(Table.FirstN(Table.Sort(People, {{"LastName",
Order.Ascending}, {"UserName", Order.Descending}}), 1), {"UserName"})
)
Implementação:
Power Query M
Atualização no CalculateUrl :
Power Query M
qsWithOrderBy =
if (state[OrderBy]? <> null) then
qsWithSelect & [ #"$orderby" = state[OrderBy] ]
else
qsWithSelect,
Você tem algumas opções diferentes para lidar com isso como parte de uma consulta
OData:
Power Query M
// GetRowCount
Fact("Fold $count", 15, Table.RowCount(Airlines)),
Power Query M
A implementação usará essa função (se nenhum outro parâmetro de consulta for
encontrado no state ):
Power Query M
Power Query M
Para testar o caso de fallback, você adicionará outro teste que forçará o erro.
Primeiro, adicione um método auxiliar que verifica o resultado de uma operação try
para um erro de dobragem.
Power Query M
Power Query M
Conclusão
A implementação de Table.View em seu conector adiciona uma quantidade significativa
de complexidade ao código. Como o mecanismo da M pode processar todas as
transformações localmente, a adição de manipuladores Table.View não habilita novos
cenários para seus usuários, mas resultará em um processamento mais eficiente (e,
potencialmente, usuários mais felizes). Uma das principais vantagens dos manipuladores
Table.View serem opcionais é que isso permite adicionar incrementalmente novas
funcionalidades sem afetar a compatibilidade com versões anteriores do conector.
Antes de começar a criar uma extensão M, você precisa registrar um novo aplicativo no
GitHub e substituir os arquivos client_id e client_secret pelos valores apropriados
para seu aplicativo.
OAuth e Power BI
OAuth é uma forma de delegação de credenciais. Ao fazer logon no GitHub e autorizar
o "aplicativo" criado para o GitHub, o usuário permite que seu "aplicativo" faça logon
em seu nome para recuperar dados no Power BI. O "aplicativo" deve receber direitos
para recuperar dados (obter um access_token) e atualizar os dados em um
agendamento (obter e usar um refresh_token). Seu "aplicativo" nesse contexto é o
Conector de Dados usado para executar consultas no Power BI. O Power BI armazena e
gerencia o access_token e o refresh_token em seu nome.
7 Observação
Para permitir que o Power BI obtenha e use o access_token, você deve especificar a
url de redirecionamento como
https://oauth.powerbi.com/views/oauthredirect.html .
Quando você especificar essa URL e o GitHub autenticar e conceder permissões com
sucesso, o GitHub redirecionará para o ponto de extremidade oauthredirect do PowerBI
para que o Power BI possa recuperar o access_token e o refresh_token.
Como registrar um aplicativo GitHub
Sua extensão do Power BI precisa fazer logon no GitHub. Para habilitar isso, registre um
novo aplicativo OAuth com o GitHub em
https://github.com/settings/applications/new .
7 Observação
1. Crie uma definição de Tipo de Fonte de Dados que declare que dá suporte ao
OAuth.
2. Forneça detalhes para que o mecanismo M possa iniciar o fluxo do OAuth
( StartLogin ).
3. Converta o código recebido do GitHub em um access_token ( FinishLogin e
TokenMethod ).
redirect_uri string A URL no seu aplicativo para o qual os usuários serão enviados depois da
autorização. Veja detalhes abaixo sobre as URLs de redirecionamento. Para
extensões M, redirect_uri deve ser
"https://oauth.powerbi.com/views/oauthredirect.html".
scope string Lista de escopos separados por vírgulas Se não for fornecido, o escopo será
padrão para uma lista vazia de escopos para usuários que não têm um
token válido para o aplicativo. Para usuários que já têm um token válido
para o aplicativo, a página de autorização OAuth com a lista de escopos
não será exibida para o usuário. Em vez disso, essa etapa do fluxo será
concluída automaticamente com os mesmos escopos que foram usados na
última vez em que o usuário concluiu o fluxo.
state string Uma string aleatória indescritível. É usada para proteger contra ataques de
solicitação intersite forjada.
O snippet de código a seguir descreve como implementar uma função StartLogin para
iniciar o fluxo de logon. Uma função StartLogin usa um valor resourceUrl , state e
display . Na função, crie um AuthorizeUrl que concatena a URL de autorização do
GitHub com os seguintes parâmetros:
client_id : você obtém a ID do cliente depois de registrar sua extensão no GitHub
Se essa for a primeira vez que o usuário estiver fazendo logon com seu aplicativo
(identificado por seu valor client_id ), ele verá uma página que solicita que ele conceda
acesso ao seu aplicativo. As tentativas de logon subsequentes somente solicitarão suas
credenciais.
client_secret string Obrigatório. O segredo do cliente que você recebeu do GitHub quando se
registrou.
redirect_uri string A URL no seu aplicativo para o qual os usuários serão enviados depois da
autorização. Veja detalhes abaixo sobre as URLs de redirecionamento.
Este snippet de código descreve como implementar uma função TokenMethod para
trocar um código de autenticação por um token de acesso.
Exemplo de resposta:
JSON
{
"access_token":"e72e16c7e42f292c6912e7710c838347ae178b4a",
"scope":"user,repo",
"token_type":"bearer"
}
[DataSource.Kind="GithubSample", Publish="GithubSample.UI"]
shared GithubSample.Contents = Value.ReplaceType(Github.Contents, type
function (url as Uri.Type) as any);
[DataSource.Kind="GithubSample"]
shared GithubSample.PagedTable = Value.ReplaceType(Github.PagedTable, type
function (url as Uri.Type) as nullable table);
Para saber mais detalhes sobre como funciona a credencial e a autenticação, consulte
Como lidar com a autenticação.
URL de exemplo
Esse conector é capaz de recuperar dados formatados de qualquer um dos pontos de
extremidade da API REST do GitHub v3. Por exemplo, a consulta para efetuar pull de
todas as confirmações para o repositório de Conectores de Dados seria semelhante a
esta:
GithubSample.Contents("https://api.github.com/repos/microsoft/dataconnectors
/commits")
Lista de exemplos
Artigo • 23/03/2023
Funcionalidade
Amostra Descrição Link
Olá, Mundo Este exemplo simples mostra a estrutura básica de um conector. Link do
GitHub
Olá, Mundo Semelhante a Olá, Mundo, este exemplo mostra como adicionar Link do
com documentações a uma função compartilhada. GitHub
documentações
Tabelas de Este exemplo fornece dois modelos de como criar uma tabela de Link do
navegação navegação para o conector de dados usando a função GitHub
Table.ToNavigationTable .
Teste de Este exemplo mostra como adicionar testes de unidade simples ao Link do
Unidade arquivo <extension>.query.pq. GitHub
OAuth
Amostra Descrição Link
ODBCODBC
Amostra Descrição Link
SQL Este exemplo de conector serve como um modelo para conectores Link do
ODBC. GitHub
Amostra Descrição Link
Redshift Este exemplo de conector usa o driver ODBC do Redshift e se baseia Link do
no modelo de conector. GitHub
LLAP do Este exemplo de conector usa o driver ODBC do Hive e se baseia no Link do
Hive modelo de conector. GitHub
Impala Este exemplo de conector usa o driver ODBC do Cloudera Impala e se Link do
baseia no modelo de conector. GitHub
TripPin
Amostra Descrição Link
Funcionalidade
Amostra Descrição Link
Olá, Mundo Este exemplo simples mostra a estrutura básica de um conector. Link do
GitHub
Olá, Mundo Semelhante a Olá, Mundo, este exemplo mostra como adicionar Link do
com documentações a uma função compartilhada. GitHub
documentações
Tabelas de Este exemplo fornece dois modelos de como criar uma tabela de Link do
navegação navegação para o conector de dados usando a função GitHub
Table.ToNavigationTable .
Teste de Este exemplo mostra como adicionar testes de unidade simples ao Link do
Unidade arquivo <extension>.query.pq. GitHub
OAuth
Amostra Descrição Link
ODBCODBC
Amostra Descrição Link
SQL Este exemplo de conector serve como um modelo para conectores Link do
ODBC. GitHub
Amostra Descrição Link
Redshift Este exemplo de conector usa o driver ODBC do Redshift e se baseia Link do
no modelo de conector. GitHub
LLAP do Este exemplo de conector usa o driver ODBC do Hive e se baseia no Link do
Hive modelo de conector. GitHub
Impala Este exemplo de conector usa o driver ODBC do Cloudera Impala e se Link do
baseia no modelo de conector. GitHub
TripPin
Amostra Descrição Link
Funcionalidade
Amostra Descrição Link
Olá, Mundo Este exemplo simples mostra a estrutura básica de um conector. Link do
GitHub
Olá, Mundo Semelhante a Olá, Mundo, este exemplo mostra como adicionar Link do
com documentações a uma função compartilhada. GitHub
documentações
Tabelas de Este exemplo fornece dois modelos de como criar uma tabela de Link do
navegação navegação para o conector de dados usando a função GitHub
Table.ToNavigationTable .
Teste de Este exemplo mostra como adicionar testes de unidade simples ao Link do
Unidade arquivo <extension>.query.pq. GitHub
OAuth
Amostra Descrição Link
ODBCODBC
Amostra Descrição Link
SQL Este exemplo de conector serve como um modelo para conectores Link do
ODBC. GitHub
Amostra Descrição Link
Redshift Este exemplo de conector usa o driver ODBC do Redshift e se baseia Link do
no modelo de conector. GitHub
LLAP do Este exemplo de conector usa o driver ODBC do Hive e se baseia no Link do
Hive modelo de conector. GitHub
Impala Este exemplo de conector usa o driver ODBC do Cloudera Impala e se Link do
baseia no modelo de conector. GitHub
TripPin
Amostra Descrição Link
Autenticação
Embora a implementação da autenticação seja abordada no artigo de autenticação , há
outros métodos que os proprietários do conector podem estar interessados em
oferecer.
Autenticação do Windows
A autenticação do Windows tem suporte. Para habilitar a autenticação baseada no
Windows em seu conector, adicione a linha a seguir na seção Autenticação do conector.
Power Query M
O SSO baseado em Azure Active Directory (Azure AD) tem suporte em cenários de
nuvem. A fonte de dados deve aceitar tokens de acesso Azure AD, pois o token de
usuário do Power BI Azure AD será trocado com um token de fonte de dados de Azure
AD. Se você tiver um conector certificado, entre em contato com o contato da Microsoft
para saber mais.
Kerberos SSO
Há suporte para logon único baseado em Kerberos em cenários de gateway. A fonte de
dados deve dar suporte a autenticação do Windows. Geralmente, esses cenários
envolvem relatórios baseados em Consulta Direta e um conector com base em um
driver ODBC. Os principais requisitos para o driver são que ele possa determinar as
configurações kerberos do contexto atual da thread e que ele dê suporte à
representação do usuário baseada em thread. O gateway deve ser configurado para dar
suporte à KCD (Delegação Restrita de Kerberos). Um exemplo pode ser encontrado no
conector de exemplo do Impala .
4. Modifique seu aplicativo de teste para que ele possa usar um nome de usuário
(UPN) como um argumento e usar o construtor windowsIdentity com ele. Após a
conclusão, com os privilégios concedidos à conta de gateway configuradas na
Etapa 1, você poderá obter a propriedade AccessToken do usuário e representar
esse token.
Depois que essa funcionalidade for validada, a Microsoft fará uma alteração para
colocar o UPN do Serviço do Power BI para baixo por meio do gateway. Uma vez no
gateway, ele agirá essencialmente da mesma maneira que seu aplicativo de teste para
recuperar dados.
Entre em contato com seu contato da Microsoft antes de começar a trabalhar para
saber mais sobre como solicitar essa alteração.
SSO do SAML
O SSO baseado em SAML geralmente não tem suporte por fontes de dados finais e não
é uma abordagem recomendada. Se o cenário exigir o uso do SSO baseado em SAML,
entre em contato com o contato da Microsoft ou visite nossa documentação para saber
mais.
Tipos de autenticação
Uma extensão pode dar suporte a um ou mais tipos de Autenticação. Cada tipo de
autenticação é um tipo diferente de credencial. A interface do usuário de autenticação
exibida para usuários finais no Power Query é controlada pelo tipo de credenciais
compatíveis com uma extensão.
A lista de tipos de autenticação com suporte é definida como parte da definição do Tipo
de Fonte de Dados de uma extensão. Cada valor de Autenticação é um registro com
campos específicos. A tabela a seguir lista os campos esperados para cada tipo. Todos
os campos são obrigatórios, a menos que marcado de outra forma.
Exemplo:
Power Query M
Authentication = [
OAuth = [
StartLogin = StartLogin,
FinishLogin = FinishLogin,
Refresh = Refresh,
Logout = Logout
],
Key = [],
UsernamePassword = [],
Windows = [],
Anonymous = []
]
O exemplo de código a seguir acessa a credencial atual de uma chave de API e a usa
para preencher um cabeçalho personalizado ( x-APIKey ).
Exemplo:
Power Query M
#"x-APIKey" = apiKey,
Accept = "application/vnd.api+json",
#"Content-Type" = "application/json"
],
request = Web.Contents(_url, [ Headers = headers, ManualCredentials =
true ])
in
request
Power Query M
7 Observação
7 Observação
Se você implementar seu próprio fluxo OAuth para o Azure AD, os usuários com o
Acesso Condicional habilitado para seus locatários poderão encontrar problemas
ao atualizar usando o serviço do Power BI. Isso não afetará a atualização baseada
em gateway, mas afetará um conector certificado que dá suporte à atualização do
serviço do Power BI. Os usuários poderão ter um problema decorrente do conector
usando um aplicativo cliente público ao configurar credenciais baseadas na Web
por meio do serviço do Power BI. Dessa forma, o token de acesso gerado por esse
fluxo será usado em um computador diferente (ou seja, o serviço do Power BI em
um data center do Azure, não na rede da empresa) do que aquele usado para
autenticar originalmente (ou seja, o computador do usuário que configura as
credenciais da fonte de dados na rede da empresa). O tipo interno Aad resolve esse
problema usando um cliente do Azure AD diferente ao configurar credenciais no
serviço do Power BI. Essa opção não estará disponível para conectores que usam o
tipo de autenticação OAuth .
Power Query M
AuthorizationUri =
"https://login.microsoftonline.com/common/oauth2/authorize"
Power Query M
Power Query M
Power Query M
Power Query M
Authentication = [
Aad = [
AuthorizationUri =
"https://login.microsoftonline.com/common/oauth2/authorize",
Resource = "77256ee0-fe79-11ea-adc1-0242ac120002" // Azure AD
resource value for your service - Guid or URL
]
]
No caso a seguir, a fonte de dados oferece suporte à descoberta de locatário com base
no OpenID Connect (OIDC) ou protocolo semelhante. Essa capacidade permite que o
conector determine o ponto de extremidade correto do Azure AD a ser usado com base
em um ou mais parâmetros no caminho da fonte de dados. Essa abordagem de
descoberta dinâmica permite que o conector dê suporte ao Azure B2B.
Power Query M
Authentication = [
Aad = [
AuthorizationUri = (dataSourcePath) =>
GetAuthorizationUrlFromWwwAuthenticate(
GetServiceRootFromDataSourcePath(dataSourcePath)
),
Resource = "https://myAadResourceValue.com", // Azure AD resource
value for your service - Guid or URL
]
]
Web.Contents
OData.Feed
Odbc.DataSource
AdoDotNet.DataSource
OleDb.DataSource
Exemplo:
[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;
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 fins de Tipo de Fonte de Dados,
um parâmetro não é considerado necessário se estiver marcado optional ou se seus
metadados contiverem DataSource.Path = false .)
As funções de um tipo de fonte de dados específico só podem usar credenciais
associadas a esse tipo. As credenciais são identificadas em runtime realizando uma
pesquisa com base na combinação dos parâmetros necessários da função. Para mais
informações sobre como as credenciais são identificadas, consulte Caminhos da Fonte
de Dados.
Exemplo:
HelloWorld = [
Authentication = [
Implicit = []
],
Label = Extension.LoadString("DataSourceLabel")
];
Propriedades
A tabela a seguir lista os campos do registro de definição da Fonte de Dados.
Exemplo:
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 a seguir lista os campos para seu registro de Publicação.
ButtonText lista Lista de itens de texto. O primeiro item define o nome exibido ao
lado do ícone da fonte de dados na caixa de diálogo Obter
Dados do Power BI. O segundo item (opcional) define a dica de
ferramenta que será exibida quando o nome anterior for passado
com o mouse.
Categoria text Onde a extensão deve ser exibida na caixa de diálogo Obter
Dados. Atualmente, os únicos valores de categoria com entrega
especial são Azure e Database . Todos os outros valores irão para
a categoria Outros.
LearnMoreUrl text (opcional) URL para o site contendo mais informações sobre
essa fonte de dados ou conector.
7 Observação
Consulte o Exemplo de SqlODBC para obter a maioria dos exemplos de código nas
seções a seguir. Outros exemplos podem ser encontrados no diretório de exemplos do
ODBC.
A função Odbc.Query permite executar instruções SQL por meio de um driver ODBC. Ele
atua como uma passagem para a execução da consulta. Ao contrário da função
Odbc.DataSource , ela não fornece a funcionalidade de dobragem de consulta e exige
que as consultas SQL sejam fornecidas pelo conector (ou pelo usuário final). Ao criar um
conector personalizado, em geral, essa função é usada internamente para executar
consultas para recuperar metadados que talvez não sejam expostos por meio de canais
ODBC regulares. A função aceita dois argumentos: uma cadeia de conexão e uma
consulta SQL.
Exija o conjunto mínimo de parâmetros usados para estabelecer uma conexão com
o servidor. Quanto menos parâmetros os usuários finais precisarem fornecer, mais
fácil será o uso do conector.
Embora você possa definir parâmetros com um número fixo de valores (ou seja,
uma lista suspensa na interface do usuário), os parâmetros são inseridos antes que
o usuário seja autenticado. Todos os valores, que podem ser descobertos
programaticamente depois que o usuário é autenticado (como catálogo ou nome
de banco de dados), devem ser selecionáveis por meio do Navegador. O
comportamento padrão para a função Odbc.DataSource é retornar uma tabela de
navegação hierárquica que consiste em nomes de Catálogo (Banco de Dados),
Esquema e Tabela. No entanto, esse comportamento pode ser substituído em seu
conector.
Caso você perceba que os usuários normalmente sabem quais valores inserir para
itens que eles selecionariam no Navegador (como o nome do banco de dados),
torne esses parâmetros opcionais. Os parâmetros que podem ser descobertos
programaticamente não devem ser necessários.
O último parâmetro para sua função deve ser um registro opcional chamado
"opções". Esse parâmetro normalmente permite que usuários avançados definam
propriedades comuns relacionadas ao ODBC (como CommandTimeout ) e definam
substituições de comportamento específicas do conector. Também permite
extensibilidade futura sem afetar a compatibilidade com versões anteriores para
sua função.
Por padrão, todos os parâmetros necessários para sua função de fonte de dados são
fatorados no valor Caminho da Fonte de Dados usado para identificar as credenciais de
usuário.
Embora a interface do usuário para a função interna Odbc.DataSource forneça uma lista
suspensa que permite que o usuário selecione um DSN, essa funcionalidade não está
disponível por meio da extensibilidade. Caso a configuração da fonte de dados seja
complexa o suficiente para exigir uma caixa de diálogo de configuração totalmente
personalizável, é recomendável que você exija que os usuários finais pré-configurem um
DSN do sistema e que sua função use o nome DSN como um campo de texto.
Próximas etapas
Parâmetros para Odbc.DataSource
Parâmetros para Odbc.DataSource
Artigo • 13/05/2023
Campo Descrição
Padrão: 10 minutos
Padrão: 15 segundos
Padrão: true
Campo Descrição
Padrão: false
Padrão: true
Campo Descrição
Padrão: false
Campo Descrição
Padrão: false
Padrão: false
Padrão: false
SQLGetTypeInfo Uma tabela ou função que retorna uma tabela que substitui as
informações de tipo retornadas por SQLGetTypeInfo .
Padrão: false
Campo Descrição
UseEmbeddedDriver (uso interno): um valor lógico que controla se o driver ODBC deve
ser carregado de um diretório local (usando nova funcionalidade
definida na especificação ODBC 4.0). Esse valor geralmente é
definido apenas por conectores criados pela Microsoft integrados
ao Power Query.
Padrão: false
Substituir AstVisitor
O campo AstVisitor é definido por meio do registro de opções Odbc.DataSource. Ele é
usado para modificar instruções SQL geradas para cenários de consulta específicos.
7 Observação
Os drivers compatíveis com cláusulas LIMIT e OFFSET (em vez de TOP) precisarão
substituir LimitClause por AstVisitor .
Constante
A substituição desse valor foi preterida e pode ser removida de implementações futuras.
LimitClause
Esse campo é uma função que recebe dois argumentos Int64.Type ( skip , take ) e
retorna um registro com dois campos de texto ( Text , Location ).
O parâmetro skip é o número de linhas a serem ignoradas (ou seja, o argumento para
OFFSET). Se um deslocamento não for especificado, o valor ignorado será nulo. Se o
driver for compatível com LIMIT, mas não aceitar OFFSET, a função LimitClause deverá
retornar um erro não simplificado (...) quando o valor ignorado for maior que 0.
O campo Text do resultado contém o texto SQL a ser adicionado à consulta gerada.
LIMIT 5
FROM table
WHERE a > 10
FROM table
WHERE a > 10
AfterSelectBeforeModifiers LIMIT fica após a instrução SELECT, mas antes SELECT LIMIT 5
de qualquer modificador (como DISTINCT). DISTINCT a, b, c
FROM table
WHERE a > 10
Substituir SqlCapabilities
Campo Detalhes
Padrão: nulo
Padrão: false
Padrão: false
Campo Detalhes
Exemplo: {""}
Padrão: nulo
SupportsNumericLiterals Um valor lógico que indica se o SQL gerado deve incluir valores
de literais numéricos. Quando definidos como false, os valores
numéricos são sempre especificados usando a associação de
parâmetro.
Padrão: false
SupportsStringLiterals Um valor lógico que indica se o SQL gerado deve incluir valores
de literais de cadeia de caracteres. Quando definidos como
false, os valores de cadeia de caracteres são sempre
especificados usando a associação de parâmetro.
Padrão: false
SupportsOdbcDateLiterals Um valor lógico que indica se o SQL gerado deve incluir valores
de literais de data. Quando definidos como false, os valores de
data são sempre especificados usando a associação de
parâmetro.
Padrão: false
Campo Detalhes
SupportsOdbcTimeLiterals Um valor lógico que indica se o SQL gerado deve incluir valores
de literais de hora. Quando definidos como false, os valores de
hora são sempre especificados usando a associação de
parâmetro.
Padrão: false
SupportsOdbcTimestampLiterals Um valor lógico que indica se o SQL gerado deve incluir valores
de literais de carimbo de data/hora. Quando definidos como
false, os valores de carimbo de data/hora são sempre
especificados usando a associação de parâmetro.
Padrão: false
Substituir SQLColumns
SQLColumns é um manipulador de funções que recebe os resultados de uma chamada
ODBC para SQLColumns. O parâmetro de origem contém uma tabela com as
informações de tipo de dados. Normalmente, essa substituição é usada para corrigir
incompatibilidades de tipo de dados entre chamadas SQLGetTypeInfo e SQLColumns .
Para saber mais sobre o formato do parâmetro de tabela de origem, acesse Função
SQLColumns.
Substituir SQLGetFunctions
Esse campo é usado para substituir valores SQLFunctions retornados por um driver
ODBC. Ele contém um registro cujos nomes de campo são iguais às constantes
FunctionId definidas para a função ODBC SQLGetFunctions. Constantes numéricas para
Campo Detalhes
SQL_CONVERT_FUNCTIONS Indica quais funções são aceitas ao fazer conversões de tipo. Por
padrão, o Mecanismo M tenta usar a função CONVERT. Os drivers que
preferem o uso do CAST podem substituir esse valor para relatar que há
compatibilidade apenas com SQL_FN_CVT_CAST (valor numérico de
0x2).
Campo Detalhes
Padrão: false
SQLGetFunctions = [
SQL_CONVERT_FUNCTIONS = 0x2 /* SQL_FN_CVT_CAST */
]
Substituir SQLGetInfo
Esse campo é usado para substituir valores SQLGetInfo retornados por um driver ODBC.
Ele contém um registro cujos campos são nomes são iguais às constantes InfoType
definidas para a função ODBC SQLGetInfo. Constantes numéricas para cada um desses
campos podem ser encontradas na especificação ODBC . A lista completa de
InfoTypes verificados pode ser encontrada nos arquivos de rastreamento do
mecanismo de mashup.
Campo Detalhes
Campo Detalhes
SQL_AF_ALL
SQL_AF_AVG
SQL_AF_COUNT
SQL_AF_DISTINCT
SQL_AF_MAX
SQL_AF_MIN
SQL_AF_SUM
Esta função auxiliar pode ser usada para criar valores de bitmask de uma lista de valores
inteiros:
Um valor fixo table que contém as mesmas informações de tipo que uma
chamada ODBC para SQLGetTypeInfo .
Uma função que aceita um argumento de tabela e retorna uma tabela. O
argumento contém os resultados originais da chamada ODBC para
SQLGetTypeInfo . Sua implementação de função pode modificar ou adicionar a esta
tabela.
Para saber mais sobre o formato dos tipos de parâmetro de tabela e o valor de retorno
esperado, acesse Referência da função SQLGetTypeInfo.
SQLGetTypeInfo = #table(
{ "TYPE_NAME", "DATA_TYPE", "COLUMN_SIZE", "LITERAL_PREF",
"LITERAL_SUFFIX", "CREATE_PARAS", "NULLABLE", "CASE_SENSITIVE",
"SEARCHABLE", "UNSIGNED_ATTRIBUTE", "FIXED_PREC_SCALE", "AUTO_UNIQUE_VALUE",
"LOCAL_TYPE_NAME", "MINIMUM_SCALE", "MAXIMUM_SCALE", "SQL_DATA_TYPE",
"SQL_DATETIME_SUB", "NUM_PREC_RADIX", "INTERNAL_PRECISION", "USER_DATA_TYPE"
}, {
O snippet de código abaixo mostra a definição de uma nova função de fonte de dados,
criação do registro ConnectionString e invocação da função Odbc.DataSource.
[DataSource.Kind="SqlODBC", Publish="SqlODBC.Publish"]
shared SqlODBC.Contents = (server as text) =>
let
ConnectionString = [
Driver = "SQL Server Native Client 11.0",
Server = server,
MultiSubnetFailover = "Yes",
ApplicationIntent = "ReadOnly",
APP = "PowerBICustomConnector"
],
OdbcDatasource = Odbc.DataSource(ConnectionString)
in
OdbcDatasource;
Próximas etapas
Testar e solucionar problemas de um conector baseado em ODBC
Testar e solucionar problemas de um
conector baseado em ODBC
Artigo • 13/05/2023
Ao criar seu conector baseado em ODBC, é uma boa ideia testá-lo ocasionalmente e
solucionar os problemas dele. Esta seção descreve como configurar e usar algumas
ferramentas de teste e solução de problemas.
7. As expressões que não forem dobradas resultarão em uma barra de aviso. Observe
a falha, remova a etapa e passe para o próximo caso de teste. Os detalhes sobre a
causa da falha devem ser emitidos para os logs de rastreamento.
8. Feche o Power BI Desktop.
9. Copie os arquivos de rastreamento para um novo diretório.
10. Abra os arquivos de rastreamento no editor de texto de sua escolha.
11. Pesquise por entradas OdbcQuery/FoldingWarning nos arquivos de rastreamento.
Essas entradas devem conter mais informações sobre por que o mecanismo de
consulta acredita que a dobragem de consulta não é possível para essa operação.
7 Observação
Atualmente, a função DAX CONCATENATE não tem suporte nas extensões Power
Query/ODBC. Os autores da extensão devem garantir que a concatenação de
cadeia de caracteres funcione por meio do editor de consultas adicionando colunas
calculadas ( [stringCol1] & [stringCol2] ). Quando a capacidade de dobrar a
operação CONCATENATE for adicionada no futuro, ela deverá funcionar
perfeitamente com extensões existentes.
Tratamento de caminho de recurso
Artigo • 05/10/2023
O mecanismo da M identifica uma fonte de dados usando uma combinação de seu Tipo
e Caminho. Quando uma fonte de dados é encontrada durante uma avaliação de
consulta, o mecanismo M tenta encontrar credenciais correspondentes. Se nenhuma
credencial for encontrada, o mecanismo retornará um erro especial que resultará em um
prompt de credenciais no Power Query.
Por padrão, você pode ver o valor real da cadeia de caracteres na caixa de diálogo
Configurações da fonte de dados no Power BI Desktop e no prompt de credenciais. Se
a definição do Tipo de Fonte de Dados tiver incluído um valor Label , então você verá o
valor do rótulo.
Power Query M
A função tem um único parâmetro necessário ( message ) do tipo text , e é usado para
calcular o caminho da fonte de dados. O parâmetro opcional ( count ) é ignorado. O
caminho seria exibido da seguinte maneira:
Solicitação de credenciais
Interface do usuário das configurações da fonte de dados
Atualmente, recomendamos que você não inclua um Rótulo para sua fonte de
dados se sua função tiver parâmetros necessários, pois os usuários não poderão
distinguir entre as diferentes credenciais inseridas. Esperamos melhorar isso no
futuro (ou seja, permitir que os conectores de dados exibam seus próprios
caminhos de fonte de dados personalizados).
Power Query M
Power Query M
As APIs REST normalmente têm algum mecanismo para transmitir grandes volumes de
registros divididos em páginas de resultados. O Power Query tem a flexibilidade de dar
suporte a vários mecanismos de paginação. No entanto, como cada mecanismo de
paginação é diferente, é provável que seja necessária alguma modificação nos exemplos
de paginação para se ajustarem à sua situação.
Padrões típicos
O trabalho pesado de compilação de todos os resultados da página em uma única
tabela é executado pela função auxiliar Table.GenerateByPage(), que geralmente pode
ser usada sem modificação. Os snippets de código apresentados na seção
Table.GenerateByPage() da função auxiliar descrevem como implementar alguns
Transformações estáticas
Na maioria dos casos, os dados são apresentados de forma consistente pela fonte de
dados: nomes de coluna, tipos de dados e estrutura hierárquica são consistentes para
um determinado ponto de extremidade. Nessa situação, sempre é apropriado aplicar o
mesmo conjunto de transformações para obter dados em um formato que o Power BI
aceita.
Power Query M
let
Source =
TripPin.Feed("https://services.odata.org/v4/TripPinService/Airlines"),
value = Source[value],
toTable = Table.FromList(value, Splitter.SplitByNothing(), null, null,
ExtraValues.Error),
expand = Table.ExpandRecordColumn(toTable, "Column1", {"AirlineCode",
"Name"}, {"AirlineCode", "Name"})
in
expand
No final, o resultado são dados em um formato tabular simples que o Power BI pode
consumir e renderizar facilmente:
Esse alto nível de especificidade pode ser necessário para enviar dados para uma tabela
de navegação, mas para funções de acesso a dados mais gerais, recomenda-se executar
apenas as transformações apropriadas para todos os pontos de extremidade.
7 Observação
Transformações dinâmicas
Às vezes, é necessária uma lógica mais complexa para converter respostas de API em
formas estáveis e consistentes, apropriadas para modelos de dados do Power BI.
Power Query M
raw = Web.Contents(...),
columns = raw[columns],
columnTitles = List.Transform(columns, each [title]),
columnTitlesWithRowNumber = List.InsertRange(columnTitles, 0,
{"RowNumber"}),
Muitas APIs REST não têm uma maneira de determinar programaticamente seu
esquema. Nesses casos, você precisará incluir uma definição de esquema no conector.
No geral, a imposição de um esquema nos dados retornados pelo conector tem vários
benefícios, como:
Power Query M
let
url = "https://services.odata.org/TripPinWebApiService/Airlines",
source = Json.Document(Web.Contents(url))[value],
asTable = Table.FromRecords(source)
in
asTable
7 Observação
TripPin é uma fonte do OData; portanto, praticamente, faria mais sentido usar
apenas o tratamento automático de esquema da função OData.Feed . Neste
exemplo, você tratará a origem como uma API REST típica e usará Web.Contents
para demonstrar a técnica de codificação manual de um esquema.
Você pode usar a função útil Table.Schema para verificar o tipo de dados das colunas:
Power Query M
let
url = "https://services.odata.org/TripPinWebApiService/Airlines",
source = Json.Document(Web.Contents(url))[value],
asTable = Table.FromRecords(source)
in
Table.Schema(asTable)
O Código de Companhia Aérea e o Nome são do tipo any . Table.Schema retorna muitos
metadados sobre as colunas em uma tabela, incluindo nomes, posições, informações de
tipo e muitas propriedades avançadas, como Precisão, Escala e Tamanho máximo. Por
enquanto, você só deve se preocupar com o tipo atribuído ( TypeName ), o tipo primitivo
( Kind ) e se o valor da coluna pode ser nulo ( IsNullable ).
Column Detalhes
Nome O nome da coluna. Isso deve corresponder ao nome nos resultados retornados pelo
serviço.
Column Detalhes
Tipo O tipo de dados da linguagem M que você vai definir. Pode ser um tipo primitivo
(texto, número, datetime e assim por diante) ou um tipo inscrito (Int64.Type,
Currency.Type e assim por diante).
Power Query M
Ao olhar para alguns dos outros pontos de extremidade, considere as seguintes tabelas
de esquema:
A tabela Airports tem quatro campos que você deseja manter (incluindo um do tipo
record ):
Power Query M
A tabela People tem sete campos, incluindo list s ( Emails , AddressInfo ), uma coluna
anulável ( Gender ) e uma coluna com um tipo inscrito ( Concurrency ):
Power Query M
Power Query M
7 Observação
Abordagem sofisticada
A implementação codificada discutida acima faz um bom trabalho de garantir que os
esquemas permaneçam consistentes para respostas JSON simples, mas está limitada à
análise do primeiro nível da resposta. Conjuntos de dados profundamente aninhados se
beneficiariam da abordagem a seguir, que aproveita os Tipos M.
Um valor de tipo é um valor que classifica outros valores. Um valor classificado por
um tipo obedece a esse tipo. O sistema de tipos de M é composto pelas seguintes
categorias de tipos:
Usando a saída JSON bruta que você obtém (e/ou pesquisando as definições no
$metadata do serviço ), você pode definir os seguintes tipos de registro para
representar tipos complexos OData:
Power Query M
LocationType = type [
Address = text,
City = CityType,
Loc = LocType
];
CityType = type [
CountryRegion = text,
Name = text,
Region = text
];
LocType = type [
#"type" = text,
coordinates = {number},
crs = CrsType
];
CrsType = type [
#"type" = text,
properties = record
];
Observe como LocationType faz referência a CityType e LocType para representar suas
colunas estruturadas.
Para as entidades de nível superior que você deseja representar como Tabelas, é
possível definir tipos de tabela:
Power Query M
Em seguida, é possível atualizar sua variável SchemaTable (que você pode usar como uma
tabela de pesquisa para mapeamentos de entidade para tipo) para usar essas novas
definições de tipo:
Power Query M
Você pode contar com uma função comum (Table.ChangeType) para impor um esquema
em seus dados, assim como você usou SchemaTransformTable no exercício anterior. Ao
contrário de SchemaTransformTable , Table.ChangeType usa um tipo de tabela M real
como um argumento e aplicará seu esquema recursivamente em todos os tipos
aninhados. Sua assinatura é:
Power Query M
7 Observação
Para obter flexibilidade, a função pode ser usada em tabelas e em listas de registros
(que é como as tabelas são representadas em um documento JSON).
A repetição automática
Web.Contents repetirá automaticamente as solicitações que falharem com um dos
seguintes códigos de status:
Código Status
As solicitações serão repetidas até três vezes antes de falhar. O mecanismo usa um
algoritmo de back-off exponencial para determinar quanto tempo deve aguardar até a
próxima repetição, a menos que a resposta contenha um cabeçalho Retry-after .
Quando o cabeçalho é encontrado, o mecanismo aguarda o número especificado de
segundos antes da próxima repetição. O tempo mínimo de espera suportado é de 0,5
segundos, e o valor máximo é de 120 segundos.
7 Observação
Exceções de autenticação
Os códigos de status a seguir resultarão em uma exceção de credenciais, causando um
prompt de autenticação solicitando que o usuário forneça credenciais (ou entre
novamente no caso de um token OAuth expirado).
Código Status
403 Proibido
7 Observação
Redirecionamento
Os seguintes códigos de status resultarão em um redirecionamento automático para o
URI especificado no cabeçalho Location . A falta do cabeçalho Location resultará em
um erro.
Código Status
302 Encontrado
7 Observação
Nesse cenário, você trabalhará com uma API REST que ocasionalmente retorna um
código de status 500, indicando um erro interno do servidor. Nesses casos, você pode
esperar alguns segundos e tentar novamente, potencialmente algumas vezes antes de
desistir.
ManualStatusHandling
Se Web.Contents obtém uma resposta de código de status de 500, ela gera
DataSource.Error por padrão. Você pode substituir esse comportamento ao fornecer
responseCode = Value.Metadata(response)[Response.Status]
IsRetry
O Power Query tem um cache local que armazena os resultados de chamadas anteriores
para Web.Contents. Ao sondar a mesma URL para uma nova resposta ou ao tentar
novamente após um status de erro, você precisará garantir que a consulta ignore os
resultados armazenados em cache. Você pode fazer isso incluindo a opção IsRetry na
chamada para a função Web.Contents . Neste exemplo, definiremos IsRetry como true
após a primeira iteração do loop Value.WaitFor .
Value.WaitFor
Value.WaitFor() é uma função auxiliar padrão que geralmente pode ser usada sem
Argumento producer
Isso contém a tarefa a ser (possivelmente) repetida novamente. É representada como
uma função para que o número de iteração possa ser usado na lógica producer . O
comportamento esperado producer retornará null se uma nova tentativa for
determinada como necessária. Se algo diferente de null for retornado por producer ,
esse valor será retornado por Value.WaitFor .
Argumento delay
Contém a lógica a ser executada entre novas tentativas. É representada como uma
função para que o número de iteração possa ser usado na lógica delay . O
comportamento esperado é que delay retorne uma duração.
Power Query M
section Unittesting;
Esse código de teste unitário é composto por vários Fatos e vários códigos comuns para
a estrutura de teste unitário ( ValueToText , Fact , Facts , Facts.Summarize ). O seguinte
código fornece um conjunto de exemplos de fatos (acesse UnitTesting.query.pq para
o código comum):
Power Query M
section UnitTestingTests;
shared MyExtension.UnitTest =
[
// Put any common variables here if you only want them to be evaluated
once
Power Query M
Uma versão inicial da função pode passar em alguns, mas não em todos os testes:
Power Query M
A versão final da função deve passar em todos os testes unitários. Isso também ajuda a
garantir que atualizações futuras da função não removam acidentalmente nenhuma de
suas funcionalidades básicas.
Funções auxiliares
Artigo • 23/03/2023
Este tópico inclui várias funções auxiliares comumente usadas em extensões M. Essas
funções podem eventualmente ser transferidas para a biblioteca oficial M, mas por
enquanto podem ser copiadas para o código de arquivo de extensão. Não marque
nenhuma dessas funções como shared dentro do código de extensão.
Tabelas de navegação
Table.ToNavigationTable
Essa função adiciona os metadados de tipo de tabela necessários para que sua extensão
retorne um valor de tabela que Power Query possa reconhecer como Árvore de
Navegação. Consulte as Tabelas de Navegação para obter mais informações.
Power Query M
Table.ToNavigationTable = (
table as table,
keyColumns as list,
nameColumn as text,
dataColumn as text,
itemKindColumn as text,
itemNameColumn as text,
isLeafColumn as text
) as table =>
let
tableType = Value.Type(table),
newTableType = Type.AddTableKey(tableType, keyColumns, true) meta
[
NavigationTable.NameColumn = nameColumn,
NavigationTable.DataColumn = dataColumn,
NavigationTable.ItemKindColumn = itemKindColumn,
Preview.DelayColumn = itemNameColumn,
NavigationTable.IsLeafColumn = isLeafColumn
],
navigationTable = Value.ReplaceType(table, newTableType)
in
navigationTable;
Parâmetro Detalhes
keyColumns Lista de nomes de coluna que atuam como chave primária na sua tabela de
navegação.
nameColumn Nome da coluna que deve ser usada como o nome de exibição no
navegador.
itemKindColumn Nome da coluna usada para determinar o tipo de ícone a ser exibido. Os
valores válidos para a coluna estão listados no artigo Manipulando
navegação.
itemNameColumn O nome da coluna usada para determinar o tipo de ícone exibido. Os valores
válidos para a coluna são Table e Function .
Exemplo de uso:
Power Query M
Manipulação de URI
Uri.FromParts
Essa função constrói uma URL completa baseando-se em campos individuais no
registro. Ela atua como o inverso de Uri.Parts.
Power Query M
Uri.GetHost
Essa função retorna o esquema, o host e a porta padrão (para HTTP/HTTPS) para uma
determinada URL. Por exemplo, https://bing.com/subpath/query?param=1¶m2=hello
se tornaria https://bing.com:443 .
Power Query M
ValidateUrlScheme
Essa função verifica se o usuário inseriu uma URL HTTPS e gera um erro, caso não tenha
inserido. Isso é necessário para as URLs inseridas pelo usuário para conectores
certificados.
Power Query M
ValidateUrlScheme = (url as text) as text => if (Uri.Parts(url)[Scheme] <>
"https") then error "Url scheme must be HTTPS" else url;
Power Query M
Recuperando dados
Value.WaitFor
Essa função é útil ao fazer uma solicitação HTTP assíncrona. Você precisa sondar o
servidor até que a solicitação seja concluída.
Power Query M
Table.GenerateByPage
Essa função é usada quando uma API retorna dados em um formato incremental/paged,
o que é comum para muitas APIs REST. O argumento getNextPage é uma função que
usa um único parâmetro, que será o resultado da chamada anterior para getNextPage e
deve retornar um nullable table .
Power Query M
Power Query M
Observações adicionais:
restantes.
Power Query M
SchemaTransformTable
Power Query M
Table.ChangeType
Power Query M
let
// table should be an actual Table.Type, or a List.Type of Records
Table.ChangeType = (table, tableType as type) as nullable table =>
// we only operate on table types
if (not Type.Is(tableType, type table)) then error "type argument
should be a table type" else
// if we have a null value, just return it
if (table = null) then table else
let
columnsForType = Type.RecordFields(Type.TableRow(tableType)),
columnsAsTable = Record.ToTable(columnsForType),
schema = Table.ExpandRecordColumn(columnsAsTable, "Value",
{"Type"}, {"Type"}),
previousMeta = Value.Metadata(tableType),
O uso dessa abordagem permite fornecer descrições e exibir nomes para sua função,
bem como parâmetros individuais. Você também pode fornecer valores de exemplo
para parâmetros, bem como definir uma lista predefinida de valores (transformando o
controle da caixa de texto padrão em uma lista suspensa).
Parâmetro documentation
A tabela a seguir lista os campos Documentation que podem ser definidos nos
metadados dos parâmetros de função. Todos os campos são opcionais.
Power Query M
[DataSource.Kind="HelloWorldWithDocs", Publish="HelloWorldWithDocs.Publish"]
shared HelloWorldWithDocs.Contents = Value.ReplaceType(HelloWorldImpl,
HelloWorldType);
Informações da função
Exemplo de multilinha
Power Query M
[DataSource.Kind="HelloWorld", Publish="HelloWorld.Publish"]
shared HelloWorld.Contents =
let
HelloWorldType = type function (
message1 as (type text meta [
Documentation.FieldCaption = "Message 1",
Documentation.FieldDescription = "Text to display for
message 1",
Documentation.SampleValues = {"Hello world"},
Formatting.IsMultiLine = true,
Formatting.IsCode = true
]),
message2 as (type text meta [
Documentation.FieldCaption = "Message 2",
Documentation.FieldDescription = "Text to display for
message 2",
Documentation.SampleValues = {"Hola mundo"},
Formatting.IsMultiLine = true,
Formatting.IsCode = false
])) as text,
HelloWorldFunction = (message1 as text, message2 as text) as text =>
message1 & message2
in
Value.ReplaceType(HelloWorldFunction, HelloWorldType);
Esse código (com informações de publicação associadas, e assim por diante) resulta na
caixa de diálogo a seguir no Power BI. Novas linhas serão representadas em texto com
'#(lf)' ou 'feed de linha'.
Como gerenciar a navegação
Artigo • 05/10/2023
As tabelas de navegação (ou tabelas nav) são uma parte essencial do fornecimento de
uma experiência amigável para o conector. A experiência Power Query exibe as tabelas
nav ao usuário depois que ele insere todos os parâmetros obrigatórios na função da
fonte de dados e se autentica na fonte de dados.
Nos bastidores, a tabela nav é apenas um valor normal da tabela M com campos de
metadados específicos definidos em seu Tipo. Quando a função de fonte de dados
retornar uma tabela com esses campos definidos, Power Query exibirá a caixa de
diálogo do navegador. Você poderá ver os dados subjacentes como um valor da tabela
ao clicar com o botão direito do mouse no nó raiz e selecionar Editar.
Table.ToNavigationTable
Use a função Table.ToNavigationTable para adicionar os metadados do tipo de tabela
necessários para criar uma tabela nav.
7 Observação
Atualmente, você precisa copiar e colar essa função na sua extensão M. No futuro,
ela provavelmente será movida para a biblioteca padrão M.
Parâmetro Detalhes
keyColumns Lista de nomes de coluna que atuam como chave primária na sua tabela de
navegação.
nameColumn Nome da coluna que deve ser usada como o nome de exibição no
navegador.
itemKindColumn O nome da coluna usada para determinar o tipo de ícone a ser exibido. Veja
abaixo a lista de valores válidos para a coluna.
Campo Parâmetro
NavigationTable.NameColumn nameColumn
NavigationTable.DataColumn dataColumn
NavigationTable.ItemKindColumn itemKindColumn
NavigationTable.IsLeafColumn isLeafColumn
Preview.DelayColumn itemNameColumn
Valores de ItemKind
Cada um dos seguintes valores de tipo de item fornece um ícone diferente na tabela de
navegação.
Feed
Cube
CubeDatabase
CubeView
CubeViewFolder
Banco de dados
DatabaseServer
Dimensão
Tabela
Pasta
Função
Modo de exibição
Folha
Subcubo
DefinedName
Registro
A captura de tela a seguir mostra os ícones para os tipos de item no Power BI Desktop.
Exemplos
Power Query M
Power Query M
Tratamento de erros para garantir uma boa experiência para os usuários que não
têm acesso a determinados pontos de extremidade.
A avaliação do nó é lenta por padrão. Nós folha não são avaliados até que o nó pai
seja expandido. Determinadas implementações de tabelas de navegação dinâmica
de vários níveis podem resultar em uma avaliação apressada de toda a árvore.
Lembre-se de monitorar o número de chamadas que o Power Query está fazendo,
pois ele renderiza inicialmente a tabela de navegação. Por exemplo,
Table.InsertRows é "mais simples" do que Table.FromRecords, pois não precisa
avaliar seus argumentos.
Tratar suporte de gateway
Artigo • 23/03/2023
Teste a conexão
O suporte ao conector personalizado está disponível nos modos Pessoal e Standard
do gateway de dados local . Ambos os modos de gateway suportam Importação.
A Consulta direta tem suporte apenas no modo Standard. Atualmente, o OAuth
para conectores personalizados por gateways tem suporte apenas para
administradores de gateway, mas não para outros usuários da fonte de dados.
Para suportar a atualização agendada por meio do gateway de dados local, seu
conector deve implementar um manipulador TestConnection. A função é chamada
quando o usuário está configurando as credenciais para a fonte de dados e é usada
para garantir que elas sejam válidas. O manipulador TestConnection é definido no
registro Tipo de fonte de dados e tem a seguinte assinatura:
Nome da função a ser chamada (essa função deve ser marcada como #shared , e
geralmente é a função principal da fonte de dados).
Um ou mais argumentos a serem passados na função.
7 Observação
Power Query M
TripPin = [
TestConnection = (dataSourcePath) => { "TripPin.Contents" },
Authentication = [
Anonymous = []
],
Label = "TripPin"
];
Power Query M
GithubSample = [
TestConnection = (dataSourcePath) => {"GithubSample.Contents",
dataSourcePath},
Authentication = [
OAuth = [
StartLogin = StartLogin,
FinishLogin = FinishLogin,
Label = Extension.LoadString("AuthenticationLabel")
]
]
];
Power Query M
DirectSQL = [
TestConnection = (dataSourcePath) =>
let
json = Json.Document(dataSourcePath),
server = json[server],
database = json[database]
in
{ "DirectSQL.Database", server, database },
Authentication = [
Windows = [],
UsernamePassword = []
],
Label = "Direct Query for SQL"
];
Como assinar com o conector do Power
Query
Artigo • 23/03/2023
As etapas a seguir mostrar como você pode usar um certificado (com uma explicação
sobre como gerar um se não tiver um disponível) e assinar um conector personalizado
com a ferramenta "MakePQX".
7 Observação
Se você precisar de ajuda para criar um certificado autoassinado para testar essas
instruções, acesse a documentação da Microsoft no New-SelfSignedCertificate no
PowerShell.
7 Observação
Se você precisar de ajuda para exportar seu certificado como um pfx, acesse
Export-PfxCertificate.
Opções:
Opções Descrição
Comandos:
Comando Descrição
sign Assina um pqx não assinado ou faz contra-assinaturas se o pqx já estiver assinado.
Use a opção --replace para substituir a assinatura existente.
verify Verifique o status da assinatura no arquivo pqx. O valor retornado será diferente de
zero se a assinatura for inválida.
Pack
O comando Pack usa um arquivo mez e o empacota em um arquivo pqx que pode ser
assinado. O arquivo pqx também é compatível com alguns recursos que serão
adicionados no futuro.
Opções:
Opção Descrição
Exemplo
C:\Users\cpope\Downloads\MakePQX>MakePQX.exe pack -mz
"C:\Users\cpope\OneDrive\Documents\Power BI Desktop\Custom
Connectors\HelloWorld.mez" -t "C:\Users\cpope\OneDrive\Documents\Power BI
Desktop\Custom Connectors\HelloWorldSigned.pqx"
Sinal
O comando Assinar assina o arquivo pqx com um certificado, fornecendo a ele uma
impressão digital que pode ser verificada quanto à confiabilidade pelos clientes do
Power BI que têm a configuração de segurança mais elevada. Esse comando pega um
arquivo pqx e retorna o mesmo arquivo pqx, assinado.
Argumentos:
Argumento Descrição
Opções:
Opção Descrição
Exemplo
C:\Users\cpope\Downloads\MakePQX>MakePQX sign
"C:\Users\cpope\OneDrive\Documents\Power BI Desktop\Custom
Connectors\HelloWorldSigned.pqx" --certificate ContosoTestCertificate.pfx --
password password
Verificar
O comando Verificar verifica se o módulo foi assinado corretamente e se está
mostrando o status do Certificado.
Uso: MakePQX verificar [argumentos] [opções]
Argumentos:
Argumento Descrição
Opções:
Opção Descrição
Exemplo
C:\Users\cpope\Downloads\MakePQX>MakePQX verify
"C:\Users\cpope\OneDrive\Documents\Power BI Desktop\Custom
Connectors\HelloWorldSigned.pqx"
{
"SignatureStatus": "Success",
"CertificateStatus": [
{
"Issuer": "CN=Colin Popell",
"Thumbprint": "16AF59E4BE5384CD860E230ED4AED474C2A3BC69",
"Subject": "CN=Colin Popell",
"NotBefore": "2019-02-14T22:47:42-08:00",
"NotAfter": "2020-02-14T23:07:42-08:00",
"Valid": false,
"Parent": null,
"Status": "UntrustedRoot"
}
]
}
Este artigo descreve como você pode habilitar o suporte ao proxy em seu conector
personalizado do Power Query usando o SDK do Power Query.
Opções da Internet
1. No menu iniciar do Windows, pesquise e abra Opções da Internet.
2. Selecione a guia Conexões.
3. Selecione as Configurações da LAN.
4. Na seção Servidor proxy, configure o servidor proxy.
Exemplo de uso
Exemplo 1
Para usar Web.DefaultProxy no código do conector, uma variável de tipo booliano
poderá ser usada para aceitar ou não o uso dessa funcionalidade. Neste exemplo,
Web.DefaultProxy será invocado no código do conector se o parâmetro booliano
opcional UseWebDefaultProxy for definido como true (padrão como false).
Power Query M
UseWebDefaultProxyOption = options[UseWebDefaultProxy]?,
ProxyUriRecord = if UseWebDefaultProxyOption then Web.DefaultProxy(Host)
else null,
ProxyOptions = if Record.FieldCount(ProxyUriRecord) > 0 then
[
Proxy = ProxyUriRecord[ProxyUri]
]
else [],
...
Power Query M
Exemplo 2
Se houver vários parâmetros de configuração usados pelo driver para definir os detalhes
do proxy (como detalhes do host e da porta que estão sendo tratados separadamente),
o Uri.Parts poderá ser usado.
Power Query M
UseWebDefaultProxyOption = options[UseWebDefaultProxy]?,
ProxyRecord = if UseWebDefaultProxyOption then Web.DefaultProxy(Host) else
null,
UriRecord = if ProxyRecord <> null then Uri.Parts(ProxyRecord) else null,
ProxyOptions = if UriRecord <> null then
[
ProxyHost = UriRecord[Scheme] & "://" & UriRecord[Host],
ProxyPort = UriRecord[Port]
]
else [],
...
Suporte à consulta nativa em
conectores personalizados do Power
Query
Artigo • 05/10/2023
7 Observação
Para saber mais sobre os conectores personalizados do Power Query, vá para Visão
geral do SDK do Power Query.
O objetivo deste artigo é mostrar como você pode implementar esse recurso para seu
conector personalizado.
Pré-requisitos
Este artigo usa como ponto de partida um exemplo que usa o driver ODBC do SQL
para sua fonte de dados. No momento, a implementação do recurso de consulta nativa
só tem suporte para conectores ODBC que aderem ao padrão SQL-92.
O conector de exemplo usa o driver do SQL Server Native Client 11.0. Certifique-se de
que você tenha esse driver instalado para acompanhar este tutorial.
Power Query M
SqlCapabilities = Diagnostics.LogValue("SqlCapabilities_Options",
defaultConfig[SqlCapabilities] & [
// Place custom overrides here
// The values below are required for the SQL Native Client ODBC driver,
but might
// not be required for your data source.
SupportsTop = false,
SupportsDerivedTable = true,
Sql92Conformance = 8 /* SQL_SC_SQL92_FULL */,
GroupByCapabilities = 4 /* SQL_GB_NO_RELATION */,
FractionalSecondsScale = 3,
Sql92Translation = "PassThrough"
]),
Verifique se esse campo aparece no conector antes de avançar. Caso contrário, você
verá avisos e erros mais tarde quando usar um recurso que não é suportado porque não
é declarado pelo conector.
Crie o arquivo de conector (como .mez ou .pqx) e carregue-o no Power BI Desktop para
teste manual e para definir o destino para sua consulta nativa.
7 Observação
A maneira como o suporte a consultas nativas será implementado neste artigo é que o
usuário precisará inserir três valores:
Nome do servidor
Nome do banco de dados
Consulta nativa no nível do banco de dados
Essa seleção leva você ao editor do Power Query e a uma visualização do que é
efetivamente o destino da consulta nativa, já que todas as consultas nativas devem ser
executadas no nível do banco de dados. Inspecione a barra de fórmulas da última etapa
para entender melhor como o conector deve navegar até o destino das consultas
nativas antes de executá-las. Nesse caso, a barra de fórmulas exibe as seguintes
informações:
= Source{[Name="AdventureWorks2019",Kind="Database"]}[Data]
Origem é o nome da etapa anterior que, neste caso, é simplesmente a função publicada
do conector com os parâmetros transmitidos. A lista e o registro dentro dela só ajudam
a navegar uma tabela para uma linha específica. A linha é definida pelos critérios do
registro em que o campo Nome deve ser igual a AdventureWorks2019 e o campo Tipo
deve ser igual a Banco de Dados. Depois que a linha é localizada, a saída [Data] da lista
{} permite que o Power Query acesse o valor dentro do campo Dados, que neste caso
é uma tabela. Você pode voltar à etapa anterior (Origem) para entender melhor essa
navegação.
Power Query M
= Value.NativeQuery( AdventureWorks2019_Database, "SELECT TOP (1000) *
FROM [Person].[Address]")
Depois de aplicar essa alteração, um aviso deve aparecer abaixo da barra de fórmulas
solicitando permissão para executar a consulta nativa na fonte de dados.
Selecione Editar permissão. Uma nova caixa de diálogo Consulta Nativa de Banco de
Dados é exibida que tenta avisar sobre as possibilidades de executar consultas nativas.
Nesse caso, sabemos que essa instrução SQL é segura, então selecione Executar para
executar o comando.
Depois de executar a consulta, uma visualização é exibida no editor do Power Query.
Essa visualização valida que o conector é capaz de executar consultas nativas.
A maneira como você pode realizar essa conversão é adicionando um novo campo de
registro NativeQueryProperties ao registro Publicar do conector, que neste caso é o
registro SqlODBC.Publish . O NativeQueryProperties registro desempenha um papel
essencial na definição de como o conector vai interagir com a função
Value.NativeQuery .
NavigationSteps
As etapas de navegação podem ser classificadas em dois grupos. O primeiro contém os
valores que são inseridos pelo usuário final, como o nome do servidor ou do banco de
dados, nesse caso. O segundo contém os valores derivados pela implementação
específica do conector, como o nome dos campos que não são exibidos ao usuário
durante a experiência de obtenção de dados. Esses campos podem incluir Name , Kind ,
Data e outros dependendo da implementação do conector.
Para este caso, havia apenas uma etapa de navegação que consistia em dois campos:
Nome: esse campo é o nome do banco de dados que foi transmitido pelo usuário
final. Nesse caso, foi AdventureWorks2019 , mas esse campo sempre deve ser
transmitido como está a partir do que o usuário final inseriu durante a experiência
de obtenção de dados.
Tipo: esse campo é uma informação que não está visível para o usuário final e é
específica para a implementação do conector ou driver. Nesse caso, esse valor
identifica que tipo de objeto deve ser acessado. Para essa implementação, esse
campo será um valor fixo que consiste na string Database .
Tais informações serão traduzidas no código a seguir. Esse código deve ser adicionado
como um novo campo ao registro SqlODBC.Publish .
Power Query M
NativeQueryProperties = [
NavigationSteps = {
[
Indices = {
[
FieldDisplayName = "database",
IndexName = "Name"
],
[
ConstantValue = "Database",
IndexName = "Kind"
]
},
FieldAccess = "Data"
]
}
]
) Importante
Índices: define quais campos e quais valores usar para navegar até o registro que
contém o destino da função Value.NativeQuery .
FieldAccess: define qual campo contém o destino, que geralmente é uma tabela.
DefaultOptions
O campo DefaultOptions permite que você transmita parâmetros opcionais para a
função Value.NativeQuery ao usar o recurso de consulta nativa para o conector.
Para preservar o dobramento de consulta após uma consulta nativa e supondo que seu
conector tenha recursos de dobramento de consulta, você pode usar o seguinte código
de exemplo para EnableFolding = true .
Power Query M
NativeQueryProperties = [
NavigationSteps = {
[
Indices = {
[
FieldDisplayName = "database",
IndexName = "Name"
],
[
ConstantValue = "Database",
IndexName = "Kind"
]
},
FieldAccess = "Data"
]
},
DefaultOptions = [
EnableFolding = true
]
]
Com essas alterações, crie o conector e carregue-o no Power BI Desktop para teste e
validação.
Testar e validar o conector
No Power BI Desktop com seu novo conector personalizado instalado, inicie o conector
na experiência Obter Dados. Ao iniciar o conector, você notará que a caixa de diálogo
agora tem um campo de texto longo com o nome Consulta nativa e, entre parênteses,
tem os campos necessários para funcionar. Insira os mesmos valores para o servidor, o
banco de dados e a instrução SQL que você inseriu anteriormente ao testar o conector.
7 Observação
Power Query M
[Version = "1.0.0"]
section MyConnector;
O número final é a versão de "patch", que indica pequenos ajustes e correções nos
conectores. Essa é a versão que será alterada com mais frequência e deve ser
incrementada sempre que você liberar pequenos ajustes de um conector para o público.
Certificação do conector do Power
Query
Artigo • 14/11/2023
7 Observação
Neste artigo, você verá uma descrição dos requisitos e do processo para enviar um
conector do Power Query para certificação. Leia todo o texto com atenção antes de
iniciar o processo de certificação.
Introdução
Com o SDK do Power Query, todos têm o poder de criar um conector personalizado do
Power Query para se conectar a uma fonte de dados do Power Query. Atualmente, os
conectores personalizados só são compatíveis com conjuntos de dados do Power BI
(Power BI Desktop e serviço do Power BI) e exigem o uso de um gateway de dados local
para atualizar por meio do serviço do Power BI. Conectores personalizados precisam ser
distribuídos individualmente pelo desenvolvedor.
Pré-requisitos
Para garantir a melhor experiência para nossos clientes, consideramos apenas os
conectores que atendem a um conjunto de pré-requisitos para certificação:
O conector deve ser considerado concluído por código para uma versão inicial. O
programa permite iterações e atualizações frequentes. A Microsoft não oferece
assistência técnica ou consultoria de desenvolvimento de conector personalizado.
Recomendamos usar recursos públicos, como nossa documentação do SDK e
nosso repositório de amostras. Se você precisar de mais assistência, podemos
compartilhar uma lista de consultores conhecidos de desenvolvimento de
conectores personalizados de terceiros que você pode querer envolver
diretamente, separados de qualquer programa ou parceria da Microsoft. A
Microsoft não é afiliada a nenhum desses consultores e não é responsável pelo
uso que você faz dos serviços deles. A Microsoft fornece a lista para sua
comodidade e sem quaisquer garantias ou recomendações. Fale com seu contato
de certificação da Microsoft para saber mais.
Deve haver uma conversa no fórum ideias do Power BI promovida pelos clientes
para indicar a demanda para disponibilizar o conector publicamente no Power BI
Desktop. Não há um limite definido de participação. No entanto, quanto mais
participação, mais forte será a demanda evidenciada pelo conector.
Envio: envio dos arquivos do conector para análise da Microsoft. Esse envio deve
ocorrer até o dia 1º do mês antes do lançamento pretendido do Power BI Desktop.
Por exemplo, para a versão de abril do Power BI Desktop, o prazo seria 1º de
março.
Requisitos de certificação
Temos um determinado conjunto de requisitos para certificação. Reconhecemos que
nem todos os desenvolvedores podem atender a esses requisitos e esperamos
introduzir um conjunto de recursos que lidará com as necessidades do desenvolvedor
em breve.
Instruções de teste
Forneça qualquer documentação sobre como usar o conector e testar sua
funcionalidade.
O conector DEVE:
Usar o formato do documento da Seção.
Conter um cabeçalho/adorno de versão acima do documento da seção.
Ter metadados da documentação da função.
Ter o manipulador TestConnection.
Seguir as convenções de nomenclatura (por exemplo,
DataSourceKind.FunctionName ). Ele não deve incluir palavras como "Power BI",
"Conector" ou "API".
Ter o sinalizador Beta definido como True na versão inicial.
O conector DEVE:
Ter ícones.
Ter uma tabela de navegação.
Colocar cadeias de caracteres em um arquivo resources.resx . URLs e valores
devem ser codificados no código do conector e não serem colocados no
arquivo resources.resx .
Segurança
Há considerações de segurança específicas que o conector deve tratar.
credenciais confidenciais.
Após a Certificação
Depois que o conector for certificado e liberado por meio do Power BI Desktop e do
serviço do Power BI, há algumas coisas que você deve fazer para garantir que possa usar
corretamente o conector certificado disponível publicamente implantado em produção.
7 Observação
Introdução
Este artigo fornece instruções sobre como enviar o conector personalizado do Power
Query para certificação. Não envie seu conector para certificação, a menos que você
tenha sido explicitamente direcionado pelo contato da Microsoft.
Pré-requisitos
Depois de aprovado para certificação, verifique se o conector atende aos requisitos de
certificação e se segue todos os recursos, estilo e diretrizes de segurança. Prepare os
artefatos de envio para envio.
Envio Inicial
1. Navegue até o ISV Studio e entre com a sua conta corporativa da Microsoft. Esse
experiência não permite contas pessoais.
Observe que você deve concluir todas as etapas para avançar com a certificação. Se
quiser adicionar colegas de equipe para gerenciar o conector, informe o contato da
Microsoft.
Depois que a avaliação do código do conector for concluída, você precisará nos enviar
um vídeo de demonstração mostrando os seguintes cenários:
Atualizações
As atualizações no envio do conector podem ser feitas a qualquer momento, exceto
quando o conector está em processo de implantação em produção. Ao enviar uma
atualização, lembre-se de enviar a atualização para o envio existente, em vez de criar um
novo envio.
3. Para atualizar um conector certificado, selecione o link para enviar uma nova
versão no painel à direita, acima das versões atuais do conector. Para atualizar uma
versão existente do conector em certificação, selecione a versão mais recente do
conector e, na parte inferior esquerda, selecione a opção Enviar uma atualização.
4. Você pode fazer o upload de uma nova versão dos artefatos e preencher
novamente o formulário de envio.
Depois de terminar de projetar seu conector personalizado Power Query, você precisará
enviar um artigo que forneça instruções sobre como usar seu conector para publicação
no Microsoft Learn. Este artigo aborda o layout desse artigo e como formatar o texto do
seu artigo.
Layout do artigo
Esta seção descreve o layout geral dos artigos de conector do Power Query. O artigo do
seu conector personalizado deve seguir este layout geral.
Observação de suporte
Logo após o título do artigo, insira a seguinte observação.
7 Observação
Tabela de resumo
Após a observação de suporte, forneça uma tabela de resumo com as seguintes
informações:
7 Observação
Alguns recursos podem estar presentes em um produto, mas não em outros devido
a cronogramas de implantação e funcionalidades específicas do host.
Pré-requisitos
Se o conector personalizado exigir que outros aplicativos sejam instalados no sistema
que o executa ou exigir que um procedimento de configuração seja feito antes de usar
o conector personalizado, você deverá incluir uma seção de Pré-requisitos que descreva
esses procedimentos de instalação e configuração. Esta seção também incluirá
informação sobre como configurar as diversas versões do conector (se aplicável).
Instruções de conexão
Esta seção contém os procedimentos necessários para se conectar aos dados. Se o
conector personalizado for usado apenas no Power Query Desktop, apenas um
procedimento será necessário. No entanto, se o conector personalizado for usado no
Power Query Desktop e no Power Query Online, você deverá fornecer procedimentos
em seções separadas para cada instância. Ou seja, se o conector personalizado for
usado apenas pelo Power Query Desktop, você terá um procedimento começando com
um subtítulo e um único procedimento passo a passo. Se o conector personalizado for
usado pelo Power Query Desktop e o Power Query Online, você terá dois
procedimentos. Cada procedimento começará com um subtítulo e deverá conter um
procedimento passo a passo separado em cada subtítulo. Para ver exemplos de cada
um desses tipos de procedimentos, acesse Artigos de conector de exemplo.
O procedimento é composto por uma lista numerada que inclui cada etapa necessária
para preencher as informações necessárias para fornecer uma conexão normal (sem
exigir opções avançadas) aos dados.
7 Observação
Todos os novos conectores certificados são necessários para dar suporte a fluxos
de dados do Power BI e devem conter seções para se conectar aos seus dados no
Power Query Desktop e no Power Query Online.
Confira nosso guia de colaboradores sobre como você pode contribuir com nosso
repositório.
O artigo deve ser formatado e enviado como um arquivo Markdown. Ele deve usar o
estilo da Microsoft para descrever procedimentos e o layout da interface do usuário.
Aqui estão algumas respostas para perguntas comuns que podem ocorrer ao
desenvolver conectores Power Query personalizados.
Geral
É possível mostrar um aviso se...?
Fora dos padrões de alertas documentados, atualmente não fornecemos uma maneira
de retornar avisos fora da banda, como uma tabela grande ou um aviso grande de
metadados.
Solução de problemas
O conector personalizado que estou
desenvolvendo funciona bem no Power BI
Desktop. Porém, quando tento executá-lo no
serviço do Power BI, não consigo definir as
credenciais nem configurar a fonte de dados.
Qual é o problema?
Pode haver várias razões pelas quais você está vendo esse comportamento. Alguns
erros comuns que podem ocorrer durante a execução do conector no serviço do Power
BI são:
Power Query M
Power Query M
Power Query M
7 Observação
TREINAMENTO CONCEITO
Introdução ao DAX Novo nome para os conjuntos
de dados do Power BI
A referência de função do Power Query M inclui artigos para cada uma das mais de 700
funções. Esses artigos de referência são gerados automaticamente da ajuda interna do
produto. Para saber mais sobre as funções e como elas funcionam em uma expressão,
vá para Entender as funções do Power Query M.
Comentários
ツ Yes ト No
ツ Yes ト No
Was this page helpful?
Introdução
Estrutura lexical
Conceitos básicos
Valores
Types
Operadores
Let
Condicionais
Funções
Tratamento de erro
Seções
Gramática consolidada
Comentários
Was this page helpful? ツ Yes ト No
ETAPAS PRELIMINARES
(1) B := { true; false }
B é o conjunto típico de valores boolianos
(3) P := ⟨B, T⟩
P é o conjunto de parâmetros de função. Cada um é possivelmente opcional e tem um
tipo. Os nomes de parâmetro são irrelevantes.
(5) P* := ⋃0≤i≤∞Pi
P* é o conjunto de todas as sequências possíveis de parâmetros de função, em ordem
crescente, começando pelas de comprimento 0.
(6) F := ⟨B, N, T⟩
F é o conjunto de todos os campos de registro. Cada campo é possivelmente opcional, tem
um nome e um tipo.
(7) Fn := ∏0≤i≤nF
Fn é o conjunto de todos os campos de registro.
(9) C := ⟨N,T⟩
C é o conjunto de tipos de coluna para tabelas. Cada coluna tem um nome e um tipo.
TIPOS DE M
(12) TF := ⟨P, P*⟩
Um tipo de função consiste em um tipo de retorno e uma lista ordenada de zero ou mais
parâmetros de função.
(13) TL :=〖T〗
Um tipo de lista é indicado por um determinado tipo (chamado de "tipo de item")
encapsulado entre chaves. Como as chaves são usadas na metalanguagem, 〖 〗 os
colchetes são usados neste documento.
(17) TT := C*
Um tipo de tabela é uma sequência ordenada de zero ou mais tipos de coluna, em que
não há conflitos de nome.
(18) TP := { any; none; null; logical; number; time; date; datetime; datetimezone; duration;
text; binary; type; list; record; table; function; anynonnull }
Um tipo primitivo é um contido nesta lista de palavras-chave do M.
(20) T := TF ∪ TL ∪ TR ∪ TT ∪ TP ∪ TN
O conjunto de todos os tipos do M é a união de todos estes seis conjuntos de tipos:
Tipos de função, tipos de lista, tipos de registro, tipos de tabela, tipos primitivos e tipos que
permitem valor nulo.
FUNÇÕES
É necessário definir uma função: NonNullable : T ← T
Essa função usa um tipo e retorna um tipo equivalente, exceto pelo fato de que esse
segundo tipo não está em conformidade com o valor nulo.
IDENTIDADES
Algumas identidades são necessárias para definir alguns casos especiais e também
podem ajudar a elucidar os casos acima.
COMPATIBILIDADE DE TIPO
Conforme ressaltado em outra parte deste documento, um tipo M será compatível com
outro tipo M se e somente se todos os valores que estiverem em conformidade com o
primeiro tipo também estiverem em conformidade com o segundo tipo.
Aqui é definida uma relação de compatibilidade que não depende de os valores
estarem em conformidade e é baseada nas propriedades dos próprios tipos. O que se
espera é que essa relação, conforme definido neste documento, seja completamente
equivalente à definição semântica original.
(28) t ≤ t
Essa relação é reflexiva.
(29) ta ≤ tb ∧ tb ≤ tc → ta ≤ tc
Essa relação é transitiva.
(32) null ≤ t ∈ TN
O tipo primitivo null é compatível com todos os tipos que permitem valor nulo.
(33) t ∉ TN ≤ anynonnull
Todos os tipos NonNullable são compatíveis com anynonnull.
(34) NonNullable(t) ≤ t
Um tipo NonNullable é compatível com o equivalente anulável.
(35) t ∈ TF → t ≤ function
Todos os tipos de função são compatíveis com function.
(36) t ∈ TL → t ≤ list
Todos os tipos de lista são compatíveis com list.
(37) t ∈ TR → t ≤ record
Todos os tipos de registro são compatíveis com record.
(38) t ∈ TT → t ≤ table
Todos os tipos de tabela são compatíveis com table.
(39) ta ≤ tb ↔ 〖ta〗≤〖tb〗
Um tipo de lista será compatível com outro tipo de lista se os tipos de item forem
compatíveis e vice-versa.
REFERENCES
Microsoft Corporation (agosto de 2015)
Especificação de linguagem de fórmula do Microsoft Power Query para Excel [PDF]
Recuperado de https://msdn.microsoft.com/library/mt807488.aspx