Skip to main content
Announcements
Join us at Qlik Connect for 3 magical days of learning, networking,and inspiration! REGISTER TODAY and save!
cancel
Showing results for 
Search instead for 
Did you mean: 
xavier_qlik
Contributor II
Contributor II

sum first value of dimension

Good Morning

I have the next data base

Branch,    Invoice nº, Transport Order ,Journey , Nº jorney

Barcelona,  1000,   A001,  day, 1

Barcelona,  1000,   A002,  day, 1

Barcelona,  1000,   A003,  day, 1

Barcelona,  1000,   A004,  day, 1

Barcelona,  1000,   A005,  day, 1

Barcelona,  3000,   A006,  midday, 0.5

Barcelona,  3000,   A007,  midday, 0.5

Barcelona,  3000,   A008, midday, 0.5

Barcelona,  3000,   A009,  midday, 0.5

Barcelona,  3000,   A010,  midday, 0.5


I have a chart with:


Dimensions : Branch

Expresison:    count(distinct  Invoice)

Result  is : 2 invoices


I would like to have the next expression :

Nº Journey: 1.5   "consolidate by Invoice nº"

But when I am triying to do it the result is 7.5


This expression should run independent of the dimension.


How should do it?, please.





Thanks









1 Solution

Accepted Solutions
hector_munoz
Specialist
Specialist

Hola Francisco Javier,

En estos casos en los que quieras usar una expresión pero agrupando antes por algunos campos tienes que emplear la función Aggr():

Sum(Aggr(Avg([Nº jorney]), [Invoice nº]))

En este ejemplo, lo que haces es calcular la media de [Nº jorney] agrupando por [Invoice nº] y te quedarían 2 registros con 1 para la [Invoice nº] = 1000 y 0.5 para la [Invoice nº] = 3000. Luego, en el Sum() sumas ambas medias y ya tienes el 1.5 que buscabas...


Espero que te sirva!


Saludos,

H

View solution in original post

3 Replies
hector_munoz
Specialist
Specialist

Hola Francisco Javier,

En estos casos en los que quieras usar una expresión pero agrupando antes por algunos campos tienes que emplear la función Aggr():

Sum(Aggr(Avg([Nº jorney]), [Invoice nº]))

En este ejemplo, lo que haces es calcular la media de [Nº jorney] agrupando por [Invoice nº] y te quedarían 2 registros con 1 para la [Invoice nº] = 1000 y 0.5 para la [Invoice nº] = 3000. Luego, en el Sum() sumas ambas medias y ya tienes el 1.5 que buscabas...


Espero que te sirva!


Saludos,

H

xavier_qlik
Contributor II
Contributor II
Author

Muchísimas gracias. Perfecto! 

Me ha funcionado independientemente de la dimensión que aplique.

Seguro que lo necesitaré muchas mas veces.

Saludos

hector_munoz
Specialist
Specialist

Me alegro FJ, al final Aggr() es una función muy versátil que cuando la dominas utilizas mucho...