Qlik Community

Ask a Question

QlikView Creating Analytics

Discussion Board for collaboration related to Creating Analytics for QlikView.

Announcements
Welcome to our newly redesigned Qlik Community! Read our blog to learn about all the new updates: READ BLOG and REPORTED ISSUES
cancel
Showing results for 
Search instead for 
Did you mean: 
Not applicable

calculated dimension

why cannot i do this in a calculated dimension?

=if(sum({<DateCleanLog={"=$(=Date(Today()-1))"}>} Rows) = 0, null(), LogCustomerID)

so if there was no rows yesterday, then dont show logcustomerid, else show customerid  - why cnat i do so?

1 Solution

Accepted Solutions

Sum is an aggregation expression, and in order to use it in a dimension, it must be used within aggr(), so something like the following may work for you:

=aggr(if(sum({<DateCleanLog={"=$(=Date(Today()-1))"}>} Rows)= 0, null(), LogCustomerID), LogCustomerID)

View solution in original post

3 Replies

Sum is an aggregation expression, and in order to use it in a dimension, it must be used within aggr(), so something like the following may work for you:

=aggr(if(sum({<DateCleanLog={"=$(=Date(Today()-1))"}>} Rows)= 0, null(), LogCustomerID), LogCustomerID)

View solution in original post

Because when you perform the sum, the same sum is computed according specified dimensions so if you need something like the one you have written you must use Aggr function

Hope it helps

Champion
Champion

beacuse aggregate function we can use directly in dimension

it will show you "Error in dimension"

so for your expression to work you need to use aggr keyword available in qlikview

if(aggr(sum({<DateCleanLog={"=$(=Date(Today()-1))"}>} Rows),LogCustomerID) = 0 ,null(), LogCustomerID)




then it whould work


basically aggr function used to group by some field  as is in ur example i have grouped your  expression of sum by


LogCustomerID


hope this helps