Rijcontext uitleggen in LuckyTemplates

Rijcontext uitleggen in LuckyTemplates

Ik heb ontdekt dat de meeste mensen in de war raken als het gaat om het begrijpen van hoe DAX werkt in rijcontext . Dit komt omdat rijcontext behoorlijk ingewikkeld en onnodig ingewikkeld kan zijn. In dit artikel gaan we het dus hebben over rijcontext . Je kunt de volledige video van deze tutorial onderaan deze blog bekijken.

De manier waarop ik over rijcontext denk, is door middel van iteraties of itererende functies . Zodra ik dat onderscheid in mijn hoofd had gemaakt, was het logischer in termen van wat er werkelijk aan de hand was in de rekenmachine.

Als samenvatting hebben we besproken dat er drie soorten contexten zijn: de evaluatiecontext , de filtercontext en de rijcontext .

Elke DAX-berekening werkt in twee stappen. De evaluatiecontext gaat altijd eerst en vertakt zich vervolgens in filtercontext of rijcontext, afhankelijk van welke functie u schrijft.

Inhoudsopgave

Rijcontext begrijpen

Bij rijcontext draait alles om herhalen.

Ik ga je een paar voorbeelden laten zien en hopelijk zal dit je helpen om te begrijpen wat rijcontext eigenlijk doet in de backend.

Rijcontext versus filtercontext

In ons voorbeeld wordt de formule berekend via filtercontext omdat het een eenvoudige aggregatie is. Het somt de volledige kolom Hoeveelheid op nadat alle initiële filters zijn geplaatst.

Rijcontext uitleggen in LuckyTemplates

Het initiële filter in de tabel Verkoop is Product 1. Door elke verkochte hoeveelheid op te tellen, krijgen we 165.

Rijcontext uitleggen in LuckyTemplates

Nu ga ik je laten zien hoe je precies hetzelfde resultaat krijgt, maar op een heel andere manier berekend. Eerst ga ik een nieuwe meting maken voor Aantal Verkochte Iteratie met behulp van een herhalende formule.

Rijcontext uitleggen in LuckyTemplates

Voorbeelden van itererende functies zijn SUMX , AVERAGEX , MANYX en COUNTX . In dit geval gaan we SUMX gebruiken .

De SUMX- functie heeft me gevraagd om een ​​tabel in te voeren, dus ik ga de verkooptabel invoeren. En toen vroeg het me om een ​​uitdrukking, dus die heb ik gewoon in de kolom Hoeveelheid gezet.

Deze functie is heel anders dan de eerste functie, maar ik krijg precies hetzelfde resultaat als ik het naar binnen sleep.

Rijcontext uitleggen in LuckyTemplates

We krijgen hier precies dezelfde resultaten omdat het uiteindelijk dezelfde berekening is. Het is alleen op een andere manier berekend.

Rijcontext uitleggen in LuckyTemplates

De iteratie van de verkochte hoeveelheid is berekend met behulp van rijcontext , terwijl de totale verkochte hoeveelheid is berekend met behulp van filtercontext .

Het berekenen van de verkochte hoeveelheid iteratie met behulp van rijcontext

Laten we nu stap voor stap bekijken hoe de Aantal Verkochte Iteratie wordt berekend. Ten eerste moet u onthouden dat u de initiële waarderingscontext verlaat, in dit geval Product 1. En dan herhalen we via rijcontext elke afzonderlijke rij in de tabel die we specificeren.

In dit geval specificeren we de tabel Verkoop en vervolgens gaan we elke afzonderlijke rij in de kolom Hoeveelheid bekijken.

Rijcontext uitleggen in LuckyTemplates

Tijdens de eerste evaluatie zou product 1 worden bepaald door wat er in de kolom Product-ID is gefilterd. En dan telt het de rijen onder de kolom Hoeveelheid op. Elke keer dat het een rij raakt, gaat het naar binnen en slaat het resultaat op in het geheugen.

Nadat het de onderkant van de tabel heeft bereikt, gaat het een evaluatie uitvoeren van alle resultaten die in het geheugen zijn opgeslagen, en dan zal het elke berekening uitvoeren die u erom vraagt, wat in dit geval SUMX is .

Rijcontext uitleggen in LuckyTemplates

Waarom een ​​rijcontext of een herhalende functie gebruiken?

Dit komt omdat je binnen een itererende functie veel complexere dingen kunt doen. Je kunt er een aantal zeer geavanceerde logica in schrijven.

Rijcontext uitleggen in LuckyTemplates

Voor elke rij in de tabel Verkoop wordt de hoeveelheid bijvoorbeeld vermenigvuldigd met 2. U ziet nu dat hetzelfde berekeningsproces plaatsvindt, maar we krijgen verschillende resultaten.

Rijcontext uitleggen in LuckyTemplates

Dit komt omdat we voor elke afzonderlijke rij een andere logica schrijven. Nadat we elke rij in de hoeveelheidskolom hebben doorlopen, vermenigvuldigen we de waarde met twee en wordt deze in het geheugen opgeslagen. Aan het einde daarvan doen we een SUM .

