Alternatieve states voor vergelijkende analyse in Qlik Sense
Qlik Sense is een data-analyse tool, waarmee data (die uit vele bronnen afkomstig kunnen zijn) aan de hand van diagrammen (grafieken) kunnen worden gepresenteerd en geanalyseerd. In veel functionaliteiten is Qlik Sense vergelijkbaar met PowerBI.
Wanneer je in Qlik Sense een vergelijkende analyse wilt uitvoeren, kun je gebruikmaken van alternatieve states. Hiermee kun je bijvoorbeeld eenvoudig de verkopen van bepaalde producten vergelijken tussen verschillende landen. Met alternatieve states kun je namelijk verschillende selecties voor dezelfde dimensie maken. Ook kun je de selecties vergelijken in één visualisatie, of in twee of meer visualisaties naast elkaar.
Je kunt alternatieve states op twee verschillende manieren gebruiken in visualisaties:
- een state op een visualisatie toepassen. Hierdoor wordt de selectie van de visualisatie verbonden met de selectie van de state;
- states in de set-uitdrukking van een meting gebruiken. Dit is handig wanneer je metingswaarden van verschillende states wilt vergelijken.
In deze blog bespreken wij stap voor stap hoe je alternatieve states kunt gebruiken in visualisaties. Allereerst leggen wij uit hoe je alternatieve states maakt in Qlik Sense. Vervolgens bespreken wij hoe je filtervakken maakt om de selectie van de visualisatie te verbinden met de selectie van de state. Tot slot maken wij een staafdiagram waarin wij states gebruiken voor een meting.
Alternatieve states maken
In deze blog gebruiken wij het voorbeeld van een app in de Qlikcloud-omgeving, waarin vijf tabellen gekoppeld zijn. De tabellen zijn met één op veel relaties aan elkaar gekoppeld.

Doordat de tabellen aan elkaar zijn gekoppeld, kunnen wij bijvoorbeeld in een diagram per product zien wat er aan omzet is verdiend. Ook kunnen wij deze omzet filteren op een landnaam.
Aan een klant (tblKlanten) is een landnaam (tblLanden) gekoppeld. Aan een klant zijn op zijn beurt orders (tblOrders) gekoppeld. Aan elke order zijn vervolgens één of meer orderregels (tblOrderregels) gekoppeld, waar weer producten (tblProducten) aan zijn gekoppeld.
Wij maken in de app een werkblad aan met de naam Alternatieve states.
In dit voorbeeld hebben wij twee alternatieve states nodig. In de Masteritems, onder het kopje Alternatieve states kun je deze aanmaken: Group 1 en Group 2.

Wij hebben nu twee alternatieve states gemaakt, die wij nodig hebben voor twee filtervlakken die wij gaan maken en voor twee metingen.
Filtervakken voor selectie maken
Door onderstaande stappen te volgen, maken wij de filtervakken voor een selectie.
- Voeg een filtervak met het veld Landnaam toe.
- Type in de titel de volgende expressie =StateName(). Op deze manier kun je de states gemakkelijker uit elkaar houden, aangezien de state niet wordt aangegeven in het filtervak zelf. De functie StateName() retourneert de state die op de functie is toegepast.

- Sleep de state Group 1 naar het filtervak toe en selecteer State toepassen.
- Voeg nog een filtervak met het veld Landnaam toe.
- Bewerk het label van het tweede filtervak tot =StateName().
- Zet de state Group 2 in het tweede filtervak neer en selecteer State toepassen.

Door bovenstaande stappen te volgen hebben wij nu twee filtervakken. Met deze filtervakken worden de selecties van elk van de twee states beheerd.
Wanneer je een selectie maakt in het filtervak met Group 1, wordt dezelfde selectie toegepast op de state Group 1 én in alle aan die state gekoppelde visualisaties weergegeven. Hetzelfde geldt voor Group 2.
Een staafdiagram maken voor analyse
In bovenstaand stappenplan hebben wij een state toegepast op een visualisatie. Nu gaan wij states in de set-uitdrukking van een meting gebruiken. Stap voor stap wordt weer uitgelegd hoe je met behulp van states een staafdiagram kunt maken voor analyse.
- Maak in de Masteritems een meting met de naam Group1Sales. Vervolgens stel je de Uitdrukking in op Sum({[Group 1]}[Totaalprijs]). Het veld Totaalprijs is afkomstig uit de tabel tblOrderregels. Met deze uitdrukking worden de verkopen voor alle selecties in de state Group 1 opgeteld. Tot slot stel je de Labeluitdrukking in op ‘Sales ‘&GetCurrentSelections(chr(13)&chr(10), ‘=’, ‘,’ ,9,’Group 1′). Wij gebruiken een labeluitdrukking om de huidige selectie van de state als label in het diagram te kunnen tonen, in plaats van het standaardlabel.

- Maak vervolgens nog een meting aan in Masteritem met de naam Group2Sales. Stel de Uitdrukking in op Sum({[Group 2]}[Totaalprijs]). Stel de Labeluitdrukking in op ‘Sales ‘&GetCurrentSelections(chr(13)&chr(10), ‘=’, ‘,’ ,9,’Group 2′).
- Voeg een staafdiagram aan het werkblad toe.
- Stel het veld Productnaam in als dimensie.
- Voeg de metingen Group1Sales en Group2Sales toe.
- Klik tot slot op Klaar met bewerken.
Wij hebben nu een staafdiagram gemaakt, dat de verkopen per productlijn toont voor de twee groepen landen die in de filtervakken zijn geselecteerd. Wanneer je in een van de filtervakken een nieuwe selectie maakt, verandert de corresponderende metingswaarde automatisch op basis van de nieuwe selectie!

Er is zó ontzettend veel mogelijk in Qlik Sense. Wil je meer handige tips & tricks? Volg dan onze cursus Qlik Sense en wordt een echte pro!