Como chamar a função Power Query M de uma pasta de trabalho externa?

2

Se eu tiver uma pasta de trabalho do Excel disponível on-line e essa pasta de trabalho contiver algumas planilhas e algumas funções do Power Query M, é possível invocar essas funções de outra pasta de trabalho?

Eu sei como carregar a pasta de trabalho com Excel.Workbook(Web.Contents("url")) , mas isso apenas lista as planilhas e tabelas disponíveis, mas não as funções disponíveis.

Minha pasta de trabalho está disponível publicamente e desejo acessar as funções sem autorização especial.

    
por KarmaEDV 29.04.2018 / 17:03

1 resposta

0

Isso não é suportado. No entanto, é possível armazenar seus scripts M em um arquivo de texto e executá-los.

  1. Copie o conteúdo da consulta (do Editor avançado) em um arquivo.
  2. Use isso para acessar o conteúdo desse arquivo: = Text.FromBinary(File.Contents("path to your file")) . Vamos chamar este passo Source .
  3. Use Expression.Evaluate(Source, #shared) para avaliar essa consulta. Expression.Evaluate interpretará um valor de texto como código. #shared contém a lista de todas as consultas, funções e constantes em seu código; No entanto, ele não contém as etapas da sua consulta atual.

Se você estiver misturando isso com outras fontes de dados, talvez seja necessário definir os níveis de privacidade de cada fonte ou desativar totalmente os níveis de privacidade, o que pode ser feito na caixa de diálogo Opções, na seção Privacidade. Lembre-se de que o uso dessa técnica em arquivos desconhecidos na Internet, quando os níveis de privacidade estão desativados, pode resultar em vazamento ou exfiltração de seus dados.

    
por 05.06.2018 / 18:56