Skip to main content
Announcements
See why Qlik is a Leader in the 2024 Gartner® Magic Quadrant™ for Analytics & BI Platforms. Download Now
cancel
Showing results for 
Search instead for 
Did you mean: 
Anonymous
Not applicable

Previous Value of the Expression

Hi,

Suppose I have a straight table with three dimensions and one expression, and the expression has nested If statement along with Fractile() function.

Straight_Table_1.PNG

When I select second row i.e. Test1, the value in the Metric is changing.

Our requirement is the Metric value should not change even if user selects any row in the straight table. Is there is any way, that I can get the previous value of the expression. I have tried Previous() and Only() function, but as the expression has nested If statements, the application hangs.

Waiting for inputs.

Thanks & Regards,

MK

18 Replies
Anonymous
Not applicable
Author

Thanks all for the replies, please find attached the sample qvw for same.

Anonymous
Not applicable
Author

PFA th qvw file

Anonymous
Not applicable
Author

PFA th qvw file

nagarjuna_kotha
Partner - Specialist II
Partner - Specialist II

Can u share ur file?

Anonymous
Not applicable
Author

Try this

sum({$<Test1=>}Metric)

sunny_talwar

Try this formula:

=if((C+B) <= fractile({<Name = , B = , C = >}TOTAL aggr((Only({<Name = , B = , C = >}C)+Only({<Name = , B = , C = >}B)),Name), 0.1), 10,

if((C+B) <= fractile({<Name = , B = , C = >}TOTAL aggr((Only({<Name = , B = , C = >}C)+Only({<Name = , B = , C = >}B)),Name), 0.2), 12,

if((C+B) <= fractile({<Name = , B = , C = >}TOTAL aggr((Only({<Name = , B = , C = >}C)+Only({<Name = , B = , C = >}B)),Name), 0.3), 14,

if((C+B) <= fractile({<Name = , B = , C = >}TOTAL aggr((Only({<Name = , B = , C = >}C)+Only({<Name = , B = , C = >}B)),Name), 0.4), 16, 

if((C+B) <= fractile({<Name = , B = , C = >}TOTAL aggr((Only({<Name = , B = , C = >}C)+Only({<Name = , B = , C = >}B)),Name), 0.5), 18, 

if((C+B) <= fractile({<Name = , B = , C = >}TOTAL aggr((Only({<Name = , B = , C = >}C)+Only({<Name = , B = , C = >}B)),Name), 0.6), 20, 

if((C+B) <= fractile({<Name = , B = , C = >}TOTAL aggr((Only({<Name = , B = , C = >}C)+Only({<Name = , B = , C = >}B)),Name), 0.7), 22, 

if((C+B) <= fractile({<Name = , B = , C = >}TOTAL aggr((Only({<Name = , B = , C = >}C)+Only({<Name = , B = , C = >}B)),Name), 0.8), 24,

if((C+B) <= fractile({<Name = , B = , C = >}TOTAL aggr((Only({<Name = , B = , C = >}C)+Only({<Name = , B = , C = >}B)),Name), 0.9), 26, 

if((C+B) <= fractile({<Name = , B = , C = >}TOTAL aggr((Only({<Name = , B = , C = >}C)+Only({<Name = , B = , C = >}B)),Name), 1.0), 28, 8))))))))))

stigchel
Partner - Master
Partner - Master

Try this

=if((Only({<Name,B,C>}C+B)) <= fractile({<Name,B,C>}TOTAL aggr((Only({<Name,B,C>} C+B)

),Name), 0.1), 10,

if((Only({<Name,B,C>} C+B)) <= fractile({<Name,B,C>}TOTAL aggr((Only({<Name,B,C>} C+B)

),Name), 0.2), 12,

if((Only({<Name,B,C>} C+B)) <= fractile({<Name,B,C>}TOTAL aggr((Only({<Name,B,C>} C+B)

),Name), 0.3), 14,

if((Only({<Name,B,C>} C+B)) <= fractile({<Name,B,C>}TOTAL aggr((Only({<Name,B,C>} C+B)

),Name), 0.4), 16, 

if((Only({<Name,B,C>} C+B)) <= fractile({<Name,B,C>}TOTAL aggr((Only({<Name,B,C>} C+B)

),Name), 0.5), 18, 

if((Only({<Name,B,C>} C+B)) <= fractile({<Name,B,C>}TOTAL aggr((Only({<Name,B,C>} C+B)

),Name), 0.6), 20, 

if((Only({<Name,B,C>} C+B)) <= fractile({<Name,B,C>}TOTAL aggr((Only({<Name,B,C>} C+B)

),Name), 0.7), 22, 

if((Only({<Name,B,C>} C+B)) <= fractile({<Name,B,C>}TOTAL aggr((Only({<Name,B,C>} C+B)

),Name), 0.8), 24,

if((Only({<Name,B,C>} C+B)) <= fractile({<Name,B,C>}TOTAL aggr((Only({<Name,B,C>} C+B)

),Name), 0.9), 26, 

if((Only({<Name,B,C>} C+B)) <= fractile({<Name,B,C>}TOTAL aggr((Only({<Name,B,C>} C+B)

),Name), 1.0),28,

      8 ))))))))))

Anonymous
Not applicable
Author

Thanks a lot sunindia‌.

It works.

sunny_talwar

Not a problem bud, we are glad we were able to help , right Piet Hein van der Stigchel‌?

Best,

Sunny