Gode ​​fremgangsmåter for Power Query Language Flow

I denne opplæringen lærer du om Power Query Language Flow og noen av dens beste praksis. Du vil også lære hvordan du enkelt kan transformere dataene dine for å få best mulig resultater. Datatransformasjoner vil optimalisere rapporten din og få den til å se overbevisende ut.

Innholdsfortegnelse

Angi datatyper uten språkflyt for Power Query

De minste transformasjonene du alltid bør utføre er å gi nytt navn og angi datatyper for kolonnene dine.

brukes til å klassifisere verdier i M . Et ikon ved siden av kolonnenavnet viser den tilordnede datatypen for et felt. I denne eksempeltabellen kan du se et ABC123-ikon ved siden av kolonnenavnene. Det ikonet representerer Enhver datatype som indikerer at en datatype ikke er tilordnet den kolonnen. 

Gode ​​fremgangsmåter for Power Query Language Flow

Ut av bøkene er automatisk typegjenkjenning aktivert. Dette genererer Changed Type-trinn automatisk i spørringene dine. Selv om det er aktivert, sørg alltid for detgjetter datatypene riktig for hver av kolonnene på tvers av alle tabellene dine.

Gode ​​fremgangsmåter for Power Query Language Flow

Følg disse trinnene for å aktivere eller deaktivere den innstillingen.

Gode ​​fremgangsmåter for Power Query Language Flow

Under Global- alternativet kan du velge ett av de tre Type Detection- alternativene som er tilgjengelige for deg.

Gode ​​fremgangsmåter for Power Query Language Flow

Under alternativet Current File kan du veksle mellom alternativene for Type Detection avhengig av den globale innstillingen.

Gode ​​fremgangsmåter for Power Query Language Flow

Angi datatyper ved hjelp av Transform Tab

Brukergrensesnittet tilbyr flere måter å angi datatyper for kolonnene dine. I Transformer-fanens Enhver kolonne-seksjon finner du knappen Finn datatype .

Gode ​​fremgangsmåter for Power Query Language Flow

Hvis du velger alle kolonnene og klikker på den knappen, vil den automatisk angi datatypene for alle kolonnene. Men siden den bare skanner de 200 øverste radene, må du fortsatt validere om Power Query har riktig datatype.

Hvis du velger en kolonne fra tabellen, kan du se dens datatype i delen Enhver kolonne.

Gode ​​fremgangsmåter for Power Query Language Flow

Hvis du klikker på rullegardinknappen og velger Tekst, vil ikonet på den valgte kolonnen endres fra ABC123 til bare ABC .

Gode ​​fremgangsmåter for Power Query Language Flow

Du vil da se et Endret type-trinn i ruten Applied Steps.

Gode ​​fremgangsmåter for Power Query Language Flow

I Hjem-fanen finner du også muligheten til å angi datatypen.

Gode ​​fremgangsmåter for Power Query Language Flow

Angi datatyper ved hjelp av kolonneoverskrift

En annen måte er å høyreklikke på en overskrift og velge Endre type . Derfra kan du velge riktig datatype for kolonnene dine.

Gode ​​fremgangsmåter for Power Query Language Flow

Angi datatyper ved hjelp av kolonneikoner

Den vanligste måten å angi datatyper på er å klikke på ikonet ved siden av kolonnenavnet. Den vil vise deg alle tilgjengelige datatyper.

Gode ​​fremgangsmåter for Power Query Language Flow

I eksempeltabellen setter du datatypen for OrderDate- kolonnen til Dato .

Gode ​​fremgangsmåter for Power Query Language Flow

Avhengig av datatypen for kolonnen du velger, gir Power Query et sett med transformasjoner og alternativer som gjelder for den spesifikke datatypen i Transform- fanen , Legg til kolonne-fanen og Smart Filter-delen .

Så hvis du velger en datokolonne og går til Transform-fanen, vil du se alternativer under Dato-knappen.

Gode ​​fremgangsmåter for Power Query Language Flow

Men hvis du velger en tekstkolonne, vil ikke alternativene under Dato-knappen lenger være tilgjengelige.

