1
resposta

Usar parâmetro que contém uma fórmula da data atual na origem dos dados

Eu recebo arquivos de extração do banco de dados no formato .csv com o padrão:

C:\\diretorio_pessoal/CSV_01-01-2019/arquivo.csv

Uma nova pasta é criada todo dia, então pra automatizar isso no power BI, na orgiem dos dados fiz o comando abaixo:

= Csv.Document(File.Contents(pCaminho & DateTime.ToText(DateTime.LocalNow(), "dd-MM-yyyy") & "\2_areas_tematicas.csv"),[Delimiter="#(tab)", Columns=6, Encoding=65001, QuoteStyle=QuoteStyle.None])

Gostaria de colocar todo esse comando de data em um parâmetro, assim como eu fiz com o diretório pCaminho, porém ele não aceita:

Expression.Error: Illegal characters in path. Detalhes: C:\\diretorio_pessoal\CSV\CSV_DateTime.ToText(DateTime.LocalNow(), "dd-MM-yyyy")\1_processo.csv

Quem puder ajudar, ficarei muito grato.

1 resposta

Oii João Lucas, tudo bem?

Peço imensas desculpas pela demora no retorno de sua resposta, vamos lá.

É difícil dizer com certeza o que está causando o erro de parâmetro ilegal já que não temos conhecimento do caminho completo que está utilizando, porém você pode fazer alguns testes:

  • Verificar se a variável Pcaminho segue o esquema da foto abaixo (endereço começando do C: e esteja em formato de texto(abc))

Imgur

  • Colocar diretamente o caminho onde está a variável pCaminho
  • Duplicar as barras no endereço do caminho,exemplo: C:\\Users\\maria\\Documents
  • Verificar se o nome da pasta é muito longo ou possui caracteres especiais como o cedilha e alterar para um nome menor e sem caracteres especiais
  • Fazer o teste de colocar um caminho de um único arquivo sem utilizar o DateTime.ToText(DateTime.LocalNow(), "dd-MM-yyyy")

Espero que alguma dessas coisas te ajude. Qualquer coisa estou por aqui, tá bom? :)