Desabilitar Tipo Alterado no Power Query Automática

Neste artigo aprenderá como desabilitar a etapa de tipo alterado no power query de forma automática.

A Etapa automática Tipo Alterado no Power Query

É muito comum o Power Query definir automaticamente os tipos das colunas dos dados em tratamento. Isto é útil pois a tipagem dos dados é extremamente relevante para garantir que não tenhamos maiores problemas ao usar os dados tratados, sobremaneira com os cálculos.

Desta forma, o Power Query reconhece um eventual padrão nas colunas de acordo com o conteúdo dos dados, definindo os tipos das colunas como datas, textos, porcentagem, número etc. No entanto, muitas vezes esta definição dos tipos de dados das colunas é precoce e chega a atrapalhar o tratamento de dados.

Quando Ocorre?

Esta alteração automática pode ocorrer logo após a importação dos dados para o Power Query. A maior frequência da aplicação automática dos tipos de dados é neste momento, gerando uma etapa nomeada como “tipo alterado” que se torna a 2ª etapa de tratamento de dados da consulta.

Ela pode também ocorrer automaticamente após algumas etapas implementadas pelo usuário, como ao criarmos uma coluna personalizada, por exemplo.

O problema desta etapa automática

O Power Query é “benevolente”, mas as etapas automáticas de alteração de tipo podem ser prejudiciais e muitas vezes são, de fato.

Isso se justifica porque podem ocorrer precocemente ou em momentos desnecessários, visto que é recomendável tentar eliminar ao máximo as repetições de alteração de tipo, buscando, se possível, obter apenas uma ocorrência de alteração de tipo, preferencialmente na parte final da consulta.

A imagem a seguir, por exemplo, elenca muitas etapas de alteração de tipo automáticas e desnecessárias (destacadas em vermelho), sendo que a única etapa de alteração de tipo intencional por parte do usuário e realmente necessária é a última, destacada em azul.

Como desabilitar a etapa automática de tipo alterado no Power Query capa 1

Como Economizar Alterações de Tipo Alterado no Power Query

O domínio da linguagem M permite que muitas vezes não precisemos de alterar o tipo de dados de uma coluna para realizarmos uma etapa.

Um exemplo é a criação de uma coluna personalizada que insere zeros à esquerda de valores de uma certa coluna. Ao usarmos a função Text.PadStart precisamos dos dados tipados como texto para inserirmos zeros ao início. Esta função não consegue inserir zeros à esquerda casos os valores sejam números e, diferentemente do que se pensa, não precisamos necessariamente converter para texto a coluna destes valores a fim de usá-los como argumento de Text.PadStart.

Em vez disso, podemos usar a função Number.ToText aninhada, para primeiro converter os números para textos no próprio código em M da coluna personalizada em criação, como demonstra a imagem a seguir.

A coluna personalizada criada insere zeros à esquerda para que os valores do campo criado (Valor ajustado) tenham comprimento fixo de 5 caracteres. Note que a função Text.PadStart não possui os valores originais em seu primeiro argumento, o que resultaria em erro. Foi utilizada a função Number.ToText para converter os valores para texto, e, a partir daí, usá-los sem maiores problemas em Text.PadStart.

Como desabilitar a etapa automática

Acesse o editor do Power Query e em seguida as opções Arquivo > Opções e configurações > Opções de Consulta.

Em seguida, acesse as opções Carregamento de Dados > Nunca detectar tipos de colunas e de cabeçalhos de fontes não estruturadas.

Confirme em Ok, ao final.

Pronto! A partir daí a etapa automática de “tipo alterado” não será mais inserida.

Avalie este post
Sair da versão mobile