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

Announcements
Qlik Open Lakehouse is Now Generally Available! Discover the key highlights and partner resources here.
cancel
Showing results for 
Search instead for 
Did you mean: 
stantrolav
Partner - Creator II
Partner - Creator II

Set Analysis

Hi!

We got function like this for drop selection in specific field:

Sum of Sales and ignore specific selections for Customer Country and Policy Status:-

SUM( {$<[Customer Country] = , [Policy Status] = >} Sales )

But how can we reverse this logic and define what fields should be used for calculation? Or we can ask: How we can break association model in QlikView by Set Analysis?


My situation

I got application with 20 and more selectable fields. For one of the expressions I need to make sum() using selections from 3 field. Let their names be Year, Day, Month. Of course we should have possibility for making multiply selection in every field. I probably could use this example:

Sum( {$ <Year = {$(=only(Year) – 1)}> } Sales

But it would show me smth if I make selection of 1 year in field Year.


I want to get smth like this:

SUM( {@<Year = , Day = , Month = >} Sales )

Where operator @ make reverse logic.

I just cant get simple expression. I can write LONG expression like this:

SUM( {$<Param1 = , Param2 = , Param3 = , Param4 = , Param5 = , Param6 = , Param7 = , Param8 = , Param9 = , Param10 = , Param11 = , Param12 = , Param13 = , Param14 = , Param15 = , Param16 = , Param17 = >} Sales )

It solve my problem, but it's not simple as it can be.

1 Solution

Accepted Solutions
Alexander_Thor
Employee
Employee

This sounds like a perfect use case either for the P() modifier or simply use alternate states.

In the attached example I have used alternate states, they are created from the document properties.

The data model is then separated into more then the usual 1 and $ states and you can cross reference fields between the different states.

In the example app you will see that the text object will only re-calculate when you select something in the Dim1 listbox. It's a bit crude as examples goes but I think you get the general gist behind it.

View solution in original post

3 Replies
marchoctober
Creator
Creator

Hi! Just try your imaginations with that: Set Analysis Wizard for QlikView | qlikblog.at

Moreover, describe with more density your task, as it connected to different solutions. Drop here a user experience work.

Alexander_Thor
Employee
Employee

This sounds like a perfect use case either for the P() modifier or simply use alternate states.

In the attached example I have used alternate states, they are created from the document properties.

The data model is then separated into more then the usual 1 and $ states and you can cross reference fields between the different states.

In the example app you will see that the text object will only re-calculate when you select something in the Dim1 listbox. It's a bit crude as examples goes but I think you get the general gist behind it.

stantrolav
Partner - Creator II
Partner - Creator II
Author

You got it! The answer is in using operator p() or State modifier in doc.