Calcular o valor do mês passado com DAX e Power BI

Como calcular o valor do último mês em DAX para Power BI? Gestores, consultores financeiros e consultores empresariais utilizam comparações mensais de forma extensiva. Para criar estas medidas de comparação, utilizar as funções de inteligência temporal do DAX disponíveis no editor DAX. Vamos utilizar a função DAX MÊS ANTERIORES para tratar disto.

Como calcular o valor do último mês em DAX com Power BI desktop?

Vamos considerar a tabela de vendas com as vendas armazenadas por mês, por ano e o número de cliente. Note-se que para qualquer função de inteligência temporal DAX, utilizada no Power BI ou num modelo Tabular, deve ser utilizada como referência uma coluna de data.

Vamos considerar que tem estas duas colunas disponíveis no seu modelo de dados:

  • A coluna Valor de Vendas que armazena o número de vendas registadas nesse dia.
  • A coluna da hora DateKey é uma data.

Verifique também a possibilidade de armazenar o total das vendas num dia único, como o 31 de Janeiro de 2020, por exemplo. De facto, o objectivo é introduzir uma chave de data única para as funções de hora DAX, para permitir o cálculo das vendas do mês anterior.

Para criar a medida, utilizar a função DAX do mês anterior, a sua documentação oficial e sintaxe estão disponíveis no website da Microsoft.

Este exemplo DAX calcula a coluna do mês actual a partir de uma fonte de dados DAX.

Neste primeiro exemplo, utilizar Power BI Desktop e um ficheiro Power BI (extensão pbix) para mapear a coluna a partir da fonte de dados. E no software de desenvolvimento Visual Studio para um Modelo Tabular Multidimensional.

Sales Last Month := CALCULATE(SUM('ShopSales'[SalesAmount]), PREVIOUSMONTH('Time'[DateKey]))

O segundo exemplo com dois níveis de fórmulas DAX para calcular o último mês

Esta segunda abordagem é muito semelhante à primeira, mas utiliza uma medida já criada. É feita em duas etapas e utiliza dois cálculos DAX em vez de um.

Por exemplo, criar as medidas das vendas do mês corrente com esta fórmula DAX:

Sales := SUM('ShopSales'[SalesAmount])

Depois criar a medida de vendas do último mês com esta segunda fórmula:

Sales Last Month := CALCULATE([Sales], PREVIOUSMONTH('Time'[DateKey]))

Neste artigo, o exemplo mostra como é fácil calcular um valor do mês anterior com as funções de tempo nativo DAX.