Skip to main content
Announcements
Have questions about Qlik Connect? Join us live on April 10th, at 11 AM ET: SIGN UP NOW
cancel
Showing results for 
Search instead for 
Did you mean: 
Not applicable

Agrupamentos e Somas

Boa tarde.

Estou enfrentando uma dificuldade e gostaria de saber se alguém já passou por isto e conseguiu selecionar.

Eu tenho uma tabela com ID_PRODUTO, DATA_COMPRA, VALOR_COMPRA.

Preciso fazer Sum(Valor_compra) onde Data_Compra = Max(Data_compra).

Minha dimensão é ID_PRODUTO e a expressão é "=sum({<DATA_COMPRA = {'$(=max(DATA_COMPRA))'}>} VALOR_COMPRA)"

Porém ele retorna a soma de valor_compra de MAX(Data_Compra) da tabela toda, e não de Max(Data_Compra) de cada produto:

evidencia.png

Nem todos os produtos são comprados no mesmo dia e eu preciso obter o ultimo valor pago na compra.

Alguém poderia me ajudar?

Muito obrigado,

Renato Adolfs

Labels (2)
1 Solution

Accepted Solutions
nicolett_yuri

Set Analysis não faz comparação linha a linha como você espera, ele sempre resolve o cálculo para a tabela.

Tente fazer algo desse tipo

SUM(

  if(

  DATA_COMPRA= Aggr( Nodistinct Max( DATA_COMPRA ), ID_PRODUTO),

  VALOR_COMPRA

  ))

View solution in original post

3 Replies
nicolett_yuri

Set Analysis não faz comparação linha a linha como você espera, ele sempre resolve o cálculo para a tabela.

Tente fazer algo desse tipo

SUM(

  if(

  DATA_COMPRA= Aggr( Nodistinct Max( DATA_COMPRA ), ID_PRODUTO),

  VALOR_COMPRA

  ))

Clever_Anjos
Employee
Employee

Set Analysis são avaliados antes das quebras do gráfico, como disse o Yuri, não é avaliado linha a linha

Uma solução seria utilizar

FIRSTSORTEDVALUE(

     AGGR(SUM(VALOR_COMPRA),DATA_COMPRA),

     - DATA_COMPRA

)

Not applicable
Author

Obrigado, pessoal.

Utilizei a solução do Yuri e deu certo.

Muito obrigado mesmo.

Atenciosamente,

Renato Adolfs