Importante

Você está vendo a versão anterior da nova experiência da Alura que estamos preparando para você. Em breve, ela ganha uma identidade visual novinha totalmente pensada em potencializar seus estudos!

1
resposta

[Sugestão] Possíveis ajustes nas medidas de Total Custo e Total Lucro Cenário

Ao revisar a solução proposta para o desafio, identifiquei dois pontos que talvez mereçam ajuste.

Na medida de Total Custo Cenário, o parâmetro Preço produto também está sendo aplicado ao custo unitário:

RELATED(Tb_Produtos[Custo]) *
(1 + [Preço produto Valor])

Entretanto, pelo contexto apresentado, esse parâmetro parece representar uma variação no preço de venda do produto. Nesse caso, ele deveria afetar somente o Total Vendas. Uma alteração no preço cobrado ao cliente não provoca, necessariamente, uma alteração no custo de aquisição ou de produção.

Assim, considerando apenas os dois parâmetros apresentados — Quantidade e Preço do produto — a medida de custo poderia ser escrita da seguinte forma:

Total Custo Cenário =
SUMX(
    Tb_ItensNotas,
    Tb_ItensNotas[Quantidade] *
    (1 + [Quantidade Valor]) *
    RELATED(Tb_Produtos[Custo])
)

Caso a intenção seja simular também uma variação no custo unitário, acredito que seria mais adequado criar um terceiro parâmetro, como Custo produto, independente do parâmetro de preço de venda.

Também parece desnecessário utilizar SUMX() na medida de Total Lucro Cenário, pois as medidas de Total Vendas e Total Custo já realizam suas respectivas iterações e retornam valores agregados.

A medida poderia ser definida simplesmente como:

Total Lucro Cenário =
    [Total Vendas Cenário] -
    [Total Custo Cenário]

A utilização de SUMX() nessa etapa faria com que as duas medidas fossem avaliadas novamente durante a iteração pelas linhas de Tb_ItensNotas, tornando o cálculo mais complexo e podendo produzir resultados inadequados.

Portanto, considerando que o parâmetro de preço altera somente o preço de venda, a estrutura sugerida seria:

Total Vendas Cenário =
SUMX(
    Tb_ItensNotas,
    Tb_ItensNotas[Quantidade] *
    (1 + [Quantidade Valor]) *
    RELATED(Tb_Produtos[Preço]) *
    (1 + [Preço produto Valor])
)
Total Custo Cenário =
SUMX(
    Tb_ItensNotas,
    Tb_ItensNotas[Quantidade] *
    (1 + [Quantidade Valor]) *
    RELATED(Tb_Produtos[Custo])
)
Total Lucro Cenário =
    [Total Vendas Cenário] -
    [Total Custo Cenário]
1 resposta

Fala, Alexandre! Tudo bom?

Agradeço por trazer sua análise para o fórum!

Curti demais como você trabalhou a clareza conceitual para separar parâmetros de custo e preço em DAX, entendeu perfeitamente a importância da simplificação das medidas para evitar cálculos redundantes e utilizou bem a função SUMX para iterar sobre os itens de forma controlada.

Se quiser aprofundar ainda mais, algumas boas práticas são:

  • Eficiência: evitar SUMX em medidas que já retornam valores agregados.
  • Legibilidade: manter nomes de medidas claros e consistentes para facilitar manutenção.
  • Separação de parâmetros: criar medidas distintas para preço e custo, evitando confusão conceitual.

Continue postando as suas soluções! Além de ganhar pontos de XP na plataforma, você pode ajudar outros estudantes no fórum.

Ah, uma pergunta: o que você prefere, manter os parâmetros separados para custo e preço ou criar um único parâmetro mais genérico que possa ser aplicado em ambos os cenários?

Fico à disposição! E se precisar, conte sempre com o apoio do fórum.

Abraço e bons estudos!

Alura Conte com o apoio da comunidade Alura na sua jornada. Abraços e bons estudos!