1
resposta

Calcular percentual de um indicador sob outro (travando filtro específico de um deles)

Tenho um conjunto de dados com a seguinte distribuição de colunas: Pedido / Ano / Status / Motivo de Cancelamento / Qtde de Pedidos. O status do pedido pode ser "Entregue" ou "Cancelado".

Preciso calcular o percentual de cancelados sob o total de pedidos. Consegui fazer uma fórmula criando as medidas 'QTDE Cancelados' e 'QTDE Total'.

Até aí, funciona, porém quando coloco uma segmentação externa para filtrar os motivos de cancelamento o percentual sempre dá 100% (visto que o Power BI acaba aplicando o filtro nas duas medidas e pega a mesma quantidade de pedidos em ambas).

Gostaria de "congelar" apenas a segunda medida (QTDE Total) para que APENAS ESSE filtro externo de motivo não seja aplicado, assim o percentual de motivos de cancelamento fique correto. Não posso desabilitar todos os filtros pois há informações de 'Ano' que preciso deixar habilitado. Como posso resolver esse problema?

1 resposta

Boa noite!

Caio, uma das medidas tem que estar com a sintaxe "All" a mesma remove todos os filtros externos, mantendo o % de Cancelamentos daquele motivo, sobre o total de motivos ignorando os filtros externos.

Caso queira que, quando filtrar um estado por exemplo, e seu % De Cancelamentos, mude, de % de Cancelamentos do Brasil para, analisar quais motivos impactaram no estado de MG por exemplo, usaria a ALLSELECTED, pois a mesma ignora o contexto de filtro quando nenhum filtro externo esta aplicado sobre o visual, e caso vc filtre a UF de MG, por exemplo, ela te mostra o % do total somente de MG, de acordo com os motivos.

Aproveitando o tópico passado:

Qtd_Cancelamentos = distinctcount(Tabela_Cancelamentos[numero_pedido]) ----Aqui você conta os números de pedidos, e remove os duplicados. Total_Cancelamentos = Calculate(distinctcount(Tabela_Cancelamentos[numero_pedido]), ALLSELECTED(Tabela_Cancelamentos)) -- -- Aqui você conta os números de pedidos distintos, e remove os filtros . Agora use a Função "Divide" para fazer a divisão, e tratar valores do tipo 0:

% Cancelamentos = Divide(Qtd_Cancelamentos , Total_Cancelamentos)

OBS: DISTINCTCOUNT = Conta os valores distintos de uma coluna, ideal em casos que o numero de pedido se repete em uma base. ALLSELECTED = Retorna todos os itens de uma tabela, mas respeita os filtros externos.

Veja se ajuda.

Abs