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.
Jeg har sett en del forvirring med iterasjonsfunksjoner i DAX hver gang jeg jobber med LuckyTemplates-medlemmer i forumet. Så vi vil gjøre en gjennomgang av hva som kan oppnås med disse funksjonene og hvorfor du bør bruke dem. Du kan se hele videoen av denne opplæringen nederst på denne bloggen.
Etter hvert som du kommer mer inn i DAX- formler, vil du bruke disse iterasjonsfunksjonene mye mer enn du tror. De er mye mer allsidige enn enkle aggregeringsfunksjoner som SUM eller AVERAGE .
Jeg har noen eksempler her, og jeg ønsker å jobbe gjennom logikken i hvert av disse eksemplene slik at man kan få en veldig god forståelse av hva som faktisk skjer når logikk kjøres via disse formlene.
Det viktigste med å iterere funksjoner er at de itererer gjennom noe.
Innholdsfortegnelse
Enkel iterasjon ved hjelp av SUMX
I dette tilfellet vil jeg oppsummere noe, men jeg vil iterere gjennom hver eneste rad i denne salgstabellen.
Og så på hver eneste rad vil jeg kjøre denne spesifikke logikken her.
La oss raskt hoppe til vår veldig enkle salgstabell, hvor jeg vil kjøre litt logikk på hver eneste rad. Og så vil jeg gange Mengde med Pris.
Prisen finnes ikke i denne tabellen. Og for denne modellen er den faktisk i produkttabellen.
Det neste jeg må gjøre er å komme tilbake til produktbordet mitt, og det kan jeg gjøre med RELATED . Når vi beregner antall ganger den aktuelle prisen, gjør vi dette for hver enkelt rad. Dette er nøyaktig hva som skjer inne i denne formelen.
Dette er nøkkelbegrepene å huske når vi begynner å gjøre mer avanserte ting.
En alternativ tilnærming til å få salg ved å bruke SUMX
I dette eksemplet har jeggå gjennom salgstabellen igjen. Så vi kjører den logikken i hver enkelt rad og beregner kvantiteten ganger prisen på hver enkelt rad og aggregerer den så snart all iterasjonen er fullført.
Du vil se her at dette resultatet er nøyaktig det samme som resultatene i det første eksemplet (SUMX Tutorial 2) eller Total Sales.
Du kan plassere en hel rekke forskjellige ting her – det kan være et mål og du kan forgrene deg med en itererende funksjon. Du trenger ikke å referere til spesifikke kolonner for å faktisk få beregningene riktig.
Som du kan se her, er alt jeg har gjort å plassere et mål (Totalt salg) her og jeg får nøyaktig det samme resultatet.
SUMX og logiske funksjoner
Jeg bruker SUMX her, men det er også relevant for, MINX og MAXX . De er alle veldig like ting.
En annen viktig ting å huske med disse itererende funksjonene er at de kjører logikk på hver eneste rad, og det lagrer resultatet i minnet.
Når alle disse verdiene er lagret i minnet, er den overordnede beregningen gjort – som en SUM eller et GJENNOMSNITT .
Tilbake til vårt eksempel kan du se her at beløpet i denne kolonnen er litt mindre enn de foregående kolonnene.
Med SUMX iterating-funksjonen ønsker jeg å iterere gjennom hver enkelt rad i Sales-tabellen. Og i hver eneste rad vil jeg beregne om det bestemte salget er større enn $2000. Hvis det er det, vil jeg beregne det totale salget for den raden. Men hvis totalsummen av salget var mindre enn $2000, vil jeg returnere null. Så jeg vil bare beregne salget med høyere verdi.
Noen vil foreslå at jeg bare kan legge logikken i en beregnet kolonne. Men vi ønsker ikke å gjøre det fordi det er en mye bedre måte å kjøre denne logikken inne i DAX i stedet for å plassere den fysisk i en kolonne.
Iterering gjennom tabeller
Det er her iterasjonsfunksjoner er virkelig fantastiske. Ikke bare kan du iterere gjennom en fysisk tabell som vi gjorde før, men du kan også iterere gjennom en annen virtuell tabell som du legger inn som en parameter.
Vi kommer til å tenke at hvert eneste resultat her har en spesifikk kontekst. I dette spesielle tilfellet har vi kundekonteksten.
I denne sammenhengen ønsker jeg å iterere gjennom hvert enkelt sted og vil se om en bestemt kunde har nådd salg over $5000.
Hvis det gjør det, vil jeg beregne det totale salget. Men hvis den ikke gjør det, vil jeg at den skal returnere null.
Så i dette spesielle tilfellet beregner jeg de verdifulle stedene som denne kunden kjøper på og det totale salget de gjør på disse stedene.
Hvagjør her er det å lage en virtuell tabell. Så SUMX jobber ikke engang med noe fysisk her. Den jobber faktisk over noe som er helt virtuelt.
Enkel iterasjon ved hjelp av MINX
Dette ligner på de tidligere eksemplene, men i stedet for SUMX , kommer vi til å kjøre en annen type aggregering når vi itererer gjennom hver enkelt rad.
I dette spesielle tilfellet skriver vi gjennom hvert enkelt sted for hver kunde og regner ut det totale salget for hvert av disse stedene.
Da ønsker vi å returnere minimumsbeløpet for stedet der de kjøpte.
Enkel iterasjon med MAXX
Jeg gjør også en lignende ting her bare for å vise deg allsidigheten til iterasjonsfunksjoner. Jeg går gjennom hvert enkelt sted og ser på salget deres, men returnerer deretter maksimalt av disse lokasjonssalgene, og det er grunnen til at vi ser høyere tall her.
Konklusjon
Det viktigste jeg ønsket å berøre i denne artikkelen er utvalget av alternativer du har inne i en iterasjonsfunksjon kontra en enkel sum eller et gjennomsnitt.
Når du begynner å grave i mer komplekse beregninger, vil du se hvor viktige disse funksjonene er for å returnere verdier på kontekstnivå.
Det er så mye allsidighet og så mange måter at du kan kjøre disse beregningene ved å bruke en enkel formel hvis du bare vet hvordan du manipulerer parametrene.
Hvis du likte å lære om disse iterasjonsfunksjonene , kan du bla gjennom disse koblingene for å få mer informasjon om dette emnet:
Nøkkelkonsepter for gjentakelse av funksjoner i LuckyTemplates
Itererende logikk gjennom virtuelle tabeller – Avanserte DAX-konsepter i LuckyTemplates
Nyt å jobbe gjennom denne.
Jeg vil diskutere en av mine favorittteknikker rundt LuckyTemplates egendefinerte ikoner, som bruker egendefinerte ikoner på en dynamisk måte i LuckyTemplates visuals.
I denne bloggen viser jeg deg hvordan du kan lage LuckyTemplates-tabeller ved å bruke en formel som kombinerer UNION-funksjonen og ROW-funksjonen.
Oppdag hvordan on-premises data gateway lar Power Automate få tilgang til skrivebordsapplikasjoner når brukeren er borte fra datamaskinen.
Denne bloggen inneholder LuckyTemplates TOPN DAX-funksjonen, som lar deg få unik innsikt fra dataene dine, og hjelper deg med å ta bedre markedsføringsbeslutninger.
Lær noen fantastiske analytiske teknikker som vi kan gjøre for datamodellering i LuckyTemplates ved å bruke DAX-støttetabeller.
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.
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.
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.
Lær og forstå hvordan du kan lage og bruke LuckyTemplates Parameters som er en kraftig funksjon i spørringsredigereren.
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.