Como Calcular o Valor do Mês Anterior no Power BI ?

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 )
)
Fórmula Power BI para calcular o valor do mês anterior usando DAX
Fórmula Power BI para calcular o valor do mês anterior usando DAX

E o resultado no relatório Power BI é algo como isto:

Relatório Power BI mostrando vendas do último mês calculadas usando a função de tempo PREVIOUSMONTH
Relatório Power BI mostrando vendas do último mês calculadas usando a função de tempo PREVIOUSMONTH

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.