LuckyTemplates brugerdefinerede forespørgselsfunktioner

Til dagens selvstudie skal vi bygge en LuckyTemplates brugerdefineret forespørgselsfunktion, der skal håndtere et almindeligt vanskeligt at håndtere format af stablede data. Denne teknik kan nemt genbruges på flere rapporter og flere tabeller. Du kan se den fulde video af denne tutorial nederst på denne blog.

Dette er en fortsættelse af den tutorial, jeg lavede for nylig, hvor vi beskæftigede os med et almindeligt vanskeligt at håndtere format af stablede data og brugte Modulo, Pivot og nogle rensefunktioner med Power Query til at transformere disse data til et organiseret og funktionelt format.

LuckyTemplates brugerdefinerede forespørgselsfunktioner

Det er meget sandsynligt, at du bliver nødt til at gentage denne proces. Hvis denne type format stammer fra en kopi og indsæt, vil det sandsynligvis ske igen. Så i dette tilfælde vil du sandsynligvis bygge en brugerdefineret funktion, der vil kunne genbruges på flere rapporter og flere tabeller, uanset hvordan de hedder, og hvad der ellers er i disse tabeller.

Indholdsfortegnelse

Sådan oprettes og fejlsøges LuckyTemplates brugerdefinerede forespørgselsfunktioner

Lad os springe ind i Power Query om dette. Hvis vi går til vores datatabel, i den avancerede editor, har vi M-koden for, hvordan vi endte med at gå fra de stakdata til det ønskede format.

LuckyTemplates brugerdefinerede forespørgselsfunktioner

Hvis vi vil genbruge dette, højreklikker vi bare på Data og siger, Opret funktion .

LuckyTemplates brugerdefinerede forespørgselsfunktioner

Den siger, at den ikke vil referere til nogen parameter, men det er okay at oprette en funktion uden parametre. Vi vil svare, ja, fordi vi vil tilføje parametrene, mens vi går i den avancerede editor. Vi kalder denne funktion, Unstack – 3 Elements , bare fordi vi har de tre rækker i råformatet. Hvis vi havde et format med to rækker, ville vi sandsynligvis bygge et separat, der var to eller fire elementer.

LuckyTemplates brugerdefinerede forespørgselsfunktioner

Så nu har vi denne Invoke, vi har ingen parametre, og lad os gå til Advanced Editor og begynde at arbejde på denne.

LuckyTemplates brugerdefinerede forespørgselsfunktioner

For det første har vi ikke brug for denne Kilde. Vi skal bruge funktionsparametrene til at definere vores kilde.

LuckyTemplates brugerdefinerede forespørgselsfunktioner

Vi ønsker at definere den parameter, der kommer ind. Vi gør det med en åben parentes og derefter et parameternavn. Lad os kalde dette, Stack , som vil være den ene kolonne med data, der er de uformaterede stakdata, der kom ind fra indsættelsen af ​​e-mail-adresserne.

Vi ønsker, at dette skal komme ind som en liste, og vi ønsker, at det skal resultere i en tabel, fordi når vi deaktiverer den fra den enkelte kolonne til flere kolonner, går den fra en liste til en tabel. Og nu skal vi konvertere den indgående liste til en tabel, så vi kan tilføje vores indeks, starte vores Modulo unpivot og gøre alle de ting, vi skal gøre for at omformatere det.

LuckyTemplates brugerdefinerede forespørgselsfunktioner

Vi kalder det ConvertStack , og det kommer til at bruge en funktion kaldet Table.FromList . Ligesom mange af M-funktionerne gør den præcis, hvad den siger. Det kræver bare en liste. I dette tilfælde vil listen være vores stakliste. Og så skal vi erstatte kilden her med vores ConvertStack. Det ser ret godt ud! Vi har ingen syntaksfejl, så lad os trykke på Udført.

Nu giver det os det, vi ønskede, som er muligheden for at vælge en kolonne.

LuckyTemplates brugerdefinerede forespørgselsfunktioner

Derefter skal vi vælge TestData, som er de forkert formaterede data. Vi vælger kolonnen Værdi og klikker derefter på OK. Derefter klikker vi på Invoke.

LuckyTemplates brugerdefinerede forespørgselsfunktioner

Vi får dog denne fejl. Det er virkelig svært at finde ud af, hvad denne fejl er. Et af problemerne med brugerdefinerede funktioner er, at de ikke bryder de anvendte trin ud, du får bare et trin for hele den tilpassede funktion. Men der er en vej uden om det i fejlsøgningen, som jeg vil vise dig. Det vil gøre det meget nemmere at finde ud af, hvad der foregår her.

LuckyTemplates brugerdefinerede forespørgselsfunktioner

I stedet for at køre dette for øjeblikket som en funktion, vil vi køre det som en forespørgsel. Vi vil bare starte det Stack-opkald manuelt. Vi er nødt til at definere, hvad Stack er, fordi vi ikke tegner det gennem interaktionen med at vælge det i Invoke. Så vi har Stack lig med TestData og værdikolonnen i TestData.

LuckyTemplates brugerdefinerede forespørgselsfunktioner

Hvad det gør, er, at det opdeler det nu i de anvendte trin. Dette vil hjælpe os med at finde ud af, hvorfor dette ikke virker. Læg mærke til en interessant ting, når vi trækker Stack ind. Til at begynde med trækker den TestData[Værdi], men når vi konverterer den til en tabel, i stedet for Value er kolonneoverskriften, er kolonneoverskriften nu Kolonne1.

