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.
Under de senaste månaderna har jag presenterat flera handledningar som visar bästa praxis för utveckling av LuckyTemplates-rapporter för var och en av de fyra pelarna i LuckyTemplates. I den här bloggen ville jag passa på att presentera min personliga topp 10-lista. Du kan se hela videon av denna handledning längst ner på den här bloggen.
Det här kommer att skilja sig lite från en traditionell topp 10. Istället för en topp 10, har jag valt 10 av mina favoriter. Det finns så många komponenter i en bra LuckyTemplates-rapport, och det var verkligen svårt att bara välja 10. Men innan jag kommer till det vill jag lyfta fram de tre valfria inställningarna som enligt min mening är väsentliga för alla LuckyTemplates-rapporter.
Den första är Inaktivera automatisk datum/tid . Detta kan göras antingen varje gång för den aktuella filen eller globalt för alla nya filer. Globalt rekommenderas.
Nästa är Inaktivera automatisk identifiering av relationer . Tyvärr kan det här alternativet inte ställas in globalt, så det måste justeras för varje fil.
Slutligen har vi Aktivera korsfiltrering . Detta kan inte ställas in globalt också, men det är mer publikberoende och bör justeras rapport för rapport, beroende på hur konsumenterna vill se deras data. Jag föredrar korsfiltrering hela tiden.
Innehållsförteckning
Topp 10 bästa praxis för LuckyTemplates rapportutveckling
1 – Dedikerad och markerad datumtabell
När de tre alternativen väl har ställts in är min favorit nummer ett. Detta är bokstavligen det första jag säkerställer när jag utvecklar eller tittar på en LuckyTemplates-rapport, och jag kan inte rekommendera den tillräckligt starkt.
Din Dates-tabell ska ha hela år och en rad per dag. Jag tycker att års-, kvartals-, månads-, veckas- och dagförskjutningar är extremt användbara och utvecklas sällan utan dem.
2 – Staging och referensdata
Nästa är iscensättning och referensdata av flera skäl. Om du laddar eller placerar din data som en otransformerad tabell maximeras laddningsprestanda och minimerar stressen på din datakälla. Genom att skapa eller referera till dina fakta- och dimensionstabeller enligt önskemål från din scendata kommer du att minimera eller lindra saknade relationer. Och som en bonus säkerställer detta att du själv måste skapa och redigera relationerna mellan tabellerna, vilket bara kan förbättra din mentala bild av datamodellen.
Så om jag går in i Power Query kommer vi att se att jag har den platta tabellen importerad som en Staging-fråga. Om jag högerklickar på den ser vi att jag har aktiverat laddning inaktiverat.
Låt oss bara skapa en referens av denna för en annan tabell, så jag högerklickar på den, skapar en referens och byter namn på den till vägbeskrivningar. Sedan kommer jag över till kolumnen Vägbeskrivningar, välj bara den, högerklicka och ta bort andra kolumner.
Sedan högerklickar jag härifrån och tar bort dubbletter. Och sedan kommer jag att sortera kolumnen.
3 – Minska datavolymen
Nästa bästa praxis är att minska datavolymen . Du kan filtrera dina data idealiskt vid källan för att undvika att ens ladda rader eller kolumner med data som inte är nödvändiga för att svara på de specifika frågor som är syftet med din rapport.
Om du inte kan justera källan kan du använda rullgardinsmenyn för radfilter för att ta bort onödiga rader och knappen Välj kolumner i Power Query för att ta bort onödiga kolumner från din datamodell.
4 – Stjärnschema eller vattenfallslayout för datamodell
Nästa är Star Schema , som är den idealiska strukturen för din datamodell. Du bör alltid sträva efter enklast möjliga datamodell med dimension eller slå upp tabeller ovanför eller kring faktatabellen. Vikten av detta vattenfall eller stjärnlayout kan inte överbetonas, eftersom det bara förbättrar din mentala bild av datamodellen. Det tillåter också ofta bästa möjliga DAX och visuella prestanda.
5 – Använd 1-till-många-relationer
När det gäller relationer, sträva efter att, med en ände vid dimensionen och många slutar vid faktatabellen. Undvik dubbelriktade relationer om du kan, om du inte har bestämt att din modell verkligen behöver dem och att du verkligen förstår deras användning också.
Kom ihåg att du bara kan ha en aktiv relation mellan två tabeller, men du kan inte ha många inaktiva relationer.
6 – Använd verbose variabelnamngivning
När det gäller Verbose Variable Naming har jag alltid försökt att koda för tydlighetens skull, och jag tycker att användningen av verbose variabelnamn verkligen hjälper min kod att vara tydlig. När jag använder utförliga variabelnamn behöver jag sällan lägga till förklarande kommentarer och det minskar avsevärt de enkla felen i min kod när jag väljer fel variabel.
Jag använder även prefixet understreck på mina variabelnamn. Det ökar läsbarheten och det förbättrar typen av headless som tillhandahålls av IntelliSense.
7- Använd SWITCH TRUE istället för kapslade IF-satser
En annan bästa praxis i LuckyTemplates-rapportering, som jag starkt rekommenderar, är användningen av . Som jag har sagt tidigare strävar jag efter att koda för klarhet, och jag tycker att ett av de bästa sätten att göra detta är att undvika användningen av kapsladeuttalanden.
Låt oss titta på ett exempel här med en kapslad IF-sats.
Jag föredrar att använda logiken SWITCH TRUE istället, särskilt med användningen av variabler ovanför den. SWITCH TRUE-satsen och RETURN Result-konstruktionen är tydligare än när man använder kapslad IF-sats.
I formeln med SWITCH TRUE tycker jag att det är mycket lättare att läsa.
8 – Använd mätförgreningsteknik
En del av min topp 10 bästa praxis i LuckyTemplates-rapporteringslistan är att mäta förgrening . Det är ett av de bästa sätten att utveckla DAX-beräkningar. Du börjar med dina enkla eller grundläggande mått och bygger upp komplexa beräkningar.
Jag tycker att måttet förgrening är en av de bästa teknikerna för att skriva tydlig kod. Det gör det mycket lättare att felsöka komplexa beräkningar eftersom de enskilda komponenterna enkelt kan läggas till i en valideringstabell på en arbetssida.
Låt oss ta en snabb titt på det här exemplet nedan. Mitt basmått här är Total Shipments, vilket är ett enkelt COUNTROWS. Jag kan förgrena mig till standardförsändelser på servicenivå, vilket är en enkel BERÄKNA med det totala antalet försändelser-baserade mått.
9 – Använd FORMAT/ALLMÄNT för visuell dimensionering eller avstånd
Jag tror mycket på konsekvens, och jag tycker ofta att rapportkonsumenter först kommenterar små skillnader i storleksinriktning eller avstånd snarare än data. Så ett av de bästa sätten att uppnå detta är att använda avsnittet Allmänt i formatfönstret för att ställa in specifika pixelvärden för X, Y, bredd och höjd till multipler av 10. Detta säkerställer konsistens och jag tycker att det ser bättre ut.
Låt oss ta detta Sea Shipments -kort som ett exempel. Uppenbarligen har den en annan storleksinställning än Air Shipments-kortet.
Om jag expanderar fönstret Visualiseringar till fönstret Format och öppnar avsnittet Allmänt, ser vi att X, Y, bredd och höjd är inställda på multiplar av 10.
10 – Tabell-första utveckling
Sist men inte minst har vi. En av de mest förbisedda sanningarna om många bilder i LuckyTemplates är att de egentligen bara är tabeller som återges på olika sätt.
Sam har nämnt många gånger i sina handledningar att ett av de bästa sätten att se till att en visual presenterar de data du vill ha är att först skapa en tabell som visar tabellen korrekt. Skapa sedan en kopia av tabellen och ändra den visuella typen av kopian till önskad typ, till exempel ett stapeldiagram eller ett ytdiagram.
Slutsats
Det är allt för mina 10 bästa praxis i LuckyTemplates rapportutveckling plus mina tre favoritalternativ. Jag rekommenderar att du försöker implementera alla dessa tekniker när du skapar dina egna rapporter.
Jag hoppas att detta är till hjälp för din LuckyTemplates-resa. Kolla in länkarna nedan för mer relaterat innehåll
Med vänliga hälsningar!
Greg
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.