LuckyTemplates tilpasset sortering ved hjelp av DAX

Mange tror at vi ikke kan utføre tilpasset sortering ved hjelp av DAX , men det er ikke sant. DAX kan absolutt garantere sortering, og det er faktisk ganske enkelt å gjøre. I dagens blogg skal jeg vise deg hvordan du enkelt kan gjøre akkurat det. Du kan se hele videoen av denne opplæringen nederst på denne bloggen.

Innholdsfortegnelse

Vår datamodell

La oss starte med en enkel datamodell. Datatabellen vår har tre kampanjer, analysert ROI og kostnad. 

LuckyTemplates tilpasset sortering ved hjelp av DAX

Som du kan se i tabellen, har de de samme kostnadene, men avkastningen deres er forskjellig. Konseptet her er å vite hvilke kampanjer vi bør kjøre avhengig av deres ROI for et gitt budsjett. 

LuckyTemplates tilpasset sortering: Bruk av While-løkken

La oss starte med et mål med en enkel while-løkke. 

LuckyTemplates tilpasset sortering ved hjelp av DAX

Vi setter budsjettet vårt til 20 000 og lagrer det i Budsjett-variabelen ved å bruke _Budget.

LuckyTemplates tilpasset sortering ved hjelp av DAX

Og så bruker vi while-løkken ved å lage en tabellvariabel VAR_Table

LuckyTemplates tilpasset sortering ved hjelp av DAX

Vi bruker dasom går mot vår basistabell 4 og legger til en løpende totalkolonne ved å bruke "_RT" .

LuckyTemplates tilpasset sortering ved hjelp av DAX

Deretter henter vi [Analyzed ROI] i vår nåværende rad lagret som VAR_ROI . Deretter tar vi budsjettet vårt . Fra den trekker vi fra, filtrer tabell 4 for den analyserte ROI som er større enn eller lik ROI som vi henter for vår nåværende rad, og ta [Cost]

LuckyTemplates tilpasset sortering ved hjelp av DAX

Disse linjene vil ta den høyeste avkastningen i den første raden, deretter den nest høyeste for den neste raden, og så videre. Så i hovedsak vil vi ha en kolonne som er en løpende total som teller ned til null i negative.

Så går vi ut av while-løkken. Vi lager FinalTable-variabelen vår med VAR_FinalTable , hvor vi ganske enkelt filtrerer tabellvariabelen vår for den løpende totalen som er større enn eller lik null. Vi bruker dette filteret fordi alt under null betyr at vi har blitt negative og at vi er utenfor budsjettet.

LuckyTemplates tilpasset sortering ved hjelp av DAX

Da kan vi bruke for disse verdiene. Vi tar med kolonnene våre – Kampanjer, analysert avkastning og kostnad – og legger til .

LuckyTemplates tilpasset sortering ved hjelp av DAX

Vi kan vise denne kortvisualen i utvalgsruten og se at vi har Instagram og SEM, som er våre to høyeste avkastninger.

LuckyTemplates tilpasset sortering ved hjelp av DAX

La oss sjekke den opprinnelige tabellen vår for å sammenligne resultatene.

LuckyTemplates tilpasset sortering ved hjelp av DAX

Vi kan se at PPC faktisk har en lavere ROI enn SEM og Instagram. 

Men som du kanskje har lagt merke til, kom ikke resultatet vårt tilbake i riktig rekkefølge, med Instagrams 8.1 som vises først før SEMs 8.15. 

Bruk av LuckyTemplates sorteringsrekkefølge

Men hva om vi vil at Instagram skal returneres først fordi det har den høyeste ROI og SEM som skal returneres som nummer to? I utgangspunktet ønsker vi å garantere sorteringsrekkefølge. Dette blir litt vanskelig, men det er ikke vanskelig å forstå hvordan man gjør det.

Slik skal funksjonen vår se ut, med den nederste delen som er den samme som while-løkken vi hadde tidligere.

LuckyTemplates tilpasset sortering ved hjelp av DAX

Og for å garantere sorteringsrekkefølge må vi gjøre litt ekstra arbeid. 

Igjen starter vi med vårt VAR_Budget som vi setter til 20000. Deretter lager vi vår Count-variabel ved å bruke VAR_Count I og bruker på tabell 4. 

LuckyTemplates tilpasset sortering ved hjelp av DAX

I neste linje vil vi bruke CONCATENATEX -funksjonen til å sette sammen kolonnene Kampanjer, Analysert ROI og Kostnad. Du kan bruke hva som helst som skilletegn så lenge det ikke er i dataene dine, så i dette tilfellet, la oss bare bruke stjerner. 

Deretter bruker vi et rørtegn (|) i den neste parameteren etter kostnadskolonnen. Vi bruker også VAR_Ordered for å sortere etter den analyserte avkastningen i synkende rekkefølge, noe som betyr at den høyeste avkastningen vil være øverst.

LuckyTemplates tilpasset sortering ved hjelp av DAX

Hvis vi ser på kommentarlinjen, står det at koden vil gi oss resultatet i formatet SEM*8.158*10000 | Instagram*8,1*10000 . Det vil også komme ut i rekkefølgen av høyeste ROI til laveste ROI. 

LuckyTemplates Egendefinert sortering: Brukes for Loop

Dette eksemplet er interessant fordi vi får en , while-løkke, og alle slags kule funksjoner. Denne gangen bruker vi for-løkken

Tabell 1

For dette eksemplet er Tabell1 vår for-løkke, og det vi gjør er ADDCOLUMNS tilsom går fra en til vår telling med en skrevet som (1,_Count,1).

I vår rad bruker vi dafordi vi bruker pipetegnet for å skille radene i tabellen. Ved å bruke PATHITEM griper vi deretter banen fra den Ordnede variabelen, som er strengen vår. 

