Få LuckyTemplates forrige ukes verdier ved å bruke DAX & Power Query

Å hente tidligere periodeverdier i LuckyTemplates er en vanlig oppgave, men å hente forrige ukes verdier krever litt spesiell oppmerksomhet. I denne opplæringen vil jeg diskutere to enkle og allsidige metoder for å få tak i LuckyTemplates forrige ukes verdier som kan være nyttige tillegg til verktøykassen din – den ene bruker DAX og den andre med Power Query. Du kan se hele videoen av denne opplæringen nederst på denne bloggen.

Denne opplæringen kom fra et spørsmål jeg fikk fra et LuckyTemplates-medlem. Medlemmet spurte hva som var den enkleste måten å bestemme forrige ukes tall. Dette er et vanlig spørsmål jeg møter. Det virker ganske enkelt, men jo mer du graver i det, jo mer innser du at det er ganske mye å behandle.

Innholdsfortegnelse

Forrige ukes verdier i LuckyTemplates: Problemet

Hvis vi ser på ukenummeret, har vi 52 uker; gang det med syv dager (en uke) og det kommer til 364. Så i hvert år er det en ekstra dag, og så for skuddår er det to ekstra dager. Disse en eller to ekstra dagene ender opp med å skape mange problemer.

La oss lage et mål fra Datoer-tabellen. Vi kaller det MAX Week # (tall). I denne analysen bruker vi LuckyTemplates Extended Dates Table; dette har ISO Weeknumber , som er ganske nyttig. La oss nå ta MAX av ISO-ukenummeret.

Få LuckyTemplates forrige ukes verdier ved å bruke DAX & Power Query

Nå, la oss ta en tabell og slippe år i tillegg til vår MAKS uke # . Dette datasettet har 10 års data, og vi ser at de to første årene har 52 uker. Så har vi to år med 53 uker, tre år med 52 uker, og så to år til med 53 og ett med 52.

Få LuckyTemplates forrige ukes verdier ved å bruke DAX & Power Query

Det er egentlig ikke et merkbart mønster her. Det er ikke lett å gå tilbake og forutsi at det ene året vil du ha 52 uker og det andre året vil du ha 53.

Det neste du kanskje tenker på hvis du er kjent med DAX-tidsintelligensfunksjoner er å bruke DATEADD- funksjonen , som flytter en rekke datoer tilbake med en gitt periode. Det gjør det veldig bra for dag, måned, kvartal og år, men det inkluderer ikke uke, så vi må finne en annen måte å gjøre dette på.

I LuckyTemplates Extended Dates-tabellen som vi bruker, har Melissa (en av LuckyTemplates-ekspertene) inkludert en funksjon kalt OFFSETS . La oss dykke ned i denne funksjonen fordi den er helt nøkkelen for å løse dette fra et DAX-perspektiv.

Ser vi på gjeldende periode (for eksempel 20. januar, som er perioden for å lage denne opplæringen), er det vi ser at offset er lik null . Måten forskyvninger fungerer på er at for gjeldende periode blir forskyvningen null.

Uken før gjeldende uke er negativ, to uker før gjeldende uke er negativ to, og så videre. Og så går det fremover fra de positive tallene; neste uke får da en en, to uker får en to osv.

Få LuckyTemplates forrige ukes verdier ved å bruke DAX & Power Query

Hver gang du åpner rapporten i forhold til dagens dato, beregner den forskyvningene. Dette er utrolig kraftig, og nå skal jeg vise deg hvor enkelt det er å takle noen vanskelige problemer som dette LuckyTemplates forrige ukenummer når du bruker forskyvninger.

Skaffe LuckyTemplates forrige uke ved å bruke DAX

La oss lage et nytt mål og kalle det Previous Wk # . Vi skal starte med en variabel ( SelWkOffset ), hvor vi bare skal gjøre en SELECTEDVALUE av WeekOffset . Så, i den gjeldende raden, kommer den til å tegne den WeekOffset og sette den i variabelen vår.

Den neste variabelen vil være Resultat . Dette er det endelige resultatet vi ønsker, og vi kommer til å bruke CALCUATE fordi vi kommer til å skifte kontekst.