Gode ​​fremgangsmåter for Power Query Language Flow

For smart filtrering har tekstkolonner tekstfiltre og datokolonner har datofiltre.

Gode ​​fremgangsmåter for Power Query Language Flow

Gode ​​fremgangsmåter for Power Query Language Flow

For neste kolonne endrer du kolonnenavnet til Kundenøkkel og datatypen til Helnummer .

Gode ​​fremgangsmåter for Power Query Language Flow

Deretter endrer du datatypen for kolonnene Kanal, Valutakode og Varehuskode til Tekst.

Gode ​​fremgangsmåter for Power Query Language Flow

Deretter endrer du navnet på leveringsregionindeksen til leveringsregionnøkkel og dens datatype til Helnummer . Deretter gjør du det samme for kolonnene Produktbeskrivelse Index og Order Quantity .

Gode ​​fremgangsmåter for Power Query Language Flow

Til slutt, for Enhetspris, Linjetotal og Enhetskostnad, setter du datatypen til Fast desimaltall .

Gode ​​fremgangsmåter for Power Query Language Flow

Angi datatyper med Power Query Language Flow

På grunn av endringene i kolonnene er det opprettet mange trinn i ruten Brukte trinn. Problemet er at på grunn av å utføre samme type transformasjoner flere ganger, prøvenblir ineffektiv. Dette er noe du bør unngå.

For å gjøre søket ditt effektivt, prøv å lage et enkelt trinn ved å bruke den spesifikke transformasjonen på alle kolonnene dine før du oppretter et nytt trinn.

Dupliser eksempeltabellspørringen og gi den nytt navn til Best Practice . Høyreklikk på den første transformasjonen som ble utført i forrige spørring i ruten Anvendte trinn, og velg Slett til slutt . Deretter bekrefter du slettingen av trinnet i dialogboksen Slett trinn .

Gode ​​fremgangsmåter for Power Query Language Flow

I tillegg er her noen beste fremgangsmåter. Den første tingen er å lage parametere for å inneholde datakildeplasseringen. Dette gjør det lettere å fikse problemer når et filnavn er endret.

For å opprette parametere, klikk på Administrer parametre i fanen Hjem og velg Ny parameter .

Gode ​​fremgangsmåter for Power Query Language Flow

En annen måte er å høyreklikke på Spørringsruten og velge Ny parameter .

Gode ​​fremgangsmåter for Power Query Language Flow

Etter det vil en Administrer parametere- dialogboks vises. Navngi parameteren FileLocation og sett Type til Tekst. For de foreslåtte verdiene, sett den til Liste over verdier slik at du kan lime inn strengen din og endre eller legge til flere steder som du kan bytte mellom.

Deretter går du til filutforskeren og velger filen din. Kopier banen og lim inn parameterne. Når du er ferdig, trykker du på OK .

Gode ​​fremgangsmåter for Power Query Language Flow

Gå tilbake til Best Practice-spørringen og klikk på Kilde-trinnet i ruten Applied Steps. Deretter endrer du den hardkodede filbanen i formellinjen med FileLocation .

Gode ​​fremgangsmåter for Power Query Language Flow

Fjern unødvendige kolonner

Fjern alle unødvendige kolonner for å spare plass og forbedre ytelsen. Ta med bare dataene du trenger fordi det er mye enklere å legge til tabeller og kolonner enn å fjerne dem.

Den enkleste måten å gjøre det på er gjennom trinnet Velg kolonner i Hjem-fanen. Hvis du klikker på den knappen, vises en dialogboks som lar deg velge kolonner du vil beholde. Du bør designe og forme bordene dine med et spesifikt formål for å passe best til analysen du skal utføre.

Gode ​​fremgangsmåter for Power Query Language Flow

Derfra fjerner du markeringen av kolonnene du ikke trenger i tabellen. For denne eksempeltabellen er kardinaliteten til OrderNumber-kolonnen høy. Det er best å velge bort den kolonnen fordi den påvirker filstørrelsen og den generelle ytelsen.

