Qlik Community

Qlik Brasil

Group community for Brazil users. discussion only in Portuguese.

Highlighted
rogerioqv
Contributor II

Dados Acumulado no Sense

Caros,

Alguém já precisou acumular dados no Gráfico no Sense? Já tentei utilizando RangSum com Above e não consegui. A estrutura é a que está em anexo... a sintaxe utilizada para tentar fazer o acumulado foi:

RangeSum(Sum({1<[VENDA_APLICACAO.CODNOMEFORNECEDOR] = $::[VENDA_APLICACAO.CODNOMEFORNECEDOR],

       [VENDA_APLICACAO.LOJA] = $::[VENDA_APLICACAO.LOJA],

       [VENDA_APLICACAO.ANO] = {"<=$(vMaxAno)"},

       [VENDA_APLICACAO.MES] = $:: [VENDA_APLICACAO.MES],

       [VENDA_APLICACAO.APLICACAO] = $::[VENDA_APLICACAO.APLICACAO]>}[VENDA_APLICACAO.LIQUIDO]),

Above(

Sum({1<[VENDA_APLICACAO.CODNOMEFORNECEDOR] = $::[VENDA_APLICACAO.CODNOMEFORNECEDOR],

       [VENDA_APLICACAO.LOJA] = $::[VENDA_APLICACAO.LOJA],

       [VENDA_APLICACAO.ANO] = {"<=$(vMaxAno)"},

       [VENDA_APLICACAO.MES] = $:: [VENDA_APLICACAO.MES],

       [VENDA_APLICACAO.APLICACAO] = $::[VENDA_APLICACAO.APLICACAO]>}[VENDA_APLICACAO.LIQUIDO])

)

Acredito estar faltando algum Agrr ou algo a mais, pois sei que no gráfico ao exportar para excell as linhas são exibidas como mes, ano, dia e valor. Assim, ao usar o Above, não sei se ele vai entender as linhas de acordo com as dimensões (Mes e Ano).

Tags (1)
1 Solution

Accepted Solutions
pablolabbe
Valued Contributor II

Re: Dados Acumulado no Sense

Oi Rogério,

  Use desta forma:

   rangesum (above( sum(), 0, rowno()))

   Onde sum() e sua expressão sum com o set analysis.

3 Replies
pablolabbe
Valued Contributor II

Re: Dados Acumulado no Sense

Oi Rogério,

  Use desta forma:

   rangesum (above( sum(), 0, rowno()))

   Onde sum() e sua expressão sum com o set analysis.

rogerioqv
Contributor II

Re: Dados Acumulado no Sense

Pablo, obrigado pela ajuda, mas neste caso não funciona, pois ele acumula os anos, não os meses dentro dos anos... tive que criar uma medida para cada ano, daí sim, tanto o seu SA como o meu funcionaram.

Espero que o Sense aplique logo a função "acumular" conforme o Qlikview, pois algumas funções prontas no View levam muito tempo e lógica no Sense para serem replicadas.

Valeu!!!

pericles_silva
New Contributor III

Re: Dados Acumulado no Sense

Meu camarada, o Pablo quase acertou sua dúvida, porém só faltou o RowNo() ignorar as dimensões com o qualificador Total.

Ou seja, quando sua tabela conter apenas uma dimensão, a do Pablo funcionará:

- RangeSum( Above( sum(Valor), 0, RowNo() ) )


Quando sua tabela conter duas ou mais dimensões, faça o RowNo() ignorar as dimensões:

- RangeSum( Above( sum(Valor), 0, RowNo(Total) ) )


Coloquei um print onde tem o Acumulado e o Acumulado Total. Dá uma olhada e verifica se essa era sua dúvida.

Capturar.PNG


Att,

Péricles.