Do not input private or sensitive data. View Qlik Privacy & Cookie Policy.
Skip to main content

Announcements
Posting on Qlik Community is temporarily paused. Thank you for patience and we'll update you soon!
cancel
Showing results for 
Search instead for 
Did you mean: 
Not applicable

Percentage limitation issues (Top N with fixed number)

Hi guys.

I´m trying to limit the number of dimensions to show (Top N). Usually I select the limitation -> fixed number option, however, when I use percentages, it simply doesn't work.

Actually I'm using this expression:

Count({<[Cliques da Sessão]-={'','Avatar App','Chat de Ouvidoria','Brasil','Móvel'},[Canal]-={'Links Externos', 'Chat de Atendimento','Fale Conosco',''}>}[Cliques da Sessão])

/

SUM(TOTAL <$(=$(vSelectedDateFields))>

  aggr(

  Count(TOTAL <$(=$(vSelectedDateFields))>{1<[Cliques da Sessão]-={'','Avatar App','Chat de Ouvidoria','Brasil','Móvel'},[Canal]-={'Links Externos', 'Chat de Atendimento','Fale Conosco',''}>}[Cliques da Sessão])

  ,$(=$(vSelectedDateFields))

  )

)

vSelectedDateFields is:

'[Ano da sessão],[Mês da sessão],[Dia da sessão]'

& if(GetSelectedCount([Dia da sessão])>0,',[Hora da sessão]','')

& if(GetSelectedCount([Hora da sessão])>0,',[Minuto da sessão]','')

& if(GetSelectedCount([Minuto da sessão])>0,',[Segundo da sessão]','')

P.S.: I´m using Qliksense Desktop 3.0.1

3 Replies
sunny_talwar
MVP
MVP

Not 100% sure, but may be try this:

If(Rank(TOTAL Count({<[Cliques da Sessão]-={'','Avatar App','Chat de Ouvidoria','Brasil','Móvel'},[Canal]-={'Links Externos', 'Chat de Atendimento','Fale Conosco',''}>}[Cliques da Sessão]), 4, 1) <= 10,

Count({<[Cliques da Sessão]-={'','Avatar App','Chat de Ouvidoria','Brasil','Móvel'},[Canal]-={'Links Externos', 'Chat de Atendimento','Fale Conosco',''}>}[Cliques da Sessão])

/

Sum(TOTAL <$(=$(vSelectedDateFields))>

  Aggr(

  Count(TOTAL <$(=$(vSelectedDateFields))>{1<[Cliques da Sessão]-={'','Avatar App','Chat de Ouvidoria','Brasil','Móvel'},[Canal]-={'Links Externos', 'Chat de Atendimento','Fale Conosco',''}>}[Cliques da Sessão])

  ,$(=$(vSelectedDateFields))

  )

)

)

Here I have used 10 instead of N, but you can replace 10 with whatever top N you are looking to do

Not applicable
Author

Thanks for the reply Sunny. We are almost there!

I had to change your code a little bit:

If(

  Rank(

      Count({<[Cliques da Sessão]-={'','Avatar App','Chat de Ouvidoria','Brasil','Móvel'},[Canal]-={'Links Externos', 'Chat de Atendimento','Fale Conosco',''}>}[Cliques da Sessão])

      /

      Sum(TOTAL <$(=$(vSelectedDateFields))>

        Aggr(

        Count(TOTAL <$(=$(vSelectedDateFields))>{1<[Cliques da Sessão]-={'','Avatar App','Chat de Ouvidoria','Brasil','Móvel'},[Canal]-={'Links Externos', 'Chat de Atendimento','Fale Conosco',''}>}[Cliques da Sessão])

        ,$(=$(vSelectedDateFields))

        )

      )   

    , 4, 1) < 11,

    Count({<[Cliques da Sessão]-={'','Avatar App','Chat de Ouvidoria','Brasil','Móvel'},[Canal]-={'Links Externos', 'Chat de Atendimento','Fale Conosco',''}>}[Cliques da Sessão])

    /

    Sum(TOTAL <$(=$(vSelectedDateFields))>

      Aggr(

      Count(TOTAL <$(=$(vSelectedDateFields))>{1<[Cliques da Sessão]-={'','Avatar App','Chat de Ouvidoria','Brasil','Móvel'},[Canal]-={'Links Externos', 'Chat de Atendimento','Fale Conosco',''}>}[Cliques da Sessão])

      ,$(=$(vSelectedDateFields))

      )

    )

)

The only problem is that this code is bringing only nine values per dimension:

Ranking.png

Do you have any idea of the problem?

Thanks again!

sunny_talwar
MVP
MVP

Without looking at this, it would be difficult to say, but may be check < 12 and see what happens if you get 10 or 11 values per dimension.