Hvis du ikke trenger plasseringsdata for analysen av eksempelsøket, er det også best å fjerne merket for leveringsområdeindeksen . Til slutt, siden tabellen allerede har en enhetspris og mengde, er ikke Linjetotal-kolonnen nødvendig.

Etter å ha fravalgt kolonner, trykk OK . Hvis du vil endre kolonnevalget, fjerner du bare tannhjulikonet ved siden av trinnnavnet i ruten Applied Steps.

Gode ​​fremgangsmåter for Power Query Language Flow

Tildel passende datatyper til kolonner og begrens rader

Deretter tildeler du datatyper for alle kolonnene. Velg alle kolonnene og klikk på Finn datatype i Transform-fanen.

Gode ​​fremgangsmåter for Power Query Language Flow

Oppdag datatype oppdager automatisk datatypene for kolonner basert på skanningen av de 200 øverste radene. Så sjekk og sørg for at Power Query angir de riktige datatypene.

Det er best praksis å begrense antall rader. Hvis regnskapsåret ditt starter 1. juli, kan du utelate dataene fra juni eller sette opp en parameter.

Det er imidlertid en hake hvis du ønsker å kunne endre en parameterverdi i . Etter at du har publisert rapporten, må du enten være en teksttype eller en desimaltype.

For å håndtere det, lag et filter på dataene ved å klikke på rullegardinknappen i OrderDate-kolonnen. Klikk deretter på Datofiltre og velg Etter .

Gode ​​fremgangsmåter for Power Query Language Flow

I dialogboksen endrer du den første parameteren til er etter eller lik og skriv deretter inn datoen. I dette eksemplet var datoen som ble angitt 1. juli 2014.

Gode ​​fremgangsmåter for Power Query Language Flow

Etter at du har trykket på OK , vil filteret bli brukt i tabellen din. Deretter oppretter du en parameter og gir den navnet DatesFrom . Sett Type til Tekst og skriv inn datoen i Current Value-parameteren.

Gode ​​fremgangsmåter for Power Query Language Flow

Gå nå tilbake til Beste praksis-spørringen og erstatt den iboende #datoen med Date.From(DatesFrom) .

Gode ​​fremgangsmåter for Power Query Language Flow

Hvis du klikker på avmerkingstegnet uten Date.From- funksjonen, returneres en feil. Det er fordi DatesFrom er en teksttype mens feltet har en datotype. Date.From - funksjonen konverterer tekst til dato.

Gi nytt navn til alle kolonnene som ikke skal skjules i datamodellen. Navnet må være kortfattet, selvbeskrivende og brukervennlig. Husk at du designer en datamodell for folk som skal bruke rapporten din.

Gode ​​fremgangsmåter for Power Query Language Flow

Konsolider redundante trinn i språkflyten for Power Query

Den neste tingen å gjøre er å konsolidere overflødige trinn (som, gi nytt navn, fjerne og endre kolonnedatatyper). Dessuten er trinn som omorganisering av kolonner ting du bør være oppmerksom på når du ser etter oppsigelser.

Tabellene du laster inn i datamodellen, vises aldri i rapporten. Det gjør kolonnerekkefølgen irrelevant.

En annen god fremgangsmåte er å gi nytt navn til trinnene i ruten Applied Steps. Navnene på trinnene er selvbeskrivende og brukes som variabler i M- koden.

Gode ​​fremgangsmåter for Power Query Language Flow

Navn som inneholder mellomrom eller spesialtegn skrives med anførselstegn. Det betyr at navnene er omsluttet av et sett med doble anførselstegn og de har hash- eller pundtegnet foran seg, noe som gjør M- koden vanskelig å lese. Du kan utelate mellomrommene eller sette et understrek mellom dem.

Gode ​​fremgangsmåter for Power Query Language Flow

Å legge til ytterligere dokumentasjonsdetaljer ved å legge inn kommentarer i Advanced Editor-vinduet er også en god praksis i Power Query. Du kan også gjøre det i trinnegenskapsbeskrivelsen . De vises som verktøytips-kommentarer når du holder markøren over et trinn med et utropstegn i Brukte trinn-ruten.

