Vad är Power Query & M Language: En detaljerad översikt
Denna handledning ger en översikt över Power Query Editor och M-språket på LuckyTemplates-skrivbordet.
Denna handledning kommer att diskutera variabler, inklusiveochfunktioner. Du kommer att förstå hur dessa hjälper till att öka prestandan för dina DAX-frågor och ger korrekta resultat.
Variabler bör användas så mycket som möjligt eftersom de lätt kan hitta koder för optimering. De förhindrar att du får felaktiga utdata och sparar tid på att leta efter felet. Variabler hindrar dock ibland att ett värde räknas om. Så när de väl har definierats med ett värde kan det värdet inte ändras, inte ens med CALCULATE .
Det är viktigt att veta var du ska definiera och använda variabler eftersom att använda dem i och utanför en iteration kommer att generera olika resultat. De bör definieras nära där de ska användas. Detta hjälper också till att bryta ner långa koder, vilket gör dem lättare att förstå och felsöka.
Innehållsförteckning
Skapa DAX-frågor med BERÄKNA och FILTER
Det finns olika metoder för att få resultat och svar i DAX. Du måste utveckla din egen stil och flöde när du skapar din rapport så att du kan känna dig bekväm med det du arbetar med. Även om du har din egen stil måste du fortfarande följa de specifika riktlinjerna, som inkluderar att använda BERÄKNA över olika metoder som till exempel FILTER .
FILTER kan skicka mycket okomprimerad data till formelmotorn och kan potentiellt utlösa ett CallBackDataID. Mått kommer att användas här för att visa resultaten av BERÄKNA och FILTRERA . Detta har också ett definierat mått som är lokalt för frågan. Definierade mått kan inte hittas i datamodellen men de kan utveckla och felsöka dina koder snabbare.
På den första raden kan du se ett mått som definierar en variabel för datumet. Det betyder att den filtrerar faktatabellen för de datum som inträffar den 31 mars 2016 eller senare. Du kan också se ett enkelt mått på den totala försäljningen som itererar tabellen Faktaförsäljning och multiplicerar kvantitet och aktuellt pris.
Nästa mått är att användainuti. Om du återkallar från CallBackDataID- modulen kommer ett CallBackDataID att skapas genom att använda ett IF i SUMX-funktionen .
Detta mått filtrerar hela tabellen Faktaförsäljning. Det tar bort filtren som kommer från datumtabellen.
Du måste vara försiktig när du filtrerar en hel tabell eftersom den också kommer att filtrera alla kolumner som finns på ena sidan av en-till-många-relationen.
Detta mått är detsamma som föregående mått; den enda skillnaden är att den inte filtrerar hela tabellen. Den använder SUMX för att bara iterera en filtrerad tabell.
Detta är ytterligare ett mått som filtrerar tabellen Faktaförsäljning, men den här gången är det bara i kolumnen där det finns.
Det sista måttet är att använda CALCULATE och datamodellen för att filtrera och hämta data.
Kör och kontrollera varje åtgärd
Kör först IF- måttet. Se till att rensa cacheminnet innan du kör frågan och aktiverar Server Timings och Query Plan.
Även om det ger rätt data, är prestandan långsam på grund av CallBackDataID och de 3 varaktigheterna.
Om du kör måttet som filtrerar hela tabellen Faktaförsäljning kan du fortfarande se CallBackDataID . Det kommer också att generera 15 003 rader och ge felaktiga resultat.
När du kör åtgärden som inte filtrerar hela tabellen Faktaförsäljning får du rätt resultat. Du kommer dock fortfarande att se CallBackDataID och de materialiserade 15 003 raderna, men har bara 7 rader med utdata.
Kör nästa mått som filtrerar på en kolumn. Du får rätt resultat och eliminerar CallBackDataID . Men du kan fortfarande se att det materialiserades många rader.
Kör måttet BERÄKNA . Du kan se att det bara materialiserades 10 rader och genererade rätt data på 5 millisekunder.
Det är den snabbaste av alla mått ovan eftersom den inte har den och drog bara 10 rader. Detta visar hur imponerande CALCULATE är när det gäller att få snabba och exakta resultat.
Om du kör alla DAX-frågor eller -mått kan du se vilken som är långsammast och snabbast baserat på varaktigheten. Du kan också se resultatet av varje åtgärd.
Slutsats
Genom att flytta filtren till CALCULATE sparar du tid och materialisering eftersom CallBackDataID kommer att elimineras. Du behöver inte upprepa data två gånger. Detta kommer också att maximera din DAX:s prestanda och hjälpa dig att förbättra dina utvecklingsfärdigheter.
Denna handledning ger en översikt över Power Query Editor och M-språket på LuckyTemplates-skrivbordet.
Lär dig hur du skapar en sidnumrerad rapport, lägger till texter och bilder och sedan exporterar din rapport till olika dokumentformat.
Lär dig hur du använder SharePoint-automatiseringsfunktionen för att skapa arbetsflöden och hjälpa dig att mikrohantera SharePoint-användare, bibliotek och listor.
Finslipa dina färdigheter i rapportutveckling genom att gå med i en dataanalysutmaning. Acceleratorn kan hjälpa dig att bli en LuckyTemplates superanvändare!
Lär dig hur du beräknar löpande summor i LuckyTemplates med DAX. Löpande summor låter dig inte fastna i ett individuellt resultat.
Förstå konceptet med variabler i DAX inom LuckyTemplates och konsekvenserna av variabler för hur dina mått beräknas.
Lär dig mer om den anpassade visual som kallas LuckyTemplates Slope-diagram, som används för att visa ökning/minskning för en enstaka eller flera mätvärden.
Upptäck färgteman i LuckyTemplates. Dessa är viktiga för att dina rapporter och visualiseringar ska se ut och fungera sömlöst.
Att beräkna ett genomsnitt i LuckyTemplates kan göras på många sätt för att ge dig exakt information för dina affärsrapporter.
Låt oss fördjupa oss i Standard LuckyTemplates-teman och granska några av funktionerna som är inbyggda i själva LuckyTemplates Desktop-applikationen.