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.
I dagens blogg kommer jag att diskutera en fråga som dyker upp hela tiden i LuckyTemplates-forumet . Hur kan du sortera fälten från en utökad datumtabells kolumner korrekt? Du kan se hela videon av denna handledning längst ner på den här bloggen.
Detta hänvisar till den utökade datumtabellen från M-koden som utvecklades av Melissa Dekorte, en av våra experter.
Vårt exempel på det här blogginlägget är bara en enkel applikation som löper från 2018 till 2020 med ett räkenskapsår som börjar i juli. Medlemmen ville lära sig hur man sorterar månadsnamnet; de försökte också sortera ett av fälten relaterade till månad.
Så här kan du sortera en kolumn effektivt.
Vårhar många fält i sig; ärligt talat, de är svåra att hålla ordning på ibland.
Det är därför vi skapade det här fuskbladet som visar dig hur vart och ett av fälten ser ut, samt deras format och innehåll, en viss dag.
I de flesta fall kan du använda detta för att ta reda på hur man sorterar ett fält baserat på ett annat.
Vi har månadens namn och forummedlemmen försökte använda MonthnYear för att reda ut det.
Låt oss hitta månadens namn i vår utökade datumtabell. Välj Månadsnamn i fältrutan och gå sedan till Sortera efter kolumn och leta efter Månadsår .
När vi klickar på det får vi ett felmeddelande som säger att vi inte kan ha mer än ett värde i MonthnYear för samma värde i Month Name.
Detta kommer ner till ett granularitetsproblem. Du behöver en en-till-en-relation mellan fältet du försöker sortera och fältet du använder för att sortera efter.
I det här fallet, för en given månad 2018, 2019 och 2020, kan vi ha tre olika värden för fältet Månadsår . Det är därför vi måste hitta en som har en en-till-en relation.
Om vi går tillbaka till vårt cheat sheet kan vi se att MonthofYear bara är månadens nummer. Detta kommer att ha den en-till-en-relation som vi letar efter. Detta innebär att januari kommer att motsvara 1, februari med 2, och så vidare.
Om vi klickar på Sortera efter kolumn och sorterar efter månad på året får vi fält- eller tabellkolumnerna sorterade ordentligt.
Nästa, Månad & År , är lite svårare. Det är ett sammansatt fält som har en kort månad och år.
Vi måste hitta något som sorterar först efter år och sedan efter månad. Om vi klickar på Månadsår i fältrutan och går till Sortera efter kolumn , kommer månadsåret som vi ursprungligen försökte använda att passa perfekt .
Du kan se att för tabellkolumnen Månad och år har allt ordnat sig perfekt.
Så nu har vi de två första klara. Den sista är dock ett riktigt illa skött fält.
Det är problematiskt av ett par anledningar. Vi har två textfält sammanlänkade och räkenskapsmånadsfältet är inte utfyllt.
I slutändan vill vi uppnå något som liknar detta månadsår , där vi har ett fyrsiffrigt räkenskapsår och sedan vår tvåsiffriga räkenskapsmånad utfylld efter det.
Det enklaste sättet att göra detta är att använda power-frågan .
Vi går till Transform data .
Och sedan går vi till vår datumtabell och lägger till en anpassad kolumn.
Låt oss kalla den här anpassade kolumnen Budget Year Fiscal Month Sorter (FYFM Sortering).
Vi börjar med vårt textprefix som är 20 för de två första siffrorna i vårt årtal och sedan sammanfogar vi det med en funktion som heter Tex.Middle . Denna funktion drar en delsträng ur en större textsträng. Det är analogt med MID , och jag ska visa dig skillnaden mellan de två.
Vi kommer att använda detta på vårt räkenskapsårsfält.
I DAX, när vi drar delsträngar, är det ett enbaserat index. För att dra det tredje tecknet måste vi använda 3. I power-frågan är det ett nollbaserat index så det tredje tecknet blir 012.
Vi börjar med 2, som är det tredje tecknet. Vi vill returnera två tecken för att få bort det andra siffrorna från räkenskapsårsfältet.
Nästa steg är att sammanfoga detta med vårt vadderade räkenskapsmånadsfält.
I DAX kommer vi att behöva använda en LENGTH-funktion och IF-funktion, då kan vi manuellt paddla.
I power-frågan finns det en funktion som gör allt detta. Detta är Text.PadStart .
Eftersom räkenskapsperioden är ett numeriskt fält, måste vi använda en funktion som heter Text.From för att konvertera det numeriska värdet till ett textvärde som vi kan fylla på. Sedan drar vi vårt räkenskapsperiodfält.
Vi vill se till att den har 2 tecken. I fall där det har 1 tecken, kommer vi att fylla på det med en 0.
När vi klickar på OK -knappen har vi vårt fyrsiffriga räkenskapsår och sedan vår tvåsiffriga vadderade räkenskapsmånad.
Vi går sedan tillbaka till startsidan och klickar på Stäng och tillämpa .
Om vi sorterar vårt FM & FY-fält efter kolumn, kommer det nu att sorteras perfekt efter räkenskapsår och sedan en räkenskapsmånad.
Slutsats
I den här bloggen har jag täckt tekniken för hur man sorterar datumtabellkolumner i LuckyTemplates. Detta är en bra strategi att göra för svåra områden, som kom från att bygga några anpassade funktioner. Jag hoppas att du har funnit denna allmänna uppsättning verktyg till hjälp i din egen rapportutveckling.
Om du inte redan har gjort det, vänligen prenumerera på LuckyTemplates TV- kanal , där vi har mer innehåll som kommer ut i framtiden.
Skål!
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.