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.
I dag ønsket jeg å dekke en unik teknikk rundt kumulative totaler basert på månedlige gjennomsnittlige resultater i LuckyTemplates . Du kan se hele videoen av denne opplæringen nederst på denne bloggen.
For å angi datoperioden for beregningen av månedlige gjennomsnittsresultater, bruker vi en datosnitter.
En LuckyTemplates- slicer er et alternativ for filtrering som begrenser delen av datasettet som vises i de andre visualiseringene av en rapport. EN eller filter brukes ganske enkelt for å begrense relative datoperioder i LuckyTemplates.
Den kumulative summen , derimot, brukes til å vise den totale summen av data etter hvert som den vokser med tiden eller en hvilken som helst annen serie eller progresjon.
Vanligvis når vi vurderer, vi analyserer dem over en bestemt dato, eller over måneder og år . I denne artikkelen skal vi beregne kumulative totaler over bare månedene.
Det interessante med denne spesielle teknikken er at når du har en kontekst på bare måneden , må du ta hensyn til de forskjellige årene som velges. Dette kan skje via et LuckyTemplates-datosnittvalg eller et sidenivåfilter.
Dette spesielle eksemplet stammer fra et veldig interessant emne på . Sjekk denne hvis du vil anmelde mer.
Innholdsfortegnelse
Evaluering av problemet
Noen ønsket å vise det kumulative salget basert på månedsnavnet , i stedet for etter måned og år .
Nå er problemet med dette hvis datovalget du har til slutt går over et helt år.
Så vi må analysere hvordan vi mest sannsynlig bare kan fortsette å få en kumulativ total, akkurat som det var et valgt bestemt år.
For eksempel, hvis du har januar til september neste år i datotabellen din, vil du sannsynligvis ha totalt 20 måneder der inne. I dette tilfellet vil ikke standardmønsteret fungere, så vi må revidere det.
Dette er definitivt et interessant scenario og en veldig god læringsmulighet rundt avansert DAX for alle.
Først, la oss ta en rask titt på hvordan standard kumulativ totalmønster faktisk fungerer.
Gjennomgang av det kumulative totale mønsteret
I denne prøven skal vi se på en veldig generisk Salg .
Denne formelen er satt til å beregne salg innenfor området som er valgt . ALLSELECTED - funksjonen her viser primært verdiene basert på hvilken datoperiode som er valgt i denne bestemte rapporten.
Og som du kan se her i denne LuckyTemplates-datosnitteren , er vi for øyeblikket mellom 2. februar og 20. september .
Nå, i denne gjeldende konteksttabellen, kan vi bekrefte at formelen for det kumulative salget fungerer helt fint. Dette er fordi den fortsatt beregner akkumuleringen av totalt salg fra januar til september.
Konflikt i bruk av kumulativt totalt mønster for månedlige gjennomsnittlige resultater
Selv om formelen for kumulativ total for øyeblikket fungerer bra, kan det oppstå problemer når du utleder beregningen basert på en datoutsnitter .
Som vist på bildet, utvidet jeg sakte datoperioden ytterligere og dro den ut i neste år.
Denne formelen akkumulerer det månedlige totale salget , men den begynner også å bringe akkumuleringen inn i de nye månedene. Så dette resulterer i en oddeverdi for januar , som egentlig bare er en fortsettelse av alle de pågående månedene .
Med andre ord, det er riktig kalkulerende, men det gir oss faktisk ikke det resultatet vi spesielt ønsker.
Det den for øyeblikket gjør her er at den starter fra verdien for januar går hele veien til desember ; og deretter hopper tilbake til januar igjen, akkumulert fra desember , og så videre.
Hvis jeg bare drar datoen ut igjen, vil du se at den kumulative salgsverdien strekker seg enda lavere etter hvert.
Og så, når du faktisk drar det ganske langt ut, vil du legge merke til at det kumulative salget fra månedene januar til mai ble 23 millioner , som i utgangspunktet er totalen. Det går rett og slett i en syklus for hver eneste måned i hvert eneste år.
Det vi faktisk ønsker her er å få en oppdatert kumulativ total basert på månedlige gjennomsnittlige resultater ; der det skal starte med det totale salget for januar , og deretter samle seg derfra.
For å løse dette kreves det en teknikk som er litt annerledes enn du kanskje tror. Vi må også sørge for at totalsummene er korrekte, og at de dynamisk justerer seg for ulike valg i datoutsnittet , som kan komme fra brukerne.
Den kumulative månedlige salgskolonnen
Jeg skal bringe inn resultatet av formelen min for akkurat dette problemet og vise hvorfor det faktisk fungerer.
Tilsynelatende vil du se her at det alltid samler seg det månedlige totale salget .
Men sjekk ut hva som skjer når jeg prøver å utvide dette.
Det akkumuleres alltid fra januar . Det gjør ikke den rare beregningen som det kumulative salgsmønsteret gjør.
Kolonnen Akkumulert månedlig salg gir tydeligvis et mer logisk resultat.
På den annen side gir det kumulative salgsresultatet ikke så mye mening fra et visualiseringssynspunkt.
Det jeg gjorde i løsningen min var at jeg gjenskapte et nytt mønster som ga oss svaret vi trengte for dette spesielle scenariet.
La oss nå diskutere hvordan vi klarte å finne frem til løsningen.
Opprette datoperioden
Å lage datointervallet er det første vi trenger for å etablere formelen.
For å lage dette initialiserte vi en minimumsdato , som ble representert av MinDate-variabelen; og en maksimumsdato , som ble representert av MaxDate-variabelen . Deretter gjorde vi beregningen for hver variabel ved å bruke ALLSELECTED, MIN og .
ALLSELECTED - funksjonen henter konteksten som representerer alle rader og kolonner i spørringen , samtidig som den beholder eksplisitte filtre og andre kontekster enn rad- og kolonnefiltre . Denne funksjonen kan brukes til å få visuelle totaler i spørringer.
I mellomtiden returnerer den minste verdien i en kolonne, eller mellom to skalaruttrykk og MAX -funksjonen returnerer den største verdien.
Etter å ha initialisert minimums- og maksimumsdatoen, var vi i stand til å opprette datoperioden på en litt annen måte enn det vi gjorde i det kumulative totalmønsteret .
Jeg trengte å gjenskape denne delen av tabellen der jeg hadde månedsnavnet og det totale salget. Dette er fordi vi bare ønsket å beregne det innenfor denne bestemte datoperioden.
Så ved å bruke SUMMARIZE- funksjonen kunne jeg begrense datointervallet .
Legger til kolonnene månedsnavn og månedsnummer
Som du kan se, har vi inkludert Månedsnavn- kolonnen fra Datoer- tabellen, og Salg -kolonnen som i utgangspunktet er Total Sales .
Nå er den første delen av formelen ganske forskjellig fra det kumulative salgsmønsteret .
Dessuten har vi lagt til MonthNumber til det logiske mønsteret. Dette ble hentet fra Datoer-tabellen . Dette vil fungere som en virtuell eller imaginær kolonne som vil sette en verdi fra 1 ned til 12 for månedene januar til desember .
Fra verdiene i MonthNumber- kolonnen var jeg i stand til å beregne den kumulative totalen basert på antall måneder.
Beregning av den kumulative totalen basert på antall måneder
For å være mer spesifikk, itererer de påfølgende delene av formelen gjennom hver enkelt rad i den angitte tabellen.
Deretter vil MonthNumber- kolonnen bli evaluert hvis den er mindre enn eller lik den maksimale måneden i året .
Denne delen beregner hva gjeldende månedsnummer er.
Hvis vi for eksempel er i mai måned , vil verdien av månedsnummeret være 5 . Deretter går dette bestemte logiske mønsteret i iterasjonen gjennom denne tabellen for hver enkelt rad .
På det tidspunktet vil den evaluere om det er noen av tallene som er mindre enn eller lik 5 . Hvis det er det, vil den inkludere de i beregningen og opprettholde den kolonnen fra tabellen.
Til slutt teller vi opp mengden av salg .
Og det er slik vi kommer til 11. rad her som er november .
Denne delen evaluerte november som 11 .
Vi itererte gjennom hele tabellen og evaluerte om den 11. i måneden er mindre enn eller lik gjeldende måned i konteksten, som er 11 .
Deretter vil vi gå og telle opp Salgene , som blir representert av denne spesielle kolonnen her inne i .
Konklusjon
I min foreslåtte løsning brukte jeg en kombinasjon av DAX-formler inkludert SUMX og SUMMARIZE . Men det du også må gjøre er å sørge for at du pakker disse spesielle funksjonene med en FILTER-setning.
Denne filtersetningen vil gjøre deg i stand til å få den riktige kumulative totalen basert på en dynamisk datologikk.
Det er litt å lære i denne spesielle opplæringen, men det er virkelig et interessant innhold. Forhåpentligvis kan du implementere noen av disse teknikkene i dine egne modeller.
Når du lærer å kombinere mye sammen inne i LuckyTemplates , blir det absolutt mulig å løse disse unike scenariene.
Lykke til med å dykke inn i denne.
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.
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å.
Denne korte opplæringen fremhever LuckyTemplates mobilrapporteringsfunksjon. Jeg skal vise deg hvordan du kan utvikle rapporter effektivt for mobil.
I denne LuckyTemplates-utstillingen vil vi gå gjennom rapporter som viser profesjonell tjenesteanalyse fra et firma som har flere kontrakter og kundeengasjementer.
Gå gjennom de viktigste oppdateringene for Power Apps og Power Automate og deres fordeler og implikasjoner for Microsoft Power Platform.
Oppdag noen vanlige SQL-funksjoner som vi kan bruke som streng, dato og noen avanserte funksjoner for å behandle eller manipulere data.
I denne opplæringen lærer du hvordan du lager din perfekte LuckyTemplates-mal som er konfigurert til dine behov og preferanser.
I denne bloggen vil vi demonstrere hvordan du legger feltparametere sammen med små multipler for å skape utrolig nyttig innsikt og grafikk.
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.
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.