Inkludera/Exkludera/Endast

Tänk dig att vi mäter försäljning och i data finns en viss typ av order "projektorder" som användarna ofta väljer bort eller analyserar för sig självt. Det finns många andra ordertyper som ska ingå normalt. Hur löser vi detta på bästa sätt för användaren?



Ett alternativ är en urvalsruta på Ordertyp, men det blir snabbt jobbigt för en användare som vill ta bort Projektorder. De kan antingen välja alla andra typer eller välja Projektorder och välja uteslutna. Det kommer att krävas flera klick för att snabbt få till urvalet.


Istället vill vi skapa ett fält som innehåller tre värden:

  • Inkludera: Alla värden tas med

  • Exkludera: Allt utom projektorder tas med

  • Bara: Projektorder visas

Ibland räcker det med "Inkludera" och "Exkludera" och då kan man helt enkelt välja att inte skapa några värden för "Bara". Tekniken för detta i Qlik är som vanligt - associerad data.


I vårt script kan vi skapa detta genom att skapa en ny tabell med två kolumner - Ordertyp och OrdertypVal:

  • Ordertyp: Fältet som finns som indelning av order i resten av modellen - kanske i en Ordertyp-tabell

  • OrdertypVal: Värdena "Inkludera", "Exkludera" och "Båda"


Tricket är att läsa in projekttyper flera gånger och skapa länkar till rätt val. Scriptet för detta skulle vara något liknande:


OrdertypValTabell:

Load Ordertyp,

'Inkludera' as OrdertypVal resident OrdertypTabell; concatenate (OrdertypValTabell)

Load Ordertyp,

'Exkludera' as OrdertypVal resident OrdertypTabellwhere Ordertyp<>'Projektorder';


concatenate (OrdertypValTabell) Load Ordertyp, 'Endast' as OrdertypVal resident OrdertypTabellwhere Ordertyp='Projektorder';


Detta ger följande tabell med kopplingar med två exempel på ordertyper - Webborder och Projektorder. Tänk dig att det finns många fler ordertyper som skulle finnas för "Inkludera" och "Exkludera" på motsvarande sätt.

Som man kan se ser man enkelt välja alla ordertyper utom Projekt order genom att klicka på "Exkludera". Klickar man på "Inkludera" träffas man alla ordertyper. Klickar man på "Endast" får man bara träff på Projektorder.


Tabellen länkas via Ordertyp till resten av modellen och därmed filtreras allt annat genom urval.



När man har den här typen av fält kan man ställa in att fältet alltid ska ha ett valt värde. Samtliga fall är inkludera i något av valen. Gå till fälten i Edit-läget och klicka på fältet OrdertypVal. Klicka sedan på kugghjulet för inställningar och kryssa för Always One Selected Value.


Skriven av: Morgan Kejerhag

Morgan Kejerhag har arbetat med Qlik-plattformen sedan 2005 och är en av Sveriges mest erfarna konsulter. Under åren har Morgan arbetat med flertalet multinationella bolag där han lett arbetet i att bygga upp stora Qlik-miljöer såväl som små kunder. LinkedIn Kontaktuppgifter