Deretter vil vi ha MAX ISO-ukenummeret , og det kommer til å være underlagt disse filterbetingelsene. Så vi fjerner alle filtrene i Datoer-tabellen, og derfor bruker vi ALLE her. Hvis vi hadde en datoskjærer, ville vi kanskje bruke ALLSELECTED , men foreløpig gjør vi det ikke, så vi skal bare bruke ALL for å fjerne filteret fra den datotabellen.

Og da vil vi si at WeekOffset kommer til å være lik vår SelWkOffset minus en . Det er her OFFSETS blir så kraftige. Du kan ikke bruke ukenummer minus én fordi det tilbakestilles hvert år. Men fordi ALLE OFFSETS er sekvensielle, kan du behandle det som du ville behandlet å finne det foregående året og bare trekke fra én for hvert foregående år. Og så dette, denne forskyvningen fungerer akkurat på samme måte som et fortløpende tall ville gjort.

Vi kan nå ta og stenge den filtertilstanden, stengt av BEREGN og bare GÅ tilbake resultatet .

Få LuckyTemplates forrige ukes verdier ved å bruke DAX & Power Query

La oss nå se på hvordan dette tiltaket fungerer. I tabellen nedenfor kan vi se at den gjør akkurat det vi hadde håpet. I uke 52 for periode én i det påfølgende året, er forrige uke 52. Så går den ett tilbake for hver periode, og så videre.

Få LuckyTemplates forrige ukes verdier ved å bruke DAX & Power Query

Nå, hva gjør du i tilfeller når du ikke har en forskyvning?

La oss si at du jobber med en bedriftsdatotabell som kommer fra datavarehuset ditt, og at den ikke inkluderer disse forskyvningene. Det er en teknikk jeg vil vise deg i Power Query. Første gang jeg så det var i et blogginnlegg av Imke Feldmann.

Denne tilnærmingen fungerer veldig bra for enhver situasjon der du kan bestille bordet i stigende rekkefølge, og det trenger ikke å ha en forskyvning. Den trenger ikke engang ha et datofelt. Det kan være en helt annen type bord. Så lenge det er sorterbart i stigende rekkefølge, kan du bruke denne teknikken.

Så la oss referere til denne Dates Raw-tabellen, og vi kaller denne Dates . Deretter sørger vi for å sortere dette i stigende rekkefølge .

Få LuckyTemplates forrige ukes verdier ved å bruke DAX & Power Query

Deretter ønsker vi å gruppere etter uke . Grunnen til det er at vi kommer til å legge til to indekskolonner. Når vi legger til disse indekskolonnene, vil vi at de skal ha ukegranularitet , ikke dagsgranularitet.

Få LuckyTemplates forrige ukes verdier ved å bruke DAX & Power Query

Deretter vil vi legge til disse indekskolonnene. Det viktige her er at den første indeksen vi legger til kommer til å være en 0-basert indeks. Og så skal vi legge til en andre indeks som er en 1-basert indeks.

Få LuckyTemplates forrige ukes verdier ved å bruke DAX & Power Query

Deretter skal vi ta denne kolonnen og slå sammen en tabell i seg selv. Vi skal slå den sammen basert på de to forskjellige indekskolonnene. Det kommer til å gi oss et skifte i rader.

Så hvis vi tar dette og slår sammen den første til den 0-baserte indeksen til den 1-baserte indeksen, samsvarer den med 521 ved 522 rader. Det er akkurat det vi forventer fordi det andre bordet ikke kommer til å plukke opp nullindeksen siden det starter på ett.

Få LuckyTemplates forrige ukes verdier ved å bruke DAX & Power Query

Etter det vil vi bare utvide dette ordentlig, bare ved å bruke ISO Weeknumber.

Få LuckyTemplates forrige ukes verdier ved å bruke DAX & Power Query

Det gir oss forrige ukenummer. Og nå vil vi bare utvide vår opprinnelige gruppering og ta ut WeekEnding-feltet og det originale ISO-ukenummeret slik at vi ikke dupliserer.

