DAX-funksjoner i LuckyTemplates: Bruke iteratorer

Iterering av DAX-funksjoner i LuckyTemplates eller iteratorer er nøkkelbegreper å lære og forstå godt. Jeg laget flere veiledninger om hvordan og når du skal bruke disse funksjonene i DAX-formler. Jeg har imidlertid sett noen forvirringer med disse funksjonene i , så jeg tenkte at det ville være en god idé å diskutere noen av disse problemene som LuckyTemplates-medlemmer møter og vise deg løsningene. 

Etter hvert som du lærer mer og går dypere inn i DAX-formler, vil du finne deg selv å bruke iterasjonsfunksjoner oftere enn du tror. De er mer allsidige enn enkle aggregeringsfunksjoner , for eksempel  SUM  eller  AVERAGE , og jeg demonstrerer det i denne første. 

Innholdsfortegnelse

Bruk av AVERAGEX i stedet for SUM 

I dette foruminnlegget prøvde medlemmet å oppsummere sikkerhetsstatistikk fra observasjoner gjort av en person, som ble registrert med datoen. Observatørene kan legge inn en observasjon på samme dato, og de kan legge inn flere observasjoner hver dag. Han ønsket å bestemme gjennomsnittet over en periode, og dette var beregningene han laget: 

DAX-funksjoner i LuckyTemplates: Bruke iteratorer

Løsningen var ganske enkel for denne typen analyser. Jeg foreslo ham å bruke AVERAGEX i stedet for logikken han laget. Jeg anbefalte ham noen av veiledningene mine rundt iterasjonsfunksjoner, spesielt på AVERGEX.

Jeg delte også veiledningen for ham om hvordan man beregner summen av gjennomsnitt . Det viktige å lære her er å vite hva du vil iterere gjennom med iterasjonsfunksjonen din . Du må forstå.

Bruke SUMX med IF-funksjon

Et annet eksempelscenario, som viser at iterasjonsfunksjoner er nøkkelen å bruke, er dette . Medlemmet hadde en kolonne med 0 og 1, avhengig av spesifikke internkriterier. Han trengte å hente et beløp fra kolonne X hvis det er 0 og et beløp fra kolonne Y hvis det er 1. Han hadde problemer med å opprette rad for rad bekreftelseskontekst i LuckyTemplates. Dette var dataene han jobbet med:

DAX-funksjoner i LuckyTemplates: Bruke iteratorer

Og dette var beregningen hans i Excel:

HVIS(CellA1=1 ; Sant ; Usant)

I dette tilfellet kan og bør denne Excel-logikken han laget fullføres i et mål i LuckyTemplates. Det er her kraften til itererende funksjoner kommer inn. Dette er eksempelformelen jeg ga ham:

DAX-funksjoner i LuckyTemplates: Bruke iteratorer

Her bruker jeg SUMX med IF -funksjonen, men du kan også bruke FILTER med CALCUATE på lignende måte. Et annet eksempel på hvordan og når man skal bruke SUMX- og IF-funksjoner er dette , hvor medlemmet prøvde å lage en kombinert plan/faktisk prognose for resten av året. Slik ville han gjort det i Excel:

DAX-funksjoner i LuckyTemplates: Bruke iteratorer

Hans bekymring var at årssummen var feil. Formelen han laget antar at ExFactory har en verdi for året, tar den verdien i stedet for å beregne hver måned, og så summerer alle månedlige resultater.

Etter at jeg gjennomgikk dataene han laget i LuckyTemplates, fant jeg ut at problemet ikke bare var på formelen, men også på det faktum at medlemmet brukte beregnede kolonner i stedet for mål for sine beregninger. Mitt forslag, som jeg alltid nevner når jeg jobber med DAX, var at han skulle starte fra de enkleste tiltakene som dette:

DAX-funksjoner i LuckyTemplates: Bruke iteratorer

Fra dette kan han deretter bruke iterasjonsfunksjoner slik at han kan jobbe gjennom hver rad og kjøre litt logikk.

DAX-funksjoner i LuckyTemplates: Bruke iteratorer

DAX-funksjoner i LuckyTemplates: Bruke iteratorer

