Egendefinert tema i LuckyTemplates
Sjekk ut egendefinerte temaer og lær å lage en egendefinert JSON-fil slik at du kan kontrollere egendefinerte funksjoner på hver visual i LuckyTemplates.
Å lage en LuckyTemplates-feriekalender er avgjørende for mange tidsintelligensberegninger. I denne opplæringen skal jeg vise deg hvordan du beregner spesifikke feriedatoer ved hjelp av DAX-mål. Du kan se hele videoen av denne opplæringen nederst på denne bloggen.
Dette eksemplet kom fra en avinitiativ kalt Ukens problem, der vi hver måned tar et DAX- eller Power Query-problem i den virkelige verden og bryter det ned i detalj.
Jeg brukte en teknikk kalt Rubber Duck Debugging. Det brukes vanligvis til feilsøking, men jeg finner det også veldig verdifullt for å komme opp med det innledende rammeverket som du skal bruke for å løse et komplekst problem som i LuckyTemplates.
Det er i grunnen bare å bruke en gummiand eller en person du snakker med og si løsningen du ser for deg høyt og utvikle en plan for hvordan du skal angripe problemet.
Bare det å uttale seg som ofte hjelper deg å jobbe gjennom problemet. I noen tilfeller i en feilsøkingssituasjon får det deg til å innse hva du gjør, om det er fornuftig, og hjelper deg med å finne en måte å fikse det på ved å løse problemet.
Nedenfor er det virkelige DAX-problemet for denne spesielle utfordringen. Vi har et bord her med 10 helligdager med måned og dag. Noen av dagene er spesifikke dager og noen av dem er relative. Vi må komme opp med feriedatoen og Feiret på-tiltakene.
For å gjøre det, må vi analysere Dag-feltet i to komponenter. Den første analysen er forekomsten (tredje, siste, første, andre) og den andre analysen er dagen (mandag, torsdag). Dette er to viktige opplysninger som vi må skille fra hverandre.
Innholdsfortegnelse
Beregner spesifikke datoer i LuckyTemplates feriekalender
Vanligvis ville jeg gjort dette i Power Query bare gjennom en delt av skilletegn, men siden vi gjør det med DAX, må vi gjøre det på en annen måte. (Merk at vi ikke har lov til å bruke Power Query i denne utfordringen.)
Vi må beregne minimums- og maksimumsdatoene for det angitte året, måneden og dagsnavnet. I dette tilfellet kan vi for eksempel si for 2027, januar og tredje mandag. Når vi har fått den minste dagen for en gitt måned, kan vi legge til syv dager for å komme til den andre mandagen, 14 dager for å komme til den tredje mandagen og 21 dager for å komme til den fjerde mandagen.
En annen teknikk som jeg vil dele med dere knyttet til denne utfordringen er det jeg kaller Building in Parts når jeg lager et mål. Jeg finner dette veldig nyttig i et komplekst mål der hvis du har mange variabler, har du mange komponenter å bygge.
Det jeg alltid gjør er at jeg har en resultatvariabel ( VAR-resultat ) på slutten og det siste utsagnet mitt som bare er Return Result . Dette gjør det veldig enkelt å gå tilbake og teste variablene jeg har bygget. Jeg kan gå gjennom og spore og løse det i deler.
Den siste teknikken jeg vil dele med deg er det jeg kaller Søking etter ukjente funksjoner. Hvis jeg for eksempel ikke vet hvilken funksjon jeg skal bruke for denne LuckyTemplates feriekalenderutfordringen, går jeg til fanen Eksterne verktøy og går til SQLBI DAX-veiledningen .
Den har en veldig fin funksjon her kalt Groups (på venstre side), hvor funksjonene er gruppert etter type. Og så, hvis jeg tenker på å analysere en tekststreng, for eksempel, kan jeg søke etter tekstfunksjoner .
Den gir alle tekstfunksjonene som DAX har. Dette er en fin måte å raskt finnedu trenger for et mål.
DAX-mål for LuckyTemplates-feriekalenderen
For målet for feriedato opprettet jeg denne serien med s , og hentet datoene fra skjæremaskinen, feriemåneden, månedsnummeret og dagen fra datotabellen.
Deretter har jeg lengden fra den valgte dagen ved å bruke lengden () funksjon. I dette tilfellet returnerte den tekst, så jeg måtte pakke den innfor å endre teksten til en numerisk verdi.
Og så brukte jegfunksjon for posisjonen til mellomrommet og pakke det VALUE, men sier, søk etter plass innenfor den valgte dagen, start på posisjon én og returner null hvis jeg ikke finner den strengen der inne.
CharsBeforeSpace (tegn før space ) er bare SpacePosition. Antallet CharsAfterSpace (tegn etter mellomrom) er bare lengden ( SelDayLen ) på strengen minus posisjonen til mellomrommet. Fra det kan vi gjøre FirstParse og SecondParse .
På dette tidspunktet har vi nå to variabler, en som representerer forekomsten og en som representerer dagen.
Og så har vi en grunnleggende ( Calc1st ) hvor vi tar filteret fra Datoer-tabellen. Deretter bruker vi filtrene for det valgte året fra sliceren, månedsnavnet og deretter ukedagen fra den andre analysen vi gjorde.
Tilsvarende gjør vi det samme for den siste beregningen ( VAR CalcLast ).
Når vi har alt det, går det til en uttalelse, og den siste delen er RETURN-resultatet.
Til slutt vil jeg lede deg gjennom Celebrated On- målet som en tilleggsbonus fra utfordringen. Dette er bare en enkelhvor jeg tok feriedatoen som vi beregnet i forrige mål, gikk til Datoer-tabellen og slo opp ukedagens navn. Og så gjorde jeg bare en SWITCH- erklæring der vi tok resultatet av DayLookup. Og til slutt avslutter jeg det med en RETURN DateAdjust .
Konklusjon
Denne LuckyTemplates Holiday Calendar-utfordringen er, som jeg nevnte, et reell problem. Løsningen jeg kom opp med er ganske kompleks, men veldig effektiv når det gjelder å beregne de spesifikke feriedatoene.
Jeg håper du har lært mye av denne opplæringen. Sjekk ut hele videoopplæringen for en mer detaljert forklaring av DAX-tiltakene.
Jubel!
Sjekk ut egendefinerte temaer og lær å lage en egendefinert JSON-fil slik at du kan kontrollere egendefinerte funksjoner på hver visual i LuckyTemplates.
Denne opplæringen vil gjennomgå hvordan du bruker TOPN som en virtuell rangeringsfunksjon for å generere interessant innsikt basert på en rangeringslogikk i LuckyTemplates.
I denne opplæringen viser jeg deg hvordan du beregner satsformeldager innen en måned eller måneder i et sykehusscenario ved å bruke DAX i LuckyTemplates.
Lær hvordan du lager dynamiske tekstsammendrag for å vise frem innsikt i rapporten din ved å bruke LuckyTemplates tilpassede visuelle utvikling kalt Enlighten Data Story.
I denne bloggen lærer du hvordan du dynamisk subsett en tabellvisualisering i LuckyTemplates ved å bruke DAX-mål og betinget formatering.
En LuckyTemplates feriekalender er avgjørende for mange tidsintelligensberegninger. Lær hvordan du beregner bestemte feriedatoer ved hjelp av DAX.
Dette er en introduksjon til LuckyTemplates Geospatial Analysis for å bygge overbevisende dynamiske kart som byr på mange utfordringer for brukerne.
I denne opplæringen demonstrerer jeg hvordan du kan bruke den oppdaterte funksjonen på LuckyTemplates-datalinjer i datatabellvisualiseringer for å gjøre rapportene dine mer overbevisende.
I denne bloggen, skulle gå gjennom hvordan du analyserer over riktige salgsperioder eller riktige tidsperioder der du faktisk har resultater.
I denne LuckyTemplates-utstillingen vil vi gjennomgå forsikringsapplikasjonsrapporter som viser verdifull informasjon om forsikringsrelaterte produkter og avtaler.