Entendendo a fórmula Calculate do Power BI
- #Power BI
O que é o Power BI?
O Power BI é uma ferramenta poderosa de dataViz utilizada para análisar dados e levantar insights de diversos tipos, desenvolvida pela Microsoft. Uma das características mais potentes do Power BI é o uso da linguagem DAX (Data Analysis Expressions) para criar cálculos avançados e personalizar análises. Dentro dessa linguagem, a função CALCULATE
é uma das mais importantes e versáteis. Neste artigo, vamos explorar como a função CALCULATE
funciona e como ela pode ser utilizada para realizar cálculos complexos e ajustar contextos de filtro.
Antes de enterdermos mais a fundo a formula Calculate, precisamos entender como funciona a linguagem DAX e o porquê do seu uso.
DAX (Data Analysis Expressions), é uma linguagem de formulas utilizada pelo power bi para gerar informações especificas no seu relatório, para quem vem do excel, a sintaxe é semelhante, o que diferencia é o modo na qual é criado.
O DAX trabalha de três maneiras distintas:
1- Colunas calculadas: São colunas adicionadas a uma tabela que utilizam uma fórmula DAX para calcular seus valores. Elas são úteis para criar novos dados baseados em cálculos que se aplicam linha por linha.
Exemplo: Coluna de custo da venda, com base na multiplicação do custo unitário por quantidades vendidas.
Documentação: Usando colunas calculadas no Power BI Desktop - Power BI | Microsoft Learn
2- Medidas: São cálculos que são avaliados dinamicamente no contexto de uma visualização. Diferente das colunas calculadas, as medidas não armazenam dados, mas sim fórmulas que são avaliadas quando necessário.
Exemplo: Neste exemplo estamos utilizando a fórmula CALCULATE
para trazer o valor pago da parcela na qual a empresa é especificada por "Hashtag Treinamentos".
Documentação: Medidas no Power BI Desktop - Power BI | Microsoft Learn
3- Tabelas calculadas: São tabelas criadas a partir de fórmulas DAX. Elas são úteis para criar novas tabelas que sintetizam ou reorganizam dados existentes, um exemplo de uso são as tabelas calendários, muito utilizadas no power bi, na qual você pode ter um maior controle sobre as datas do seu relatório.
Exemplo: Estamos criando uma tabela calendario com as especificações necessárias utilizando uma fórmula DAX referente a datas.
Documentação: Usando tabelas calculadas no Power BI Desktop - Power BI | Microsoft Learn
Agora que entendemos o que é DAX e como usar no Power BI vamos entender como utilizar o CALCULATE
para gerar informações precisas no seu relatório.
O que é a fórmula Calculate?
Utilizamos o CALCULATE
no power bi quando precisamos modificar o contexto de filtro de uma expressão em dax, isso é, atráves do calculate podemos buscar informações das tabelas e adicionar filtros em conjunto dentro da mesma medida.
Calma, de inicio parece um pouco confuso, mas quando praticamos conseguimos entender mais a fundo o seu funcionamento, então bora pra prática.
Funcionamento:
Quando utilizamos o CALCULATE
primeiro precisamos de uma expressão inicial para podermos avaliar de acordo com os filtros aplicadas a ela:
CALCULATE(<expressão>, <filtro1>, <filtro2>,....)
Usando como base uma empresa de vendas de tênis, vamos entender como usar o CALCULATE
em algo real, uma solução baseada em uma regra de negócios.
"A loja BrasilTênis está com problemas em seu estoque, eles estão com uma alta demanda de tênis, mas ao mesmo tempo estão perdendo clientes pela desorganização e problemas de logisticas para fazer as entregas no tempo certo."
Com essa situação, você como um bom analista de BI, foi contratado para ajudar nas análises de dados usando a ferramenta Power BI, seu gerente precisa que você crie um relátorio com base nos últimos 6 meses, mostrando:
- O valor total de vendas;
- Quantidade total de tênis vendidos;
- Qual a quantidade de vendas no mês de Março de 2024;
- Valor de compra que o cliente SouzaMartins está gerando;
Mão na massa
Usando o campo de Medidas, vamos criar nossas análises:
Valor total de vendas:
Temos uma tabela com as informações de vendas obtidas, no caso a tabela fato, que seria a tabela que contém informações de valores quantitativos.
Para isso o CALCULATE
irá avaliar o contexto na qual está inserido, no caso a soma total de valor das vendas e irá retornar esse valor, podendo ser utilizado em algum visual no seu relátorio.
ValorTotalVendas = CALCULATE(SUM(Vendas[Valor]))
Quantidade total de tênis vendidos:
Como estamos avaliando a quantidade de compras total obtida, usamos o CALCULATE
para fazer a filtragem e a somtória de toda a coluna de quantidade, retornando o valor total de tênis vendidos.
QTDTenisVendidos = CALCULATE(SUM(Vendas[Quantidade]))
Quantidade de vendas no mês de Março de 2024:
Com base na medida "[QTDTenisVendidos]" que criamos anteriormente, podemos chama-la dentro do CALCULATE
no dax, fazendo assim uma medida mais limpa e com uma melhor otimização, nisso você consegue filtrar o mês de "Mar/2024" buscando na dimensão calendário, criada para ter relacionamento com sua tabela de Vendas.
MesMarcoQTDVendas = CALCULATE([QTDTenisVendidos],
Calendario[Mes/Ano] = "Mar/2024")
)
Valor de compra do cliente SouzaMartins:
Filtrando o cliente "SouzaMartins" atráves da coluna de clientes da tabela Vendas, você consegue saber o valor de compra total desse cliente.
ValorCompraCliente = CALCULATE(SUM(Vendas[Valor]),
Vendas[Cliente] = "SouzaMartins"
)
Com base nessas informações, vimos que o calculate é um "canivete suiço" na linguagem DAX, podendo ser utilizado em diversas situações.
Para dominar o DAX, você precisa entender a fundo sobre essa poderosa fórmula, pois sem ela, suas medidas não terão a mesma funcionalidade, seus gráficos poderão quebrar e não ter uma análise dinâmica de seu relatório.
Então bora praticar rs.
Recomendo visitar a documentação pra ter um melhor entendimeno do seu funcionamento.
Documentação: Função CALCULATE (DAX) - DAX | Microsoft Learn