Skip to main content
Announcements
See what Drew Clarke has to say about the Qlik Talend Cloud launch! READ THE BLOG
cancel
Showing results for 
Search instead for 
Did you mean: 
CantGetItToQlik
Contributor II
Contributor II

2 Variables to Filter Same Dimension

Hello. I am new to Qlik Sense but have developed in other dashboard tools. I have 2 variables that are set by making a selection from a dropdown list. I want to use these 2 values to filter a dimension in a table to compare the data for 2 different units - members of the same dimension. How do I accomplish this  in Qlik? If user selects Unit A and Unit D, how do I display only those 2 units in the table? Thanks in advance.

Labels (1)
1 Solution

Accepted Solutions
rwunderlich
Partner Ambassador/MVP
Partner Ambassador/MVP

My suggestion is to use the set in the measure rather than the dimension. The measure would look like (warning not syntax checked):

sum({<Unit={'$(var1)','$(var2)'}>} Cost * Qty)

If you were going to create a calculated dimension, the dimension expression would be:

=aggr(only({<Unit={'$(var1)','$(var2)'}>} Unit), Unit)

If it's not working, please post the full text of your expression or dimension. 

-Rob

 

View solution in original post

6 Replies
rwunderlich
Partner Ambassador/MVP
Partner Ambassador/MVP

I'm confirming that you do mean actual variables, not fields.  And that you have a field named "Unit" for example. 

If my understanding is correct, you could reference the variables in a set expression in your chart.  The set expression would be: 

{<Unit={'$(var1)','$(var2)'}>}

Then you would use that set in a measure or a calculated dimension. For example, if your chart Dimension was "Unit" and you wanted to count the "Event" field associated with each Unit your measure would be:

Count({<Unit={'$(var1)','$(var2)'}>} Event)

-Rob
http://masterssummit.com
http://qlikviewcookbook.com
http://www.easyqlik.com

CantGetItToQlik
Contributor II
Contributor II
Author

Thank you for the reply. I am not sure I am getting this to work. Here is what I am attempting to do:

Capture.PNG

I would like to use the 2 variables to populate a table object which would only display the 2 Units selected. When I try to implement your suggestion, I get an error - invalid dimension. Also, I would like to use Set Analysis to get the CostxQty amounts.

rwunderlich
Partner Ambassador/MVP
Partner Ambassador/MVP

Those "variables".  Are they truly variables or are they fields?  Can you post a screenshot of your table model from the data model viewer?

-Rob

CantGetItToQlik
Contributor II
Contributor II
Author

Yes, the variables are set by selecting an entry from a drop down list. Hence I have 2 values 'A' and 'D' which correspond to values in the Unit field of my data.  So, in a table, I would like to list only Unit A and Unit D (on separate rows) for Unit and the corresponding calculation results for CostxQty. When I attempt to create a Dimension using {<Unit={'$(var1)','$(var2)'}>}, I get an Invalid Dimension error.  I am able to create a table with one row representing one variable, but not using 2 variables. Thanks again for the help.

rwunderlich
Partner Ambassador/MVP
Partner Ambassador/MVP

My suggestion is to use the set in the measure rather than the dimension. The measure would look like (warning not syntax checked):

sum({<Unit={'$(var1)','$(var2)'}>} Cost * Qty)

If you were going to create a calculated dimension, the dimension expression would be:

=aggr(only({<Unit={'$(var1)','$(var2)'}>} Unit), Unit)

If it's not working, please post the full text of your expression or dimension. 

-Rob

 

CantGetItToQlik
Contributor II
Contributor II
Author

Rob,

Thank you for your help! It works using the Aggr as a calculated Dimension. If I could tip you I would, but please accept my appreciation for your assistance. You have saved me from turning my laptop into a Frisbee.....