Introduktion till filterkontext i LuckyTemplates

Filterkontext är ett av de viktigaste ämnena som alla LuckyTemplates-användare från början bör lära sig om, speciellt om du vill att dina DAX-beräkningar ska fungera effektivt. Du kan se hela videon av denna handledning längst ner på den här bloggen.

I den här artikeln kommer jag att gå igenom filterkontexten . Varje DAX-formel beräknas i en tvåstegsprocess.

Innehållsförteckning

DAX Formel: En tvåstegsprocess

Det första steget är utvärderingskontexten eller det initiala sammanhanget. Sedan fattar DAX ett beslut baserat på funktionen som du skriver eller vilken typ av beräkning som den ska göra.

Den förgrenar sig till det andra steget, som antingen är kontexten eller radkontexten .

Det är väldigt stor skillnad mellan dessa två sammanhang, även om man faktiskt kan få samma resultat genom att skriva olika formel.

För att verkligen förstå hur DAX fungerar måste du förstå skillnaden mellan de två och hur saker faktiskt beräknas i minnet genom DAX.

Förstå filterkontexten

Filterkontexten är relativt okomplicerad . Det är relativt enkelt eftersom det verkligen stämmer överens med de enkla sammanställningar som du gör. För att förstå vad som faktiskt händer, låt oss gå igenom ett mycket specifikt exempel.

Vi har två exempel: totala sålda kvantiteter per dag och totala sålda kvantiteter per produkt. Dessa två har exakt samma formel, men med olika sammanhang .

Låt oss gå igenom exakt hur detta beräknas för den allra översta raden i var och en av dessa tabeller.

Introduktion till filterkontext i LuckyTemplates

Som du kan se på den översta raden har vi sålt 24 produkter den första januari 2015. Ett filter sätts på Datumet den första januari 2015 för att beräkningen ska fungera.

Introduktion till filterkontext i LuckyTemplates

Om vi ​​hoppar till datamodellen kan vi se att filtret som placerats på datumet flyter ner genom relationen tills det går igenom försäljningstabellen.

Introduktion till filterkontext i LuckyTemplates

I tabellen Försäljning filtreras inköpsdatumet för den första januari 2015. Och när det filtret är på plats är allt som återstår den första januari 2015.

Introduktion till filterkontext i LuckyTemplates

Aggregation I Filtersammanhang

Eftersom vi summerar kolumnen Kvantitet i den här funktionen, gör aggregeringen i filterkontexten detta en enda stor utvärdering eller stor aggregering av hela kolumnen.

Filterkontexten innebär helt enkelt att filtren sätts på plats . Detta kommer att göratitta på hela kolumnen som är över och gör sedan en aggregering av allt på en gång.

Introduktion till filterkontext i LuckyTemplates

Detsamma kan sägas om en mängd olika beräkningar. Du kan göra detta medan du försöker räkna upp de totala transaktionerna som du gjorde eller de totala intäkterna som du skapar. Samma aggregering kan göras efter att utvärderingskontexten är klar.

Det finns så många sammanhang i DAX att det ibland kan bli förvirrande. Ett tips som jag kan dela med dig är att associera filterkontext med aggregering , som en summa eller ett medelvärde, eller ett min och max. Detta är motsatsen till en iteration, vilket är det som fungerar med radkontext.

Slutsats

Sammanfattningsvis fungerar en filterkontext efter att den första utvärderingskontexten är klar. Nyckeln är att associera det med en aggregering. Vad som händer bakom kulisserna är att det gör denna enda stora sammanställning av en kolumn efter att alla filter har satts på plats.

Du kan titta på dessa länkar för att lära dig mer om tillämpningen av filterkontext inuti LuckyTemplates:

Utvärderingskontext – (1.8) Ultimate Beginners Guide to DAX

Explaining Row Context – (1.10) Ultimate Beginners Guide to DAX

Njut av att arbeta igenom den här.


Pipe In R: Anslutningsfunktioner med Dplyr

Pipe In R: Anslutningsfunktioner med Dplyr

I den här handledningen kommer du att lära dig hur du kopplar ihop funktioner med hjälp av dplyr-röroperatorn i programmeringsspråket R.

RANKX Deep Dive: A Lucky Templates DAX-funktion

RANKX Deep Dive: A Lucky Templates DAX-funktion

RANKX från LuckyTemplates låter dig returnera rankningen av ett specifikt nummer i varje tabellrad som utgör en del av en lista med nummer.

Extrahera LuckyTemplates-teman och bilder från PBIX

Extrahera LuckyTemplates-teman och bilder från PBIX

Lär dig hur du tar isär en PBIX-fil för att extrahera LuckyTemplates-teman och bilder från bakgrunden och använda den för att skapa din rapport!

Excel Formler Fuskblad: Mellanvägledning

Excel Formler Fuskblad: Mellanvägledning

Excel Formler Fuskblad: Mellanvägledning

LuckyTemplates Kalendertabell: Vad är det och hur man använder det

LuckyTemplates Kalendertabell: Vad är det och hur man använder det

LuckyTemplates Kalendertabell: Vad är det och hur man använder det

Python i LuckyTemplates: Hur man installerar och ställer in

Python i LuckyTemplates: Hur man installerar och ställer in

Lär dig hur du installerar programmeringsspråket Python i LuckyTemplates och hur du använder dess verktyg för att skriva koder och visa bilder.

Beräkna dynamiska vinstmarginaler – enkel analys av LuckyTemplates med DAX

Beräkna dynamiska vinstmarginaler – enkel analys av LuckyTemplates med DAX

Lär dig hur du beräknar dynamiska vinstmarginaler vid sidan av LuckyTemplates och hur du kan få fler insikter genom att gräva djupare i resultaten.

Sortering av datumtabellkolumner i LuckyTemplates

Sortering av datumtabellkolumner i LuckyTemplates

Lär dig hur du sorterar fälten från en utökad datumtabells kolumner korrekt. Detta är en bra strategi att göra för svåra fält.

Hitta dina bästa produkter för varje region i LuckyTemplates med DAX

Hitta dina bästa produkter för varje region i LuckyTemplates med DAX

I den här artikeln går jag igenom hur du kan hitta dina toppprodukter per region med hjälp av DAX-beräkningar i LuckyTemplates, inklusive TOPN- och CALCULATE-funktionerna.

Skräpdimension: Vad är det och varför det är allt annat än skräp

Skräpdimension: Vad är det och varför det är allt annat än skräp

Lär dig hur du använder en skräpdimension för flaggor med låg kardinalitet som du vill infoga i din datamodell på ett effektivt sätt.