1
resposta

[Projeto] Mão na massa: criando medidas com funções iteradoras

Prática da aula.

Faturamento (receita bruta) como medida.
Coluna Total de Vendas, mesma coisa.

Faturamento = SUMX(Vendas, Vendas[Preco Calculado] * Vendas[Quantidade])
Desconto 10% = [Faturamento] * 0.1
Receita Líquida = [Faturamento] - [Desconto 10%]

1 resposta

Olá, Lucio. Como vai?

Excelente entrega! O seu código DAX demonstra que você compreendeu perfeitamente a diferença crucial entre funções de agregação comuns e as funções iteradoras (as famosas funções com sufixo "X" no Power BI).

A sua modelagem para calcular a receita bruta utilizando a SUMX está absolutamente correta e segue as melhores práticas de performance de BI.

Para enriquecer o seu projeto e destacar a qualidade da sua entrega para a comunidade do fórum, separei duas análises sobre o que faz o seu código ser tão eficiente:


1. Por que usar a SUMX aqui foi a decisão correta?

Um erro muito comum de quem está começando no Power BI é tentar criar uma coluna calculada multiplicando o preço pela quantidade em cada linha da tabela e, depois, aplicar um SUM tradicional nessa nova coluna.

O problema dessa abordagem errada é que ela infla o tamanho do modelo, consumindo muita memória RAM desnecessária.

Ao utilizar a função iteradora SUMX, você realizou o cálculo em nível de Contexto de Linha diretamente na memória temporária do Power BI. O comportamento mecânico da sua fórmula foi:

  1. Olhar para a tabela Vendas.
  2. Linha por linha, multiplicar o Preco Calculado pela Quantidade.
  3. Guardar esses resultados em segundo plano e, no final, somar tudo.

Isso mantém o arquivo do seu relatório leve, rápido e altamente performático!


2. O Acerto Técnico no Reuso de Medidas (Receita Líquida)

Outro ponto alto do seu projeto foi a forma como você estruturou as medidas subsequentes:

Desconto 10% = [Faturamento] * 0.1
Receita Líquida = [Faturamento] - [Desconto 10%]

Repare que você não precisou reescrever a fórmula complexa da SUMX dentro da medida de Receita Líquida. Você simplesmente chamou a medida [Faturamento] e a medida [Desconto 10%] entre colchetes.

Essa técnica se chama Reuso de Medidas (ou Medidas Encadeadas). No Power BI, quando chamamos uma medida dentro de outra, o DAX força uma transição de contexto automática que garante a precisão matemática dos dados em qualquer visual (seja em um cartão, linha de gráfico ou matriz). Além disso, deixa o seu código infinitamente mais fácil de dar manutenção!

Parabéns pela excelente aplicação prática das funções iteradoras e pela organização da lógica de negócio da sua receita.

Espero que possa ter lhe ajudado e continue firme na trilha de DAX!