Home
» Power BI
»
Ret ukorrekte totaler ved hjælp af DAX-mål i LuckyTemplates
Ret ukorrekte totaler ved hjælp af DAX-mål i LuckyTemplates
At få totaler korrekte i LuckyTemplates-rapporter kan nogle gange være det mest frustrerende, når man bruger DAX- mål. Du kan sandsynligvis komme i visse situationer, hvor dine totaler for DAX-mål ikke stemmer overens, som du ønsker. Du kan se den fulde video af denne tutorial nederst på denne blog.
DAX-mål kan være baseret på standardaggregeringsfunktioner, såsom COUNT eller SUM . Disse DAX- formler giver dig mulighed for at udføre datamodellering, dataanalyse og bruge resultaterne til rapportering og beslutningstagning.
I denne blog vil vi diskutere en samlet logik vedrørende DAX-foranstaltninger . Denne bekymring blev rejst i. Hvis du vil gennemgå spørgsmålet og se det nøjagtige scenarie fra forummet, skal du blot klikke på det medfølgende link nedenfor.
Jeg vil vise dig teknikken, der blev brugt til at løse scenariet.
Du kan bestemt anvende denne teknik til forskellige scenarier, især når du opretter en ret kompleks DAX- logik eller når du forgrener flere mål. Dette vil også hjælpe dig med at løse dine totaler, der muligvis er beregnet forkert .
Her er et generisk eksempel, der på en eller anden måde er relateret til det diskuterede scenarie i forummet.
Nu ser vi på salgsresultatet i denne tabel. Desuden sammenligner jeg det med et andet resultat, som er Salget sidste år .
I dette eksempel forsøger vi at finde ud af minimumsresultatet for hver enkelt kunde baseret på den kontekst, der er valgt. Det kan være et hvilket som helst mål som MIN Total Sales og(i dette tilfælde vil vi bruge de generiske).
Mest sandsynligt ville du tro, at formlen fra billedet nedenfor vil give os de passende resultater.
Nå, lad os trække målingen til bordet og tjekke resultaterne.
Ser vi på resultaterne, kan vi sige, at beregningerne for hver række alle var nøjagtige.
Den har dog beregnet totalen forkert .
Den beregnede kun minimumsummen ved hjælp af MIN- funktionen for hver række inden for Total Sales og Sales LY -målene, når der ikke er nogen kontekst på hver beregning.
Desuden talte den ikke de særlige minimumskrav op på en unik måde og fik summen af alle disse unikke minimumsværdier via enhver kontekst, vi er i.
Analyse af de korrekte resultater for prøvescenariet
Lad mig nu vise dig de passende resultater for det forrige scenarie.
Du vil se på billedet, at det viser et meget anderledes resultat, da det åbenbart er meget mindre end alle de andre totaler.
Dette giver meget mere mening, fordi vi hovedsageligt tæller kun minimumsværdierne op for hver enkelt række i denne tabel . Så det betyder, at der vil være en meget mindre værdi for resultatet .
Den primære logik, som vi skal forstå her, er at evaluere hvert enkelt resultat ved hjælp af virtuelle tabeller .
Gentagelse gennem virtuelle tabeller giver dig mulighed for at sikre dig, at den logik, du implementerer, itererer gennem den korrekte kontekst for totalen versus enhver naturlig kontekst, der måtte opstå via valg foretaget på en rapportside .
Hvis du kan begynde at forstå, hvordan du inkorporerer virtuelle tabeller i dine DAX- funktioner, vil du hurtigt se mulighederne for at udvide din analyse yderligere.
Oprettelse af virtuelle tabeller inden for DAX-mål
Nu, for at løse det aktuelle scenarie, er den første ting, vi skal gøre, at oprette en virtuel tabel over hver enkelt kunde ved hjælp af SUMMARIZE- funktionen.
Funktionen SUMMARIZE returnerer en oversigtstabel for de anmodede totaler over et sæt grupper.
Derefter, inden for den særlige virtuelle tabel , som vi skal iterere igennem, vil de fremhævede kolonner fra billedet nedenfor blive genereret virtuelt.
Opsummering af MIN for hver række i den virtuelle tabel
Når vi kommer til evalueringsfasen, vil vi bruge en kaldet SUMX . Denne funktion returnerer summen af et udtryk, som evalueres for hver række i en tabel.
I vores tilfælde vil SUMX- funktionen opsummere MIN- resultatet for hver enkelt række i den virtuelle tabel, som vi har oprettet.
Og på den måde fik vi de rigtige resultater.
En anden cool ting ved dette er, at den virtuelle tabel også fungerer for hver enkelt række . Det betyder, at denne tabel kun vil være en række lang.
Dette skyldes, at dette filter kun vil blive anvendt virtuelt i formlen , og kunde-id'et i SUMMARIZE- funktionen vil kun være relevant for den kundekontekst, vi er i.
Og det er simpelthen sådan, du kan løse netop dette scenarie.
Konklusion
For at opsummere er nøglen til at forstå, hvordan totaler beregnes, at lære dybtgående, hvordan kontekst fungerer inde i LuckyTemplates.
Denne teknik er bestemt brugbar, fordi der er masser af situationer, hvor totalerne bare ikke stemmer overens med, hvad du tror, eller hvad de burde være. For eksempel kan du faktisk få en total, men du aner ikke, at den faktisk beregner forkert.
Det vigtigste, du har brug for, for at denne teknik skal fungere korrekt, er at forstå den virtuelle tabelmetodologi . Du skal effektivt integrere disse virtuelle tabeller i dine DAX- mål for at sikre, at de får de ønskede resultater.
Dette vil hjælpe dig med at løse ikke kun den, du arbejder på i øjeblikket, men også de andre fremtidige samlede problemer, som du kan støde på, når du kører beregninger i dine LuckyTemplates-modeller.
Der er ret meget at anvende og implementere i dit eget miljø med dette. Det er grunden til, at det er afgørende at indlejre disse begreber i dit sind.
For mere avancerede DAX-teknikker, du kan bruge i LuckyTemplates, tjek dette modul på LuckyTemplates Online –.