Skip to main content
cancel
Showing results for 
Search instead for 
Did you mean: 
Not applicable

One list box across multiple alternate states

Hi,

I have a query about filtering across alternate states:

In my document I have three straight tables, the first two are tied to different date filters (using alternate states) and the third is a comparison of the two. What I need to have next is a list box that decides what columns are visible in all the tables.

I've done this before by having an enable condition on the dimensions of the straight table, looking at what values are selected in the list of fields (loaded inline via the script), however I can't get it working in this instance due to the alternate states applied to the different tables. Is there a way that I can have this one list box apply selections across all the tables regardless of what alternate state they are tied to?

Failing that, is there a better way to apply the alternate states via set analysis or anything?

Thanks

1 Solution

Accepted Solutions
sunny_talwar

I hope you are working with QV 11.20 SR8 or above. If you are, then you can try something along these lines:

If(GetSelectedCount([$FieldList], False(), 'StateName') = 0, 0, YourExpressionForEachState)

If the state is inherited state where you have the list box, then you can use $

If(GetSelectedCount([$FieldList], False(), '$') = 0, 0, YourExpressionForEachState)

View solution in original post

5 Replies
sunny_talwar

What expression are you using currently using to show/hide columns in the straight table? We can drive it using just one list boxes for all the straight tables.

Not applicable
Author

My expression is:

=IF(GetSelectedCount([$FieldList]) = 0, 0, WildMatch('|' & Concat([$FieldList],'|') & '|', '*|FieldName|*'))

There's probably more efficient ways of doing the same thing, so if there's something better that will achieve both things then i've got no problem with changing it

sunny_talwar

I hope you are working with QV 11.20 SR8 or above. If you are, then you can try something along these lines:

If(GetSelectedCount([$FieldList], False(), 'StateName') = 0, 0, YourExpressionForEachState)

If the state is inherited state where you have the list box, then you can use $

If(GetSelectedCount([$FieldList], False(), '$') = 0, 0, YourExpressionForEachState)

Not applicable
Author

That worked great, went with the inherited state one and it's looking all good. Thanks!

sunny_talwar

Awesome