Criando tabela dCalendário em 6 passos

Criando tabela dCalendário em 6 passos

24 de abril de 2020 0 Por Rafael Lemos

Quando iniciei minha jornada no Power BI não entendia muito bem o motivo de criar uma tabela calendário, já que no arquivo de Excel que importava para o pbix continha a data do Fato.

Mesmo assim, eu comecei a criar a famosa dCalendario com base na tabela Fato, fazendo uma cópia da tabela, excluindo as colunas que não precisava e depois disso criava as colunas ano, mês, nome do mês e assim por diante.

Depois de tanto bater cabeça, eu consegui ver como é importante criar a dCalendario, só que hoje tenho outro processo para criá-la.

Tomo como base o vídeo do Laennder no youtube.

Eu prefiro não ter tabela relacionada para criar a dCalendario, vejo a data do primeiro fato e sigo os seguintes passos:

1º Passo

Criação de uma consulta nula;

Não foi fornecido texto alternativo para esta imagem

2º Passo

Informar a data inicial;

Não foi fornecido texto alternativo para esta imagem

No modelo de dados de exemplo que eu tenho o primeiro ano é 2010.

Função #date.

3º Passo

Informar a data final;

Não foi fornecido texto alternativo para esta imagem

Na data final, utilizei 2021 porque são dados antigos e que não haverá atualização.

4º Passo

Contar quantidade de dias;

Não foi fornecido texto alternativo para esta imagem

Para a contagem dos dias utilizei a função Duration.Days, subtraindo a data final, 31/12/2021, com a data inicial, 01/01/2010.

Incluí um “+1” no final para contar o primeiro dia do calendário, se não fizer isso o último dia será 30/12/2021.

Função duração de dias

5º Passo

Com a data inicial e a quantidade de dias agora é possível criar a lista de dias;

Não foi fornecido texto alternativo para esta imagem

Função lista datas Função duração (dias, horas, minutos, segundos)

6º Passo

Transformar a lista em tabela;

Não foi fornecido texto alternativo para esta imagem

E por fim fazer a mágica acontecer no Power BI…

O script do Power Query e o arquivo PBIX estão disponíveis no github.

Uma dica é não deixar dias “sobrando” na dCalendario, para isso você pode utilizar a função List.Max, deixando o script do filtro parecido com isso:

= Table.SelectRows(#”Tipo Alterado1″, each [Data] < List.Max(Fato[Data]))

Ahhh… Lembre-se sempre de considerar a coluna que possui a data mais futura, como por exemplo a de vencimento, as vezes podemos ter problemas na visualização do dashboard por causa disso.

Excelente final de semana galera!!!

Abraços.

#RafaelLemosPBI