Módulo 8: DAX intermediário: filtros, relações e ranking

Aula 4 de 4

Padrões de medida que resolvem 80% dos pedidos

Um repertório pronto para copiar, entender e adaptar.

18 minutos de leitura


Comparação com a média

DAXDesvio em relação à média das categorias
Média por Categoria =AVERAGEX( ALLSELECTED( dProduto[Categoria] ), [Receita Total] ) Desvio da Média % =DIVIDE( [Receita Total] - [Média por Categoria], [Média por Categoria] )

Contagens condicionais

DAXQuantos itens atendem a um critério de negócio
Clientes Ativos =CALCULATE(    DISTINCTCOUNT( fVendas[IdCliente] ),    DATESINPERIOD( dCalendario[Date], MAX( dCalendario[Date] ), -90, DAY )) Clientes Inativos =VAR Todos = CALCULATE( DISTINCTCOUNT( fVendas[IdCliente] ), ALL( dCalendario ) )RETURN Todos - [Clientes Ativos] Produtos sem Venda =COUNTROWS(    FILTER( ALL( dProduto[Produto] ), ISBLANK( [Receita Total] ) ))

Novo x recorrente

DAXSeparando clientes novos de recorrentes
Clientes Novos =VAR InicioPeriodo = MIN( dCalendario[Date] )RETURNCOUNTROWS(    FILTER(        VALUES( fVendas[IdCliente] ),        CALCULATE(            MIN( fVendas[Data] ),            REMOVEFILTERS( dCalendario )        ) >= InicioPeriodo    )) Clientes Recorrentes = [Qtd Clientes] - [Clientes Novos] Receita de Clientes Novos =CALCULATE(    [Receita Total],    FILTER(        VALUES( fVendas[IdCliente] ),        CALCULATE( MIN( fVendas[Data] ), REMOVEFILTERS( dCalendario ) ) >= MIN( dCalendario[Date] )    ))

Último valor conhecido (semiaditivo)

DAXSaldo de estoque no fim do período
Saldo Estoque =CALCULATE(    SUM( fEstoque[Quantidade] ),    LASTNONBLANK( dCalendario[Date], CALCULATE( SUM( fEstoque[Quantidade] ) ) )) Saldo Estoque (fim do mês) =CALCULATE(    SUM( fEstoque[Quantidade] ),    LASTDATE( dCalendario[Date] ))

Exercício prático

Implemente as medidas de Clientes Novos, Recorrentes e Receita de Clientes Novos. Monte um gráfico de colunas empilhadas por mês mostrando a composição da receita entre novos e recorrentes.