Página 1 de 1

Média % economizado em uma matriz para grupo e subgrupo (Entidade x Usuários).

Enviado: 25 Mai 2022 às 18:06
por Wanilton
Tenho a seguinte situação, preciso da média de % desconto de um grupo de condomínios levando em conta a seguinte regra

Somar os totais médios mensais de descontos de cada pessoa, e dividir pelo nr total de meses de todas as pessoas do condomínio, ou seja se a pessoa A fez transações em 4 meses, e o B fez em 2 meses, e o C fez em 4 meses, o total de meses é 10. Logo para ter a média basta ter o total acumulado do % economizado e dividir por estes 10 meses.

Tenho a média correta para as pessoas (soma da médias mensais, dividido pelo número de meses), usando os seguintes códigos dax
Código: Selecionar todos
Redução Tx do Usuário = 
AVERAGEX(
	KEEPFILTERS(VALUES('Dcalendario'[MesAno])),
	CALCULATE([% ECONOMIZADO USUARIO])
)
onde % economizado usuário é a seguinte medida dax
Código: Selecionar todos
% ECONOMIZADO USUARIO = 
IF(
	NOT(HASONEVALUE(clientes[Nome])),
	AVERAGEX(
		VALUES(clientes[Nome]),
		[media economizado tx]
	),
	[media economizado tx] 
onde a media economizado é a divisão da penúltima coluna pela segunda, no dia 08.11.2021, o valor é 0,10 divido por 325,00 = 0,10%

No caso da imagem que apresento para melhorar a compreensão o % desconto do Alcantara (condomínio), é apresentado como 1,5%, quando o correto seria 1,12%

O total das médias dos usuários no caso é de 11,25% que dividido por 10 meses que é a soma dos meses que ocorreram transações de todos os usuários deste condomínio, dá uma média de 1,12%, o objetivo final é ter a média de cada condomínio e dos demais condomínios que participam do cálculo, mantendo a informação da média por usuário, e por mês (ambas já ok).

Imagem

https://i.imgur.com/EYYHgAt.jpg

No caso para ficar ok o cálculo do Alcantara, tenho que somar o % da Aline + o % do Edevilson e de outras 2 pessoas, que vai totalizar 11,25 e dividir por 10 meses (os 4 meses da Aline, os 2 meses do Edevilson e de mais 2 outras pessoas com 2 meses cada).

Como deve acertar o código dax, para que o total do grupo fique ok, mantendo os nrs das médias das pessoas que já estão ok?

Agradeço qualquer dica...

E como posso fazer para obter o total destes meses (soma) para apresentar em um card, quero o total geral de meses de todas as transações (soma dos meses de cada usuário).

Re: Média % economizado em uma matriz para grupo e subgrupo (Entidade x Usuários).

Enviado: 28 Mai 2022 às 14:08
por Vilmar
Tem como enviar seu pbix? Pode ser com dados fictícios.

Re: Média % economizado em uma matriz para grupo e subgrupo (Entidade x Usuários).

Enviado: 28 Mai 2022 às 20:57
por Wanilton
https://files.xbmcbrasil.net/Suporte/po ... quivos.zip

Here you have pi + 3 arquivos excel

resultado esperado para o condomínio X 0,58%

Soma dos percentuais médios das pessoas divididos por 10 meses (totais de meses que teve evento)....

Gostaria de um card que apresente o resultado 10 meses

Re: Média % economizado em uma matriz para grupo e subgrupo (Entidade x Usuários).

Enviado: 29 Mai 2022 às 22:05
por Vilmar
Tente
Código: Selecionar todos
Medida = 
DIVIDE (
    SUMX ( VALUES ( 'usuarios'[NOME] ), [Redução Tx] ),
    COUNTROWS (
        FILTER (
            SUMMARIZECOLUMNS ( 'usuarios'[NOME], Dcalendario[Data].[MonthNo] ),
            NOT ( ISBLANK ( [Total Valor] ) )
        )
    )
)
Imagem

Re: Média % economizado em uma matriz para grupo e subgrupo (Entidade x Usuários).

Enviado: 29 Mai 2022 às 23:57
por Wanilton
Obrigado Vilmar já me ajudou bastante...

Segue o bi2 atualizado, para que possa ver como ficou

https://files.xbmcbrasil.net/Suporte/bi2.zip

Uma pena não poder colocar a medida na matriz pois gera um erro na visualização, causado pelo cálculo para apurar o nr de meses .

Consegui com sua métrica o nr de meses para o card que precisava.

Se encontrar uma maneira de colocar este % na matriz, vai ser de grande ajuda.

Na revisão notei que cometi um erro no valor de destino mas consegui acertar aqui, é pegar o % economia e dividir pelos meses, ficando assim a medida.

Medida =
DIVIDE (
[% Economia] ,
COUNTROWS (
FILTER (
SUMMARIZECOLUMNS ( 'usuarios'[NOME], Dcalendario[Data].[MonthNo] ),
[Total Valor]
)
)
)

com isto chego ao resultado de 1,25% em média para este condomínio X e a 1,03 para o condomínio B .

Mas a média de todos os condomínios, não é a soma destes resultados, portanto tenho que pegar a soma das médias de cada condomínio e ainda dividir pelo nr de condomínios, ou seja 1,25% do cond. X + 1,03% do condomínio B, vai ser igual 2,28, que dividido por 2 condomínios = 1,14% que é o resultado final do que preciso.

A medida vai representar a economia média de todos os condomínios.

Podes criar esta medida por favor.
Resumindo a necessidade da nova medida:
vai ser a "medida acima" dividida pelo nr de condomínios que tiver na matriz, no exemplo que citei acima 2 (condomínio X e B).

Re: Média % economizado em uma matriz para grupo e subgrupo (Entidade x Usuários).

Enviado: 30 Mai 2022 às 23:04
por Vilmar
Imagem
Código: Selecionar todos
Medida2 = 
AVERAGEX (
    VALUES ( condominios[Nome] ),
    DIVIDE (
        [% Economia],
        COUNTROWS (
            FILTER (
                CROSSJOIN ( VALUES ( 'usuarios'[NOME] ), VALUES ( Dcalendario[MesAno] ) ),
                [Total Valor]
            )
        )
    )
)

Re: Média % economizado em uma matriz para grupo e subgrupo (Entidade x Usuários).

Enviado: 31 Mai 2022 às 20:05
por Wanilton
Muito grato, funcionou ok no cartão.