Vendas Totais Big Data = SUMX( FILTER( (Vendas), RELATED(Produtos[Categoria]) = "Big Data" ), Vendas[Quantidade] )
Vendas Totais Big Data all = SUMX( FILTER( ALL(Vendas), RELATED(Produtos[Categoria]) = "Big Data" ), Vendas[Quantidade] )
Vendas Totais Big Data = SUMX( FILTER( (Vendas), RELATED(Produtos[Categoria]) = "Big Data" ), Vendas[Quantidade] )
Vendas Totais Big Data all = SUMX( FILTER( ALL(Vendas), RELATED(Produtos[Categoria]) = "Big Data" ), Vendas[Quantidade] )
Olá, Washington. Como vai?
Excelente trabalho neste desafio! A exploração de contextos é um dos pilares mais importantes (e desafiadores) do DAX, e suas fórmulas demonstram que você compreendeu a diferença crucial entre filtrar dados mantendo o contexto atual e ignorá-lo para obter totais globais.
Na imagem fornecida, vemos a aplicação prática de duas medidas distintas que ilustram bem os conceitos de Contexto de Filtro e a função ALL:
SUMX e FILTER sobre a tabela Vendas.RELATED é perfeito aqui, pois permite acessar a categoria na tabela de Produtos a partir da tabela de Vendas.ALL(Vendas) dentro do filtro.ALL remove os filtros aplicados à tabela, o que explica por que o cartão exibe 1,94M.Embora o uso de FILTER com SUMX funcione perfeitamente, uma forma muito comum e performática de escrever essas mesmas medidas no dia a dia do Power BI é utilizando a função CALCULATE. Veja como ficariam:
Vendas Totais Big Data = CALCULATE( SUM(Vendas[Quantidade]), Produtos[Categoria] = "Big Data" )Vendas Totais Big Data all = CALCULATE( SUM(Vendas[Quantidade]), Produtos[Categoria] = "Big Data", ALL(Vendas) )O CALCULATE realiza uma "transição de contexto" interna que torna o código mais limpo e, em bases de dados muito grandes, costuma ser mais rápido que iteradores com filtros manuais.
Seu dashboard está com uma estética muito agradável e os resultados batem perfeitamente com a lógica aplicada. Continue praticando essa manipulação de filtros, pois é isso que diferencia um desenvolvedor iniciante de um avançado!
Espero que possa ter lhe ajudado!