Atendimento via WhatsApp Atendimento via WhatsApp

Blog Tecnológico

Power BI: Criação Base Calendário

Amauri Bekesius • 03 set 2024 • Microsoft Power BI

Power BI: Criação Base Calendário

Dentro de um projeto em Power BI onde poderá vir a existir inúmeras tabelas (bases) e possivelmente uma ou mais dessas tabelas com campo de datas, será necessário em um determinado momento, construirmos a própria tabela com respectivas datas tendo intuito de auxiliar nos diversos relacionamentos dessas diversas tabelas. Esses relacionamentos irão colaborar e muito para termos uma análise de dados mais assertiva e com maior controle das outras tabelas. Para tanto, se faz necessário termos em nossa mente qual a melhor maneira de fazermos essa construção / criação dessa tabela.

Neste artigo, irei mostrar duas maneiras simples para essa criação, sendo uma tabela de calendário estática onde necessito apenas de alguns meses e outra uma tabela calendário dinâmica ondes está terá as datas das outras tabelas até a data atual do sistema ou mesmo período que assim desejar.

Sendo assim, teremos que implantar um pequeno código uma vez que podemos desenvolver em duas linguagens: M (linguagem do Power Query, que está contido no Power BI, Excel e Analysis services) onde ficam as diversas transformações das diversas tabelas do projeto e outra que é a DAX (linguagem de expressão de fórmula usada nos Analysis Services, no Power BI e no Power Pivot no Excel). Porém, neste artigo iremos utilizar da linguagem M. Em um artigo futuro utilizaremos outros recursos. Portanto, vamos a um passo a passo elaborar essa construção / criação.

Passo 1:

Estando dentro do Power BI, iremos utilizar na aba Página Inicial (Grupo Dados) – ícone - Obter dados – Consulta em branco. Neste instante, o Editor do Power Query se abre e nele iremos colocar o código em linguagem M para a criação de nossa primeira tabela calendário, a tabela estática. Vejamos:

https://www.eng.com.br/assets/img/artigo/PBI-Criação-Base-Calendário-01.jpg
https://www.eng.com.br/assets/img/artigo/PBI-Criação-Base-Calendário-02.jpg

Passo 2:

Utilizando a função List.Dates() na barra de fórmulas verificamos o respectivo código com as devidas explicações:

= List.Dates(#date(2024,1,1), 91, #duration(1,0,0,0))

Uma coluna será criada com a primeira data 01/01/2024 até 91 dias, ou seja, 31/03/2024 (1º trimestre do ano), onde:

1. List.Dates() – função criadora da coluna datas (retorna uma lista de valores com tamanho controlado);
2. #date(2024,1,1) – inicio da contagem da data, ou seja, 01/01/2024;
3. 91 – dias a serem contados a data inicial;
4. #duration(1,0,0,0) – sintaxe para duração contada dos 91 dias.

Neste instante apenas iremos transformar esta consulta para uma tabela e iremos renomear a consulta, bem como, o nome da coluna, sendo Dim Calendário Estático e a coluna como Datas. Essa expressão Dim (dimensão), será vista em um futuro artigo.

Continuando no Editor do Power Query, iremos transformar a consulta em tabela, apenas clique no primeiro ícone à sua esquerda como imagem abaixo:

https://www.eng.com.br/assets/img/artigo/PBI-Criação-Base-Calendário-03.jpg
https://www.eng.com.br/assets/img/artigo/PBI-Criação-Base-Calendário-04.jpg
Para renomear, basta dar um clique duplo seja no nome da consulta seja no nome da coluna onde irá abrir a edição para o nome ser digitado.

Passo 3:

Neste passo, iremos fazer o mesmo processo, porém, com uma data inicial e a data final (data do sistema).

Estando no Editor do Power Query entraremos na aba Página Inicial (Grupo Nova Consulta) – Nova Fonte – Consulta nula. A partir daí, iremos construir um novo código para calcular a data final (atual do sistema) subtraindo da data inicial. Vejamos o código:

=List.Dates(#date(2024,1,1), Number.From(DateTime.LocalNow()) - Number.From(#date(2024,1,1)) ,#duration(1,0,0,0))

1. List.Dates() - função criadora da coluna datas (retorna uma lista de valores com tamanho controlado);
2. #date(2024,1,1) - inicio da contagem da data, ou seja, 01/01/2024;
3. Number.From(DateTime.LocalNow())- número de dias da data atual (final), subtraindo abaixo;
4. Number.From(#date(2024,1,1)), número de dias da data inicial, no caso 01/01/2024;
5. #duration(1,0,0,0)) - sintaxe para duração contada até os dias atuais do sistema.

https://www.eng.com.br/assets/img/artigo/PBI-Criação-Base-Calendário-05.jpg

Passo 4:

Continuando no Editor do Power Query, iremos transformar a consulta em tabela, apenas clique no primeiro ícone à sua esquerda como imagem abaixo:

https://www.eng.com.br/assets/img/artigo/PBI-Criação-Base-Calendário-06.jpg

Para renomear, basta dar um clique duplo seja no nome da consulta seja no nome da coluna onde irá abrir a edição para o nome ser digitado.

Passando por todos os passos, apenas iremos fechar o Editor do Power Query aplicando todas essas alterações, onde essas tabelas serão “levadas” ao Power BI, como segue:

https://www.eng.com.br/assets/img/artigo/PBI-Criação-Base-Calendário-07.jpg

No Power BI:

https://www.eng.com.br/assets/img/artigo/PBI-Criação-Base-Calendário-08.jpg

Conclusão:

Cada projeto em Power Bi claro tem suas peculiaridades e dependendo dessas peculiaridades criamos situações em que necessitamos de “ajuda” no sentido de além de aprimorar o projeto, termos facilidades no momento da Análise de Dados. Essas facilidades irão de encontro com as diversas tabelas (bases) que inevitavelmente serão relacionadas garantindo assim o bom funcionamento das funções quando o modelo de dados envolve análise baseada em tempo.

Gostou deste conteúdo?




 

 

Amauri Bekesius

Amauri Bekesius

Formado em Administração de Empresas com Pós Graduação em Engenharia de Software, Certificado pela Microsoft com o titulo de Microsoft Ofice Specialist, e com certificação em Excel 365.

Instrutor em tecnologias Excel e Power BI há mais de 15 anos.

ENG DTP & Multimídia - Logo

 

 

ENVIE SEU CONTATO e SEUS COMENTÁRIOS


LinkedIn da ENG DTP Multimídia
     Facebook da ENG DTP Multimídia     Instagram da ENG DTP Multimídia

 Jornad Graphic Design