Å vite hvorfor du tok et bestemt valg i den innledende utviklingen er svært nyttig når du må gå tilbake til en fil etter en stund. For å legge til dokumentasjonsdetaljer, høyreklikk et trinn i ruten Applied Steps og velg Properties .

Gode ​​fremgangsmåter for Power Query Language Flow

En dialogboks for trinnegenskaper vises der du kan skrive årsaken til filtrering eller transformering.

Gode ​​fremgangsmåter for Power Query Language Flow

Organiser spørringer for en bedre språkflyt for kraftforespørsler

En av de vanligste beste fremgangsmåtene i Power Query er å organisere spørringene dine . Opprett mapper for parametere, funksjoner, staging-spørringer og spørringer som skal lastes inn i datamodellen. I dette eksemplet velger du FileLocation og DatesFrom-spørringene og høyreklikker på dem. Deretter velger du Flytt til gruppe og klikker på Ny gruppe .

Gode ​​fremgangsmåter for Power Query Language Flow

Deretter legger du til et navn for de valgte søkene og trykker OK .

Gode ​​fremgangsmåter for Power Query Language Flow

Etter å ha gruppert søkene dine, vil spørringsruten se slik ut.

Gode ​​fremgangsmåter for Power Query Language Flow

For alle staging-spørringene dine, sørg for å deaktivere belastningen ved å fjerne merket for Aktiver belastning.

Gode ​​fremgangsmåter for Power Query Language Flow

En annen ting å diskutere i denne opplæringen er språkflyten. Hvert av trinnene i Applied Steps-ruten transformerer en verdi som du kan se når du klikker på dem.

Gode ​​fremgangsmåter for Power Query Language Flow

De første dataene kom og startet i navigasjonstrinnet, og kolonner ble valgt. Deretter ble datatyper endret og en datoperiode ble satt. Kolonner ble også omdøpt.

Alle trinnene returnerer en tabelltypeverdi. Hvis du åpner Advanced Editor-vinduet, vil du se et let- uttrykk og en in -klausul. Mellom dem er det en liste over trinn eller variabelnavn med uttrykk tildelt dem.

Spørringen returnerer det som følger etter in- klausulen som refererer til det siste trinnet i variabellisten din. M- motoren vil deretter følge avhengighetskjeden tilbake fra in -klausulen for å eliminere alt som er unødvendig og for å presse transformasjoner tilbake til kilden hvis mulig.

Sammendrag av språkflyten for Power Query

Gode ​​fremgangsmåter for Power Query Language Flow

Hvis du ser på formelen, kan du se flyten av trinnene som er utført i spørringen. Du vil også se funksjonene som brukes av i hvert trinn.

Det første trinnet som ble gjort i spørringen var kolonnevalget. Når trinnet ble utført ved hjelp av brukergrensesnittet, ble funksjonen Table.SelectColumns kalt opp. Som den første parameteren tok den en tabell som refererte til variabelnavnet til forrige trinn. Deretter listet den opp alle de valgte kolonnenavnene.

Det andre trinnet transformerte kolonnetypene ved å kalle funksjonen Table.TransformColumnTypes . Den første parameteren kalles utgangen fra forrige trinn. Den listet deretter opp et sett med transformasjonslister.

Det tredje trinnet angir et datoperiodefilter ved å bruke Table.SelectRows -funksjonen. Det tok en tabelltypespørring som sitt første argument. I dette eksemplet refererte det til utdataene fra Change Type-trinnet.

Det siste trinnet ga nytt navn til kolonnene ved å bruke funksjonen Table.RenameColumns . Utdataene fra forrige trinn ble brukt som det første argumentet. Deretter listet den opp et sett med lister med nytt navn.

Alle funksjonene som brukes gjennom brukergrensesnittet starter med ordet Tabell . De tok alle en tabellverdi som første parameter og transformerte deretter denne verdien.