Vi bruker også Value , som er vår automatiske kolonne som er opprettet med GENERATESERIES , eller våre kalendere 1, 2, 3, 4, 5, til vi har brukt opp antallet rader vi har i tabellen vår. Deretter returnerer vi den tilbake som tekst

LuckyTemplates tilpasset sortering ved hjelp av DAX

Det vi har nå er en garantert sorteringsrekkefølge for bordet vårt, som går fra høyeste ROI til laveste. Så her er din DAX for å garantere sorteringsrekkefølge. 

Tabell 2

Nå, for å få dette i et brukbart format, må vi gjøre tabell 2 der vi skal plukke ut de individuelle kolonnene fra strengen vår som vi har.

La oss bruke en annen ADDCOLUMNS for å legge til Tabell1, vår for-løkke. For Kampanjer oppretter du en kampanjekolonne og brukerå erstatte stjerner med rør. Deretter bruker vi PATHITEM på RowPath for å ta det første elementet og returnere det som TEKST.

LuckyTemplates tilpasset sortering ved hjelp av DAX

I kolonnen Analysert ROI vil vi i utgangspunktet gjøre det samme. ERSTATT stjerne med rør. Ta så tak i det andre elementet i vår vei og returner det som TEKST. Vi gjør dette fordi PATHITEM av en eller annen grunn lar oss returnere som heltall eller tekst, men ikke desimaltall.

Det er litt rart, men vi kan løse det fordi alt vi trenger å gjøre er å legge til null, og DAX vil automatisk konvertere TEXT-strengen til en numerisk verdi. 

LuckyTemplates tilpasset sortering ved hjelp av DAX

Igjen, vi gjør det samme for kostnadskolonnen . Vi bruker SUBSTITUTE og PATHITEM for å hente det tredje elementet. Så, for å returnere et tall, legger vi til null igjen fordi det er et helt tall i dette tilfellet.

LuckyTemplates tilpasset sortering ved hjelp av DAX

Resten av koden vår er while-løkken som vi diskuterte tidligere. Det vi får nå er vår garanterte sorteringsrekkefølge fra høyeste til laveste kampanje. 

LuckyTemplates tilpasset sortering ved hjelp av DAX

Vår SEM var vår høyest rangerte ROI for kampanjen vår, og Instagram er den andre. 




Konklusjon

Ved å bruke mens og for looper, brukte vi heldigvis tilpasset sortering av LuckyTemplates i datamodellen vår basert på deres ROI-er – et bevis på at DAX definitivt kan garantere sorteringsrekkefølge. 

Det er viktig å sikre at dataene dine er riktig sortert i DAX for å analysere og visualisere dem nøyaktig. Du kan bruke det du lærte i denne opplæringen for å sortere dataene dine på riktig måte for neste rapport.

Beste ønsker,

Greg Deckler

Leave a Comment

DAX Studio EVALUATE Nøkkelord: Grunnleggende eksempler

DAX Studio EVALUATE Nøkkelord: Grunnleggende eksempler

Lær å bruke DAX Studio EVALUATE nøkkelordet med grunnleggende eksempler og få en bedre forståelse av hvordan dette kan hjelpe deg med databehandling.

Opprette en datotabell i LuckyTemplates

Opprette en datotabell i LuckyTemplates

Finn ut hvorfor det er viktig å ha en dedikert datotabell i LuckyTemplates, og lær den raskeste og mest effektive måten å gjøre det på.

LuckyTemplates Mobile Reporting Tips og teknikker

LuckyTemplates Mobile Reporting Tips og teknikker

Denne korte opplæringen fremhever LuckyTemplates mobilrapporteringsfunksjon. Jeg skal vise deg hvordan du kan utvikle rapporter effektivt for mobil.

Profesjonelle tjenesteanalyserapporter i LuckyTemplates

Profesjonelle tjenesteanalyserapporter i LuckyTemplates

I denne LuckyTemplates-utstillingen vil vi gå gjennom rapporter som viser profesjonell tjenesteanalyse fra et firma som har flere kontrakter og kundeengasjementer.

Microsoft Power Platform-oppdateringer | Microsoft Ignite 2021

Microsoft Power Platform-oppdateringer | Microsoft Ignite 2021

Gå gjennom de viktigste oppdateringene for Power Apps og Power Automate og deres fordeler og implikasjoner for Microsoft Power Platform.

Vanlige SQL-funksjoner: en oversikt

Vanlige SQL-funksjoner: en oversikt

Oppdag noen vanlige SQL-funksjoner som vi kan bruke som streng, dato og noen avanserte funksjoner for å behandle eller manipulere data.

LuckyTemplates Template Creation: Guide og tips

LuckyTemplates Template Creation: Guide og tips

I denne opplæringen lærer du hvordan du lager din perfekte LuckyTemplates-mal som er konfigurert til dine behov og preferanser.

Feltparametre og små multipler i LuckyTemplates

Feltparametre og små multipler i LuckyTemplates

I denne bloggen vil vi demonstrere hvordan du legger feltparametere sammen med små multipler for å skape utrolig nyttig innsikt og grafikk.

LuckyTemplates-rangering og tilpasset gruppering

LuckyTemplates-rangering og tilpasset gruppering

I denne bloggen vil du lære hvordan du bruker LuckyTemplates rangering og tilpassede grupperingsfunksjoner for å segmentere et eksempeldata og rangere det i henhold til kriterier.

Viser kun kumulativ total opp til en bestemt dato i LuckyTemplates

Viser kun kumulativ total opp til en bestemt dato i LuckyTemplates

I denne opplæringen skal jeg dekke en spesifikk teknikk rundt hvordan du viser kumulativ total kun opp til en bestemt dato i grafikken i LuckyTemplates.