Skip to main content
Announcements
Join us at Qlik Connect for 3 magical days of learning, networking,and inspiration! REGISTER TODAY and save!
cancel
Showing results for 
Search instead for 
Did you mean: 
ftataides
Contributor II
Contributor II

Prazo médio ponderado com variação anual

Olá,

Estou trabalhando em um KPI que mostre o prazo médio ponderado por período, para tanto sei que a expressão Sum(Prazo*Receita)/ Sum(Receita) resolve meu problema, no entanto eu preciso enxergar a variação do meu prazo médio em relação ao ano anterior, nesse sentido eu teria que adicionar um Max Ano para identificar que o maior período de analise do prazo médio seria anual e a partir dai fazer as comparações.

Considerando os fatos acima eu montei a seguinte expressão para o Prazo médio ponderado do ano selecionado:

Sum({$<Ano={$(=(Max(Ano)))}>}[Prazo])*({$<Ano={$(=(Max(Ano)))}>}[Receita])/Sum({$<Ano={$(=(Max(Ano)))}>}[Receita])

E para a Variação do Ano selecionado com o ano anterior:

Sum({$<Ano={$(=(Max(Ano)))}>}[Prazo])*({$<Ano={$(=(Max(Ano)))}>}[Receita])/Sum({$<Ano={$(=(Max(Ano)))}>}[Receita]) -

Sum({$<Ano={$(=(Max(Ano)-1))}>}[Prazo])*({$<Ano={$(=(Max(Ano)-1))}>}[Receita])/Sum({$<Ano={$(=(Max(Ano)-1))}>}[Receita])

No entanto, ao contrário do que ocorre ao utilizar apenas a expressão Sum(Prazo*Receita)/Sum(Receita), quando adiciono a condicional do ano o Qlik não retorna o Prazo Médio, muito menos a variação entre o prazo médio do ano selecionado e o anterior.

Tentei fragmentar minha expressão para identificar onde está o erro e ela está "parando"  de funcionar justamente quando adiciono o sinal de multiplicação (*). Não sei como resolver este problema, pois preciso que ocorra a multiplicação, caso contrário o resultado da expressão não será a média ponderada do período.

Labels (2)
1 Solution

Accepted Solutions
Thiago_Justen_

Flávio,

Teste:

Sum({<Ano={$(=Max(Ano))}>}Prazo*Receita)/Sum({<Ano={$(=Max(Ano))}>}Receita)


Para o ano anterior:


Sum({<Ano={$(=Max(Ano)-1)}>}Prazo*Receita)/Sum({<Ano={$(=Max(Ano)-1)}>}Receita)

Thiago Justen Teixeira Gonçalves
Farol BI
WhatsApp: 24 98152-1675
Skype: justen.thiago

View solution in original post

2 Replies
Thiago_Justen_

Flávio,

Teste:

Sum({<Ano={$(=Max(Ano))}>}Prazo*Receita)/Sum({<Ano={$(=Max(Ano))}>}Receita)


Para o ano anterior:


Sum({<Ano={$(=Max(Ano)-1)}>}Prazo*Receita)/Sum({<Ano={$(=Max(Ano)-1)}>}Receita)

Thiago Justen Teixeira Gonçalves
Farol BI
WhatsApp: 24 98152-1675
Skype: justen.thiago
ftataides
Contributor II
Contributor II
Author

Corretíssimo novamente meu nobre.

Muito Obrigado Thiago.