Cycle Measures across multiple charts using buttons or a dropdown

    Cycling measures in multiple charts showing different dimensions can be a powerful analysis approach in Qlik dashboards. Whilst this has not quite made it into the product there is a very simple workaround that enables you to get all of your charts dynamically changing. This can used for both dimensions and measures (see this link for an example using cyclic dimensions).


    Here's a quick example (plays 2 times)


    Steps to implement


    > Download and install the QSVariable extension from Branch (or see attached for the version at the time of writing).


    > To create a cyclic measure:


    1. Specify a variable name. If you have not already created this variable it will create it in the application.

    2. Select Button or Select (dropdown) in the 'Render as' option. You can also experiment with the style and width setting to get different effects.

    3. Click 'Add Alternative'

    4. Enter in the calculation expression (you cannot reference master library measures) in the 'Value' area and a Label for the expression option you want to setup.



    If you are cycling through measures that require different formats, e.g. a number and a %, then you will need to format mask each expression you enter here. For example:


    num(sum(Sales),'#,##0')for a number
    num(sum(Profit)/sum(Sales),'#,##0.0%')for a percentage



    5. Repeat steps 3 and 4 for each additional expression you wish to show and switch between.

    6. Enter the default value for the variable so that a selection is always made on open. The default value will be one of the expressions you entered in step 4 e.g. num(sum(Sales),'#,##0')  

    7. Create a measure in your master items (or reference directly in each chart) using the variable reference as $(VariableName).




    Known Limitations


    > We are unable to dynamically label dimensions and measures at this stage (as of writing after release of v3.1). As such you have generic naming of the dynamic field.




    See the attached example for more details or comment below.