Unlock a world of possibilities! Login now and discover the exclusive benefits awaiting you.
One of the features that I miss from QlikView when working with Qlik Sense is the Cycle Group. Allowing the user to pick a dimension and have that update in all charts where it was used is incredibly useful.
To get around this I use a data island listing dimensions and a filter box to pick which dimension is to be used. This application demonstrates the technique, over some data from Grand Slam Tennis Tournaments.
There is a full description of how to create the application from the ground up, in this blog post:
https://www.quickintelligence.co.uk/qlik-sense-cycle-group/
I hope that you find this document useful. You will find other applications that I have uploaded under my profile on Qlik Community, or listed on my website here.
Note that the document and blog post have a fixed dimension label, as this was all that was possible at the time of writing. The ability to have dynamic labels has since been added, and you can create a label on the Master Dimension with this code:
='$(=vDim)'
This will then show the field name as the column title and as the label on any charts where it is used.
Also, the addition of variable extensions in the Extensions Bundle means that you can use this to pick your field, rather than a filter pane - which looks a little neater. The filter pane does allow you to add extra fields in the load script (perhaps from a spreadsheet).
Steve
Update May 2022
The Wikipedia pages that this app loaded from were updated, so I have uploaded a revised app which now loads from the new layout. It also now contains stats from the Ladies game.
If you want a even more dynamic user interface, with users selecting both dimensions and measures, then please take a look at my tutorial post on the Instant Sense Application, here:
https://www.quickintelligence.co.uk/instant-qlik-sense-application/
You can try the application for yourself here:
https://www.quickintelligence.co.uk/sense/gs-app.html
Or download it from here:
https://www.quickintelligence.co.uk/instant-qlik-sense-app/
Thanks stevedark I could not have discovered this at a better time. We have been asked to implement this, based on its' availability in Qlik View. We are having issues with our master items drill-downs not being affecting enough. Going to go through the exercise now.
Hi Michael,
Glad that you think it will be useful. Note that you can now specify dynamic dimension labels and the like, so you will probably be able to exceed the app that I put together on an earlier version.
I found an issue with a dimension picked from a list earlier today (funnily enough) that it couldn't be used as the stacked dimension in a two dimensional bar chart. I couldn't see any reason for that, but there you go.
As well as having the cycle group implemented in this way I have also done the same with expressions, so users can pick what analysis they want.
Steve
Hi Steve,
In your post you mentioned that "the dimension name, sadly, can not be derived from an expression". If the dimension name is made a master item measure, and the label expression set to ='$(vDim)', then the dimension name will update with each selection.
Otherwise, this was extremely useful, thanks very much!
Hi Kyle,
Thanks for taking a look at my post and app. At the time of writing the ability to have an expression as the label of a Dimension was not in the product.
The ability to do this has been added to numerous places in Sense over a number of versions. Most irritatingly in previous versions even column headings could not be dynamic. Now the only bit of text that you might want to derive from an expression where you can't is the legend on a chart's reference line.
Hopefully that will be added at some point soon...
Steve
Hi Steve,
I'm glad the update has solved that.
I have now implemented the solution in my app, but sometimes my tables in which I use the dimension give an error: "The visualization failed to render". Is this something you have experienced? It usually happens when I create a new table with the pseudo cyclic dimension, and it breaks all the other tables in which I have this dimension.
Thanks, Kyle
Hi Kyle,
I've had the 'Failed to Render' message come up at various random times, but not noticed it specifically with my dimensions. A refresh tends to make the error go away.
Steve
Hi Steve,
I solved the problem by putting the inline tables at the end of the script. The problem began after I needed to load from and drop temporary tables.
Hi Steve,
Thank you for this insightful blog, Dynamic/Cyclic Dimension and Measure are a very basic requirement. Hope they make this out of the box in coming version.
Regards
Sushant
Note that the app has a fixed label for the dimension (of Dimension) as this was all that was possible at the time of writing.
It is now possible to have a dynamic dimension label, so create one with the following code:
='$(=vDim)'
This will take the field name and make it the column title any time you use that dimension.
Good luck.
Steve