Selv om koden ser sekvensiell ut fordi hvert trinn refererer til det forrige trinnet, er sekvensen ikke nødvendig. Hvis du flytter et steg rundt, vil spørringen fortsatt kjøre fordi M - motoren alltid følger avhengighetskjeden.

Det er praktisk å ha brukergrensesnittet, men det vil alltid anta at du vil transformere resultatene fra forrige transformasjon. I de fleste tilfeller vil det sannsynligvis være sant, og i den store sjansen for at det ikke er det, må du manuelt oppdatere den refererte verdien i koden.




Konklusjon

Datatransformasjon er nødvendig for å holde dataene dine gruppert og organisert. Det gjør datautvikling raskere fordi du enkelt kan spore problemer i Power Query-språkflyten og endre endringer i rapporten.

Melissa


LuckyTemplates Financial Dashboard: Komplette tabelltilpasningstips

LuckyTemplates Financial Dashboard: Komplette tabelltilpasningstips

LuckyTemplates er et flott verktøy for finansiell rapportering. Her er en veiledning om hvordan du lager tilpassede tabeller for ditt LuckyTemplates økonomiske dashbord.

Gode ​​fremgangsmåter for Power Query Language Flow

Gode ​​fremgangsmåter for Power Query Language Flow

Denne opplæringen vil diskutere Power Query Language Flow og hvordan den kan bidra til å lage en jevn og effektiv datarapport.

LuckyTemplates egendefinerte ikoner | PBI visualiseringsteknikk

LuckyTemplates egendefinerte ikoner | PBI visualiseringsteknikk

Jeg vil diskutere en av mine favorittteknikker rundt LuckyTemplates egendefinerte ikoner, som bruker egendefinerte ikoner på en dynamisk måte i LuckyTemplates visuals.

Opprette LuckyTemplates-tabeller ved å bruke UNION & ROW-funksjonen

Opprette LuckyTemplates-tabeller ved å bruke UNION & ROW-funksjonen

I denne bloggen viser jeg deg hvordan du kan lage LuckyTemplates-tabeller ved å bruke en formel som kombinerer UNION-funksjonen og ROW-funksjonen.

On-Premises Data Gateway In Power Automate

On-Premises Data Gateway In Power Automate

Oppdag hvordan on-premises data gateway lar Power Automate få tilgang til skrivebordsapplikasjoner når brukeren er borte fra datamaskinen.

Oppdag unik innsikt ved å bruke LuckyTemplates TOPN-funksjon

Oppdag unik innsikt ved å bruke LuckyTemplates TOPN-funksjon

Denne bloggen inneholder LuckyTemplates TOPN DAX-funksjonen, som lar deg få unik innsikt fra dataene dine, og hjelper deg med å ta bedre markedsføringsbeslutninger.

Datamodellering i LuckyTemplates ved hjelp av støttetabeller

Datamodellering i LuckyTemplates ved hjelp av støttetabeller

Lær noen fantastiske analytiske teknikker som vi kan gjøre for datamodellering i LuckyTemplates ved å bruke DAX-støttetabeller.

Avansert DAX for LuckyTemplates: Implementering av rangeringslogikk på tvers av unik innsikt

Avansert DAX for LuckyTemplates: Implementering av rangeringslogikk på tvers av unik innsikt

Her dykker vi ned i LuckyTemplates Advanced DAX og implementerer rangeringslogikk for å få en helt unik innsikt. Jeg viser også frem målegrening i dette eksemplet.

LuckyTemplates What-If-parameterfunksjon

LuckyTemplates What-If-parameterfunksjon

Denne bloggen introduserer den nye funksjonen i LuckyTemplates, What-If-analyseparameteren. Du vil se hvordan det gjør alt raskt og enkelt for scenarioanalysen din.

Bruk LuckyTemplates Mål forgrening for å sjekke om marginene dine øker ettersom inntektene vokser

Bruk LuckyTemplates Mål forgrening for å sjekke om marginene dine øker ettersom inntektene vokser

Finn ut hvordan du kan finne ut om inntektsveksten din er god ved å sjekke om marginene dine økte ved å bruke LuckyTemplates som måler forgrening.