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: 
andre_tonini
Creator II
Creator II

Rank - não considerar valor zerado ou branco

Pessoal,

         Criei um grafico onde lista um rank de venda, porém na expressão Rank não quero que liste quando não houver valor de venda.

Esse é o exemplo, observe que as linhas em vermelho não tem valor então não deve ter sequencia no Rank.

A dimensão Estado
A primeira expressão Janeiro é SUM(IF(ANO_EXP = '2015' AND MES_EXP = 'jan' AND PDV_PSI_CODIGO = 'FF' AND PDV_TVE_CODIGO = '1', PDV_VALORLIQUIDO,0))

A segunda expressão Rank é rank (SUM(IF(ANO_EXP = '2015' AND MES_EXP = 'jan' AND PDV_PSI_CODIGO = 'FF' AND PDV_TVE_CODIGO = '1', PDV_VALORLIQUIDO,0)))

11.jpg

Preciso que apareça dessa forma como segue abaixo.

Desde já agradeço caso alguem possa me dar uma dica.

att,

André Tonini

Labels (1)
1 Solution

Accepted Solutions
Clever_Anjos
Employee
Employee

if(column(1)>0,rank (SUM(IF(ANO_EXP = '2015' AND MES_EXP = 'jan' AND PDV_PSI_CODIGO = 'FF' AND PDV_TVE_CODIGO = '1', PDV_VALORLIQUIDO,0))))

Ou melhor

if(column(1)>0,rank (SUM({<ANO_EXP = {'2015'} , MES_EXP = {'jan'}, PDV_PSI_CODIGO = {'FF'},PDV_TVE_CODIGO ={ '1'}>} PDV_VALORLIQUIDO)))

View solution in original post

8 Replies
Clever_Anjos
Employee
Employee

if(column(1)>0,rank (SUM(IF(ANO_EXP = '2015' AND MES_EXP = 'jan' AND PDV_PSI_CODIGO = 'FF' AND PDV_TVE_CODIGO = '1', PDV_VALORLIQUIDO,0))))

Ou melhor

if(column(1)>0,rank (SUM({<ANO_EXP = {'2015'} , MES_EXP = {'jan'}, PDV_PSI_CODIGO = {'FF'},PDV_TVE_CODIGO ={ '1'}>} PDV_VALORLIQUIDO)))

nicolett_yuri

Bom, na verdade você deve restringir isso na dimensão, segue um exemplo:

nicolett_yuri

Seu exemplo é melhor

Dimensão calculada é sempre bom evitar

andre_tonini
Creator II
Creator II
Author

Clever e Yuri,

      Grato pela auxilio, utilizando na expressão Rank if(column(1)>0,rank (SUM({<ANO_EXP = {'2015'} , MES_EXP = {'jan'}, PDV_PSI_CODIGO = {'FF'},PDV_TVE_CODIGO ={ '1'}>} PDV_VALORLIQUIDO))) realmente tratou certo a coluna, mas preciso que não ocultar a linha da dimensão "Estado" quando a coluna Janeiro e Rank for < '0' ou null, existe como fazer isso?

Precisaria que ficasse dessa forma, apenas os "Estado" que teve valor.

Desde já agradeço pela costumeira atenção.

att,

André Tonini

nicolett_yuri

Provavelmente você esta com as opções Ocultar Faltante e Ocultar Zero habilitada na aba apresentação, desmarque e faça um teste.

andre_tonini
Creator II
Creator II
Author

Olá Yuri,

      É tinha um detalhe na minha expressão, inclusive era uma coisa que eu não sabia .

Na primeira expressão Janeiro não estava como set analysis, estava assim SUM(IF(ANO_EXP = '2015' AND MES_EXP = 'jan' AND PDV_PSI_CODIGO = 'FF' AND PDV_TVE_CODIGO = '1', PDV_VALORLIQUIDO,0))

Na segunda expressão Rank estava como set analysis, estava assim Rank if(column(1)>0,rank (SUM({<ANO_EXP = {'2015'} , MES_EXP = {'jan'}, PDV_PSI_CODIGO = {'FF'},PDV_TVE_CODIGO ={ '1'}>} PDV_VALORLIQUIDO)))


Creio que ai a dimensão 'caducava' tem alguma relação?


Mas de qualquer forma agora deu certo, muito obrigado.


att,


André Tonini

Clever_Anjos
Employee
Employee

if(column(1)>0,rank (SUM({<ANO_EXP = {'2015'} , MES_EXP = {'jan'}, PDV_PSI_CODIGO = {'FF'},PDV_TVE_CODIGO ={ '1'}>} PDV_VALORLIQUIDO)),0)

e Marcar Ocultar Zero na aba apresentação

nicolett_yuri

A única diferença das duas expressões é que na do IF você esta fazendo uma verificação e retornando zero em caso negativo. A do set analysis retornar nulo e não zero.