Få LuckyTemplates forrige ukes verdier ved å bruke DAX & Power Query

Hvis vi setter det i en tabell, kan du se at det er nøyaktig de samme resultatene som å bruke DAX-teknikken. Det fungerer akkurat som DAX-målet vårt gjorde, men i dette tilfellet trengte vi ikke å bruke forskyvningene.

Få LuckyTemplates forrige ukes verdier ved å bruke DAX & Power Query

Konklusjon

Dette er to forskjellige måter på en veldig allsidig måte å finne forrige ukenummer på. I den første teknikken kan du se kraften i forskyvninger i å lage, noe som ellers ville vært en vanskelig beregning, ganske enkelt. Den andre teknikken fungerer akkurat som DAX-målet vårt gjorde, men i dette tilfellet trengte vi ikke å bruke forskyvningene.

Forhåpentligvis finner du denne opplæringen nyttig. Du kan se hele videoopplæringen nedenfor og sjekke ut de relaterte koblingene for mer lignende innhold.

Jubel!


Slik bruker du Natural Language Query (Q&A) i LuckyTemplates

Slik bruker du Natural Language Query (Q&A) i LuckyTemplates

I denne opplæringen skal jeg vise deg hva du kan gjøre med Natural Language Query eller skrivebordsfunksjonen for spørsmål og svar i LuckyTemplates netttjeneste.

Sorter visualiseringer dynamisk i LuckyTemplate-rapportene dine

Sorter visualiseringer dynamisk i LuckyTemplate-rapportene dine

Lær hvordan du sorterer visualiseringer dynamisk i LuckyTemplates-rapportene dine. Få kvalitetsinnsikt samtidig som du er kreativ i måten du presenterer data på.

PowerApps-søkefelt: Slik legger du til og tilpasser

PowerApps-søkefelt: Slik legger du til og tilpasser

Lær hvordan du oppretter et PowerApps-søkefelt fra bunnen av og tilpasser det til å matche det overordnede temaet for appen din.

SELECTEDVALUE DAX-eksempel- Valg av høsteskive

SELECTEDVALUE DAX-eksempel- Valg av høsteskive

Høst eller fang en verdi inne i et mål for å gjenbruke i et annet mål for dynamiske beregninger ved å bruke SELECTEDVALUE DAX i LuckyTemplates.

Versjonshistorikk i SharePoint-lister

Versjonshistorikk i SharePoint-lister

Oppdag hvordan versjonshistorikk i SharePoint kan hjelpe deg med å se utviklingen av bestemte data, og hvor mange endringer den har gjennomgått.

Hex-fargekodevelger for Lucky Templates-rapporter

Hex-fargekodevelger for Lucky Templates-rapporter

Her er et verktøy for å lage rapporter og grafikk, en sekskantkodevelger for farger som du kan bruke for enkelt å få fargene til LuckyTemplates-rapportene dine.

Dynamisk datoskjærer i Lucky-maler ved hjelp av en periodetabell

Dynamisk datoskjærer i Lucky-maler ved hjelp av en periodetabell

Du kan enkelt vise en datoperiode som en slicer i rapporten ved hjelp av en periodetabell. Bruk en M-kode for å lage den dynamiske datoskjæreren i LuckyTemplates.

Proporsjons- og frekvenstabeller i Excel

Proporsjons- og frekvenstabeller i Excel

Skulle dykke ned i frekvenstabeller i Excel samt proporsjonstabeller. Se nærmere på hva de er og når du skal bruke dem.

Slik installerer du DAX Studio & Tabular Editor i LuckyTemplates

Slik installerer du DAX Studio & Tabular Editor i LuckyTemplates

Lær hvordan du laster ned og installerer DAX Studio og Tabular Editor 3 og hvordan du konfigurerer dem for bruk i LuckyTemplates og i Excel.

LuckyTemplates Shape Map Visualization for romlig analyse

LuckyTemplates Shape Map Visualization for romlig analyse

Denne bloggen inneholder Shape Map-visualiseringen for romlig analyse i LuckyTemplates. Jeg viser deg hvordan du kan bruke denne visualiseringen effektivt med dens funksjoner og elementer.