Skip to main content
Announcements
Qlik Introduces a New Era of Visualization! READ ALL ABOUT IT
cancel
Showing results for 
Search instead for 
Did you mean: 
kaikpizzi
Contributor II
Contributor II

COMPARAÇÃO DE DIFERENÇA ENTRE DOIS FILTROS

Boa tarde, Estou tentando fazer uma comparação entre o período atual - período passado / período passado * 100, o objetivo é conseguir uma variação de vendas em %, por exemplo, em meu filtro estou comparando o mesmo período em anos diferentes Fevereiro de 2023 e Fevereiro de 2024

A EXPRESSÃO QUE ESTOU USANDO É: 

( ( Sum({<Ano_DC={"$(VAnoAtual_DC)"}, Mes_DC={"$(VMesAtual_DC)"}>} TOTAL_ITEM_DC) - Sum({<Ano_DC={" $(VAnoAnterior)"}, Mes_DC={"$(VMesAtual_DC)"}>} TOTAL_ITEM_DC) ) ) / Soma({<Ano_DC= {"$(VAnoAtual_DC)"}, Mes_DC={"$(VMesAtual_DC)"}> } TOTAL_ITEM_DC)

ENVIANDO AS VARIAVEIS
VAnoAtual_DC:
=MAX(Ano_DC)
VAnoAnterior:
=MAX(Ano_DC) -1
VMesAtual_DC:
=MAX(Mes_DC)

6 Replies
RafaMartins
Creator II
Creator II

Você pode tentar essa expressão

( Above(Sum( TOTAL_ITEM_DC)) - Sum(TOTAL_ITEM_DC) ) / Above(Sum( TOTAL_ITEM_DC))

A função "Above" vai considerar o valor da coluna anterior e retornar o resultado que você precisa.

Quanto as variáveis, como em seu objeto o Ano é uma dimensão não é necessario utilizar um filtro de ano no set analysis pois a dimensão na tabela já vai distribuir o  valor.
Quanto a variável de mês, se o intuito for que sempre o usuario tenha que aplicar o filtro também não é necessario, caso queira que mesmo sem o filtro sempre considere o mês atual você pode utilizar o set analysis com a variável do mês, más eu recomendaria utilizar diretamente no set o max(Mes)

MatheusC
Specialist
Specialist

Talvez esteja faltando agregar pela sua dimensão,

Exemplo:

Sum(

  Aggr(

 

  ( ( Sum({<Ano_DC={"$(VAnoAtual_DC)"}, Mes_DC={"$(VMesAtual_DC)"}>} TOTAL_ITEM_DC)

  -

   Sum({<Ano_DC={" $(VAnoAnterior)"}, Mes_DC={"$(VMesAtual_DC)"}>} TOTAL_ITEM_DC) ) )

   /

  Soma({<Ano_DC= {"$(VAnoAtual_DC)"}, Mes_DC={"$(VMesAtual_DC)"}> } TOTAL_ITEM_DC),Dim1))

No exemplo coloquei Dim1, neste caso você informaria qual a dimensão faz parte do cálculo.

Att, Matheus

Did you find a solution to your question? Mark the solution as accepted and if you found it useful, press the like button!
kaikpizzi
Contributor II
Contributor II
Author

Muito Obrigado por disponibilizar o seu tempo, mas ainda continua dando valor errado =\ no antigo BI que eu tinha o plugger usava esse codigo e funciona perfeitamente

kaikpizzi
Contributor II
Contributor II
Author

Muito Obrigado por disponibilizar o seu tempo, mas ainda continua dando valor errado =\, fica zerado essa conta, não sei se é por conta de ser uma tabela dinamica, acredito que dividindo isso em duas tabelas simpes de certo

 

MatheusC
Specialist
Specialist

Consegui chegar no resultado utilizando a expressão com aggr. Uma sugestão caso não tenha feito, separar o seu problema em partes é uma melhor forma para encontrar a solução, separa seu código, veja cada parte dele para tentar identificar onde não traz os valores. Veja também suas varáveis, se o que retorna na varável é o mesmo formato que traz em seus campos.

MatheusC_1-1715369286056.png

 

 

Também se conseguir disponibilizar um exemplo com dados fictícios em qvf , pode ser mais fácil de auxiliar de uma melhor forma.

Att, Matheus

Did you find a solution to your question? Mark the solution as accepted and if you found it useful, press the like button!
kaikpizzi
Contributor II
Contributor II
Author

eu te mandei uma mensagem, se puder verificar por favor