Como criar um cálculo do valor do mês anterior usando fórmulas DAX no Power BI?
Descubra como calcular o valor do mês anterior no Power BI neste tutorial usando 2 abordagens diferentes. Gestores, contabilistas, assessores financeiros e consultores de Business Intelligence utilizam o Power BI e comparações mensais extensivamente, como os valores do mês anterior e do último ano. Para criar estas medidas de comparação, utilize as funções de inteligência de tempo DAX disponíveis no editor DAX. Vamos abordar isto usando a função DAX PREVIOUS MONTH.
1. Use a função PREVIOUSMONTH no DAX para obter o mês anterior
O objetivo da função DAX PREVIOUSMONTH é recuperar dados do mês imediatamente anterior com base numa coluna de data especificada. Por exemplo, se tiver dados de vendas e quiser comparar as vendas deste mês com as do mês passado, poderia usar PREVIOUSMONTH(‘Tabela'[Data]) numa medida.
Quando aplicada, a função filtra os dados para incluir apenas valores do mês imediatamente anterior à data mais recente na coluna. É vital notar que a função opera dentro do contexto do seu modelo de dados do Power BI. Ou seja, funciona melhor quando tem uma tabela de datas adequada relacionada aos seus dados transacionais. É altamente recomendado verificar a configuração da sua tabela marcada como data.
Duas opções disponíveis usando fórmulas DAX para este cálculo
Vamos considerar a tabela de vendas com vendas armazenadas por mês, por ano e o número do cliente. Além disso, para qualquer função de inteligência de tempo no DAX, ou seja, no Power BI ou num modelo Tabular, uma coluna de data deve ser a referência. Considere que tem estas duas colunas disponíveis no seu modelo de dados:
- A coluna Amount de Vendas armazena o número de vendas registadas nesse dia.
- A coluna de tempo DateKey é uma data usada como chave para junções no Power BI.
Verifique também a possibilidade de armazenar o total de vendas de um mês num único dia. Como o 31 de janeiro de 2020 para o mês de janeiro, por exemplo. De facto, o objetivo é introduzir uma chave de data única para as funções de tempo DAX, para permitir o cálculo de vendas do mês anterior. Para criar a medida, use a função DAX do mês anterior, cuja documentação e sintaxe oficial estão disponíveis no site da Microsoft.
Um pré-requisito: configurar uma Tabela de Datas para usar funções de inteligência de tempo no Power BI
Para usar eficazmente as funções de inteligência de tempo no Power BI, um pré-requisito é configurar uma Tabela de Datas. Esta tabela, apresentando um intervalo contínuo de datas, é crucial para realizar análises baseadas no tempo com precisão, pois permite ao Power BI aplicar cálculos dinâmicos sobre vários períodos, assegurando precisão e consistência na avaliação de dados temporais.
Às vezes, ao construir um modelo, pode encontrar o seguinte erro: “Falha ao resolver o nome ‘REVIOUSMONTH’. Não é um nome de tabela, variável ou função válido.” Para corrigi-lo, verifique novamente a barra de fórmulas e os erros destacados, geralmente são erros de sintaxe ou parênteses faltando, ou seja, erros de desenvolvimento clássicos. E as mensagens exibidas pelo Power BI são explícitas.
2. Calcular o mês anterior diretamente da fonte de dados do Power BI
Neste primeiro exemplo, use o Power BI Desktop e um arquivo Power BI (extensão pbix) para mapear diretamente a coluna da fonte de dados. E no software de desenvolvimento Visual Studio para um Modelo Tabular usando SSAS.
Sales Last Month = CALCULATE ( SUM ( sales[sales] ), PREVIOUSMONTH ( 'time'[date_key]), REMOVEFILTERS ( sales ) )
E o resultado no relatório Power BI é algo como isto:
3. Use dois níveis de fórmulas para obter o mês anterior
Esta segunda abordagem é muito semelhante à primeira, mas simplesmente utiliza uma medida já criada. É feita em dois passos e usa duas cálculos DAX em vez de um. Por exemplo, crie as medidas das vendas do mês atual com esta fórmula DAX.
Sales := SUM('sales'[SalesAmount])
Depois, crie a medida de vendas do último mês usando esta segunda fórmula DAX abaixo:
Sales Last Month = CALCULATE ( sales[sales], PREVIOUSMONTH ( 'time'[date_key]), REMOVEFILTERS ( sales ) )
Sobre o cálculo do mês anterior no Power BI
Neste tutorial do Power BI, os dois exemplos mostram como é fácil calcular um valor do mês anterior no Power BI usando a função de tempo DAX PREVIOUSMONTH. Neste tutorial anterior sobre funções DAX, confira como criar um cálculo YTD usando DAX e Power BI.