Skip to main content
Announcements
Qlik Connect 2024! Seize endless possibilities! LEARN MORE
cancel
Showing results for 
Search instead for 
Did you mean: 
tucahernandes
Contributor II
Contributor II

Valor acumulado em tabela de data com ordem decrescente

Em uma tabela que precisa estar na ordem decrescente de data, preciso incluir uma coluna com os valores acumulados, partindo do princípio que esse acúmulo deve acontecer de baixo para cima. Como no modelo abaixo:


Data, Valor,Acumulado

05/01/2018,20,90

04/01/2018,20,70

03/01/2018,10,50

02/01/2018,30,40

01/01/2018,10,10


Em ordem crescente, consigo fazer isso tranquilamente, bastando aplicar um RangeSum(Above(total sum(Valor), 0, RowNo(TOTAL))). Só que isso exige que a data esteja sempre em ordem crescente na tabela.


Alguém aqui já se deparou com algo similar, conseguindo um cálculo que permita a situação do modelo que coloquei aqui? E melhor, mantendo isso, independente se está ou não em ordem decrescente. De forma que, por exemplo, a data de 04/01/2018 esteja sempre com o valor 70, independente se a data está em ordem crescente ou decrescente?

Labels (3)
2 Replies
nicolett_yuri

Você pode usar AGGR para forçar a ordenação, dessa maneira não importa como esteja a ordenação da sua tabela, o que vai valer é a ordenação gerada pela função AGGR;

Um exemplo de aggr:

sum(

aggr(

above(sum([Valor]))

, Data

, (Data, (NUMERIC, DESCENDING))

)

)

tucahernandes
Contributor II
Contributor II
Author

Olá, Yuri

No modelo simples que fiz aqui, implementado no Qlikview, com base nos mesmos dados que compartilhei, consegui utilizando a seguinte expressão:

sum(

aggr(

RangeSum(Below(Total sum(Valor),0,Data))

,Data

,(Data,(NUMERIC, DESCENDING))

)

)

No entanto, ao adaptar para a aplicação final, no Qlik Sense, não deu certo (os dados aparecem, mas sem o acúmulo esperado). Na tabela em questão, tenho tanto a coluna da data quanto a coluna com a expressão. Aqui, chama a atenção também que NUMERIC, DESCENDING estão sem cor, aparentemente indicando não ter função alguma aqui (não sei se no Sense seria diferente do Qlikview nesse caso):

Screen Shot 09-28-18 at 10.21 AM.JPG

O que pode estar acontecendo?