LuckyTemplates brugerdefinerede forespørgselsfunktioner

Husk fejlmeddelelsen, det var, at den ikke kunne finde kolonnen Værdi. Grunden til, at den ikke kunne finde kolonnen Værdi, er, at funktionen Table.FromList omdøber den til Kolonne1.

Hvis vi går ned i Applied Steps, kan du se, at det er i Added Custom-trinnet, hvor vi får fejlen. Det er her, værdien af ​​posten ikke blev fundet.

LuckyTemplates brugerdefinerede forespørgselsfunktioner

Og så, hvis vi går til den avancerede editor, finder vi det tilpassede felt, og vi kan se, at det er i Text.Remove, hvor vi fjerner de uønskede tegn, som vi ikke havde brug for, men det henviser stadig til feltet Værdi. Vi ændrer det til kolonne 1. Ligeledes refererer det til Værdi i feltet Fjernede kolonner, så vi ændrer det også til Kolonne1.

LuckyTemplates brugerdefinerede forespørgselsfunktioner

Og når vi kommer til slutningen af ​​Applied Steps, giver det det perfekte slutresultat.

LuckyTemplates brugerdefinerede forespørgselsfunktioner

Nu hvor vi ved, at det fungerer rigtigt, har vi bare en ting mere at gøre. Husk, at for at debugge det, gjorde vi den brugerdefinerede funktion til en forespørgsel. Og så nu skal vi tage den forespørgsel og gøre den tilbage til en funktion.

LuckyTemplates brugerdefinerede forespørgselsfunktioner




Konklusion

I denne tutorial har vi bygget denne brugerdefinerede funktion, fejlrettet den, testet den, og den fungerer godt. Og så nu, hver gang vi har en tre-elements stak, kan vi bare vælge den tabel, vælge den kolonne i tabellen og køre den brugerdefinerede funktion. Anvend derefter Modulo, unpivot, og ryd op.

Dette burde give dig nogle gode værktøjer i forhold til at skabe brugerdefinerede funktioner. Husk også det trick om fejlretning ved at vende det tilbage til en forespørgsel fra en funktion og derefter skifte det tilbage efter fejlretningen. Det er et virkelig værdifuldt værktøj, der gør det meget nemmere at fejlfinde brugerdefinerede funktioner.

Alt det bedste!

Leave a Comment

Oplev unik indsigt ved hjælp af LuckyTemplates TOPN-funktion

Oplev unik indsigt ved hjælp af LuckyTemplates TOPN-funktion

Denne blog indeholder LuckyTemplates TOPN DAX-funktionen, som giver dig mulighed for at få unik indsigt fra dine data, hvilket hjælper dig med at træffe bedre markedsføringsbeslutninger.

Oprettelse af en datotabel i LuckyTemplates

Oprettelse af en datotabel i LuckyTemplates

Find ud af, hvorfor det er vigtigt at have en dedikeret datotabel i LuckyTemplates, og lær den hurtigste og mest effektive måde at gøre det på.

LuckyTemplates Mobile Reporting Tips og teknikker

LuckyTemplates Mobile Reporting Tips og teknikker

Denne korte vejledning fremhæver LuckyTemplates mobilrapporteringsfunktion. Jeg vil vise dig, hvordan du kan udvikle rapporter effektivt til mobilenheder.

Professionelle serviceanalyserapporter i LuckyTemplates

Professionelle serviceanalyserapporter i LuckyTemplates

I denne LuckyTemplates Showcase gennemgår vi rapporter, der viser professionel serviceanalyse fra et firma, der har flere kontrakter og kundeengagementer.

Microsoft Power Platform-opdateringer | Microsoft Ignite 2021

Microsoft Power Platform-opdateringer | Microsoft Ignite 2021

Gå gennem de vigtigste opdateringer til Power Apps og Power Automate og deres fordele og implikationer for Microsoft Power Platform.

Almindelige SQL-funktioner: En oversigt

Almindelige SQL-funktioner: En oversigt

Opdag nogle almindelige SQL-funktioner, som vi kan bruge, såsom streng, dato og nogle avancerede funktioner til at behandle eller manipulere data.

LuckyTemplates skabelonoprettelse: Guide og tips

LuckyTemplates skabelonoprettelse: Guide og tips

I denne tutorial lærer du, hvordan du opretter din perfekte LuckyTemplates-skabelon, der er konfigureret til dine behov og præferencer.

Feltparametre og små multipler i LuckyTemplates

Feltparametre og små multipler i LuckyTemplates

I denne blog vil vi demonstrere, hvordan man lagdelte feltparametre med små multipler for at skabe utrolig nyttig indsigt og visuals.

LuckyTemplates-rangering og brugerdefineret gruppering

LuckyTemplates-rangering og brugerdefineret gruppering

I denne blog vil du lære, hvordan du bruger LuckyTemplates rangerings- og brugerdefinerede grupperingsfunktioner til at segmentere et eksempeldata og rangordne det efter kriterier.

Viser kun kumulativ total op til en bestemt dato i LuckyTemplates

Viser kun kumulativ total op til en bestemt dato i LuckyTemplates

I denne tutorial vil jeg dække en specifik teknik omkring, hvordan du kun viser Kumulativ Total op til en bestemt dato i dine visuals i LuckyTemplates.