We kunnen hier ook verschillende dingen schrijven, waaronder geavanceerde logica zoals de IF- of SWITCH -logica.

Rijcontext uitleggen in LuckyTemplates

Er zijn heel veel voorbeelden waarbij het beter zou zijn om een ​​herhalende functie of rijcontext te gebruiken om een ​​berekening uit te voeren in plaats van een aggregatiefunctie of filtercontext .

Belangrijke opmerkingen over het begrijpen van contexten in LuckyTemplates

Om alle belangrijke dingen over context samen te vatten, onthoud dat het berekenen in DAX in twee stappen werkt. De eerste stap is altijd de evaluatiecontext . Het maakt zoveel uit wat de evaluatiecontext is.

Als u eenmaal begrijpt wat de evaluatiecontext is voor elk individueel resultaat, vertakt DAX zich op twee verschillende manieren. Het kan berekenen via filtercontext of via rijcontext.

Het kiezen van de te gebruiken context hangt af van de formule die u schrijft. Dus als u een eenvoudige aggregatieformule schrijft , zal deze deze gaan berekenen via filtercontext . Maar als u een itererende functie zoals SUMX schrijft, berekent deze de formule via rijcontext .

Zodra u iets geavanceerder wordt in DAX, kunt u meerdere contexten in dezelfde functie hebben. Maar voordat je daar komt, moet je echt begrijpen wat context in zijn eenvoudigste vorm is.

Conclusie

Het begrijpen van de soorten context is absoluut cruciaal als u DAX leert en meer geavanceerd werk wilt doen. Wanneer u begint met het schrijven van echt geavanceerde DAX-formules, werken er meerdere contexten tegelijkertijd en moet u begrijpen wat elk afzonderlijk onderdeel van die formule doet om de gewenste resultaten te bereiken.

Hier volgen enkele aanbevolen links voor meer informatie over de toepassing van rijcontext in LuckyTemplates:

Evaluatiecontext – (1.8) Ultieme beginnershandleiding voor DAX

Filtercontext – (1.9) Ultieme beginnershandleiding voor DAX

Geniet ervan om deze door te werken.


Wat is zelf in Python: voorbeelden uit de echte wereld

Wat is zelf in Python: voorbeelden uit de echte wereld

Wat is zelf in Python: voorbeelden uit de echte wereld

Een RDS-bestand opslaan en laden in R

Een RDS-bestand opslaan en laden in R

Je leert hoe je objecten uit een .rds-bestand in R opslaat en laadt. In deze blog wordt ook besproken hoe je objecten uit R naar LuckyTemplates importeert.

First N Business Days Revisited – Een DAX-coderingstaaloplossing

First N Business Days Revisited – Een DAX-coderingstaaloplossing

In deze tutorial over DAX-coderingstaal leert u hoe u de functie GENERATE gebruikt en hoe u de titel van een maat dynamisch wijzigt.

Breng inzichten onder de aandacht met behulp van de Multi Threaded Dynamic Visuals-techniek in LuckyTemplates

Breng inzichten onder de aandacht met behulp van de Multi Threaded Dynamic Visuals-techniek in LuckyTemplates

Deze zelfstudie behandelt hoe u de Multi Threaded Dynamic Visuals-techniek kunt gebruiken om inzichten te creëren op basis van dynamische gegevensvisualisaties in uw rapporten.

Inleiding tot het filteren van context in LuckyTemplates

Inleiding tot het filteren van context in LuckyTemplates

In dit artikel zal ik de filtercontext doornemen. Filtercontext is een van de belangrijkste onderwerpen waarover elke LuckyTemplates-gebruiker in eerste instantie zou moeten leren.

Beste tips voor het gebruik van de apps in LuckyTemplates Online Service

Beste tips voor het gebruik van de apps in LuckyTemplates Online Service

Ik wil laten zien hoe de online service LuckyTemplates Apps kan helpen bij het beheren van verschillende rapporten en inzichten die uit verschillende bronnen zijn gegenereerd.

Analyseer winstmargeveranderingen in de loop van de tijd - analyse met LuckyTemplates en DAX

Analyseer winstmargeveranderingen in de loop van de tijd - analyse met LuckyTemplates en DAX

Leer hoe u wijzigingen in uw winstmarge kunt berekenen met behulp van technieken zoals vertakking van metingen en het combineren van DAX-formules in LuckyTemplates.

Materialisatie-ideeën voor gegevenscaches in DAX Studio

Materialisatie-ideeën voor gegevenscaches in DAX Studio

Deze tutorial bespreekt de ideeën van materialisatie van datacaches en hoe deze de prestaties van DAX beïnvloeden bij het leveren van resultaten.

Zakelijke rapportage met behulp van LuckyTemplates

Zakelijke rapportage met behulp van LuckyTemplates

Als u tot nu toe nog steeds Excel gebruikt, is dit het beste moment om LuckyTemplates te gaan gebruiken voor uw zakelijke rapportagebehoeften.

Wat is LuckyTemplates Gateway? Alles wat u moet weten

Wat is LuckyTemplates Gateway? Alles wat u moet weten

Wat is LuckyTemplates Gateway? Alles wat u moet weten