Itereringsfunksjoner lar deg iterere gjennom en tabell, enten en virtuell eller en fysisk tabell, og kjøre logikk på hver rad.

Når logikken er fullført ved hver rad, er den endelige beregningen fullført. Når du forstår dette, vil du finne det enkelt å inkludere iterasjonsfunksjoner i beregningene dine.

En annen viktig ting å merke seg er å holde ting enkelt , ikke bare med beregningene dine, men også med modellene dine . Dette vil gjøre ting enklere for deg å få resultatene du ønsker fra analysen ved hjelp av iterasjonsfunksjoner. Sjekk ut min for å lære mer om hvordan du organiserer modellene dine riktig og effektivt.

Itererende funksjoner og modellstrukturen

Jeg har møtt en rekke bekymringer reist i forumet med problemer hovedsakelig forårsaket av modeller som er for kompliserte. Her er en , der problemet bare kunne løses enkelt ved å bruke iterasjonsfunksjoner, men modellen som ble satt opp var feil i utgangspunktet.

Medlemmet ønsket å etablere kontroll over aktiverte kontoer, men har ingen salg, teller kontoene og kan identifisere kundenes navn.

DAX-funksjoner i LuckyTemplates: Bruke iteratorer

I dette scenariet bør det bare være en kombinasjon av CALCUATE- og FILTER-funksjonene, eller bruke iterasjonsfunksjoner, for eksempel SUMX, COUNTX og AVERAGEX. Å forstå iterasjonsfunksjoner kan hjelpe deg med å løse problemer som dette på radnivå. Men når jeg så på modellen, bekymret det generelle oppsettet meg.

DAX-funksjoner i LuckyTemplates: Bruke iteratorer

Det er noen relasjoner som ikke virker riktige, og oppslagstabellen var ikke nødvendig. Medlemmet måtte reorganisere modellen først for å få riktig formel til å fungere.




Konklusjon

Eksemplene jeg fremhevet i dette innlegget er spørsmål reist av medlemmer i LuckyTemplates-forumet. Dette er vanlige scenarier når du bruker DAX-funksjoner i LuckyTemplates, der beregninger har feilaktige resultater fordi funksjonene som brukes er feil. Formlene skal ha itererende funksjoner som brukes på riktig måte.

Dessuten kan datamodellen også bidra til spørsmålet om beregningene når det er sammenhenger i modellen som ikke fungerer. Dette skjer vanligvis når modellen er for komplisert og ikke godt satt opp. Etter at du har ordnet dette, kan du jobbe med formlene dine med riktig DAX-kombinasjon.

Som jeg alltid anbefaler, er det viktig å få en god forståelse av konseptene til DAX-funksjoner i LuckyTemplates, spesielt iteratorer. Jeg håper du kan lære av dette innlegget og implementere det i dine egne LuckyTemplates-rapporter.

Beste ønsker!

***** Lære Lucky Templates? *****







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.

LuckyTemplates Parameters Via Query Editor

LuckyTemplates Parameters Via Query Editor

Lær og forstå hvordan du kan lage og bruke LuckyTemplates Parameters som er en kraftig funksjon i spørringsredigereren.

Rundt stolpediagram – en visualisering for dashbordet ditt

Rundt stolpediagram – en visualisering for dashbordet ditt

Denne opplæringen vil diskutere hvordan du lager et rundt søylediagram ved hjelp av Charticulator. Du vil lære hvordan du designer dem for LuckyTemplates-rapporten.

PowerApps funksjoner og formler | En introduksjon

PowerApps funksjoner og formler | En introduksjon

Lær hvordan du bruker PowerApps-funksjoner og -formler for å forbedre funksjonaliteten og endre atferd i Power Apps-lerretsappen vår.

Pipe In R: Koblingsfunksjoner med Dplyr

Pipe In R: Koblingsfunksjoner med Dplyr

I denne opplæringen lærer du hvordan du kobler funksjoner sammen ved å bruke dplyr-røroperatøren i programmeringsspråket R.

RANKX Deep Dive: A LuckyTemplates DAX-funksjon

RANKX Deep Dive: A LuckyTemplates DAX-funksjon

RANKX fra LuckyTemplates lar deg returnere rangeringen til et spesifikt tall i hver tabellrad som utgjør en del av en liste med tall.