De offset-functie gebruiken in uitgebreide datumtabellen

De offset-functie gebruiken in uitgebreide datumtabellen

Ik ga je laten zien hoe je de offset-functie in LuckyTemplates gebruikt . Het is een van de meest dynamische tools die u kunt gebruiken, vooral in uw datumtabellen.

Als je eenmaal onder de knie hebt hoe je het kunt toepassen in je time intelligence-projecten, kun je meer diepgaande inzichten krijgen die je met geen enkele andere aanpak zult krijgen. Je kunt de volledige video van deze tutorial onderaan deze blog bekijken.

Inhoudsopgave

De mechanica van de offsetfunctie begrijpen

Ik zal beginnen met u de mechanica van de offset-functie te laten zien.

Offsets tonen het verschil tussen de datum van vandaag en de andere datums in uw gegevens.

Zoals je kunt zien in mijn datumtabel hieronder, heb ik me gericht op kwartaal en jaar , zodat ik de daadwerkelijke gegevensbeweging kan zien.

De offset-functie gebruiken in uitgebreide datumtabellen

De paarse rij geeft de huidige periode weer . Merk op dat de huidige periode altijd een offsetwaarde van 0 heeft .

De offset-functie gebruiken in uitgebreide datumtabellen

Daarboven, in het geel, worden alle gegevens uit het verleden weergegeven . U zult zien dat de cijfers hier 0 of kleiner dan 0 zijn, vertegenwoordigd door de negatieve gegevens .

De offset-functie gebruiken in uitgebreide datumtabellen

Dit betekent dat voor gegevens uit de toekomst deze positieve waarden zullen laten zien . Afhankelijk van de granulariteit van de kolom kan deze ook een 0 bevatten .

De offset-functie gebruiken in uitgebreide datumtabellen

Dus wat maakt offsets krachtig?

Offsets kunnen opeenvolgende getallen zijn die het verschil tussen verschillende gegevens in de tabel vertegenwoordigen . Maar wat offsets geweldig maakt, is dat ze geen grenzen hebben .

Kwartalen lopen bijvoorbeeld van 1 tot 4, wat staat voor de 4 kwartalen in een jaar. Maanden lopen van 1 tot 12, terwijl weken kunnen lopen van 1 tot 52 of 53, afhankelijk van welk jaar het is. Maar als ik eenmaal bij het laatste cijfer ben, moet ik opnieuw beginnen.

Dit is niet het geval voor compensaties. Als het gaat om offsets, tonen ze altijd een relatieve positie ten opzichte van de huidige datum en de andere datum waarnaar wordt verwezen .

Dus elke keer dat de datumtabel wordt vernieuwd, wordt ook de logica die ervoor zorgt dat de offsets werken, bijgewerkt. Dit betekent dat er ook een bijgewerkte waarde in de datumtabel wordt weergegeven.

Voorbeeld van een weekoffsetkolom

Om u een duidelijker beeld te geven van hoe de offset-functie werkt, zal ik u een voorbeeld geven van hoe deze wordt toegepast.

In mijn voorbeeldgegevens wordt de datum van vandaag weergegeven als 24 april 2020 .

De offset-functie gebruiken in uitgebreide datumtabellen

Nogmaals, de offset-principes stellen dat de huidige periode wordt weergegeven door 0, toekomstige gegevens worden weergegeven door positieve waarden en perioden uit het verleden worden weergegeven door negatieve getallen .

De offset-functie gebruiken in uitgebreide datumtabellen

Ik heb ook een slicer op mijn pagina die de WeekOffset-waarde bevat. Momenteel toont het alle waarden van -53 tot 0, waarbij 0 de huidige week vertegenwoordigt .

De offset-functie gebruiken in uitgebreide datumtabellen

24 april (dat is vandaag) valt in week 17 .

De offset-functie gebruiken in uitgebreide datumtabellen

Deze uitgebreide datumtabel bevat alleen de ISO-weeknummers . Dit betekent dat weken beginnen op een maandag . Dit betekent ook dat een week altijd 7 dagen zal bevatten .

Maar er zijn veel aangepaste weekvereisten die niet dezelfde logica volgen. U kunt meer over deze gevallen te weten komen in verschillende onderwerpen die op het LuckyTemplates-forum worden behandeld.

U kunt ook overwegen om Maand & Jaar te gebruiken in plaats van Week & Jaar als dat beter van toepassing is op uw situatie.

Als u teruggaat naar de voorbeeldgegevens, is het u misschien opgevallen dat de waarden van WeekOffset zich in een perfect volgnummerbereik bevinden .

De offset-functie gebruiken in uitgebreide datumtabellen

Dit komt doordat ze overal dezelfde granulariteit hebben . Er zijn geen dubbele waarden en geen ontbrekende waarden.

Natuurlijk wordt de hier gebruikte Totale Verkoopmaatstaf op de gebruikelijke manier uitgevoerd, met slechts een normale over Verkoop voor de Hoeveelheid maal de Prijs . Vervolgens wordt alles samengevoegd om een ​​wekelijkse waarde te krijgen.

Maar wat als ik alleen de laatste 4 weken uitverkoop wil zien?

Ik hoef alleen mijn slicer te veranderen in een bereik van -3 tot 0 .

De offset-functie gebruiken in uitgebreide datumtabellen

Nu laat mijn tabel alleen de verkoop van de afgelopen vier weken zien.

De offset-functie gebruiken in uitgebreide datumtabellen

Dus naarmate ik door de tijd reis, wordt mijn datumtabel bijgewerkt. Hetzelfde gebeurt als nieuwe verkoopresultaten in de feitentabel worden geladen.

Offsets gebruiken in DAX

Deze keer laat ik zien hoe de offset-functie kan worden gebruikt in DAX-maten.

Ik heb een tabel met de Week & Jaar en Totale Verkoop .

De offset-functie gebruiken in uitgebreide datumtabellen

Dus als ik de verkopen van de vorige week wil berekenen zonder compensaties, moet ik eerst het CurrWeek- nummer extraheren en vervolgens controleren wat de CurrYear- waarde is.

De offset-functie gebruiken in uitgebreide datumtabellen

Als ik een jaargrens moet overslaan, moet ik uitrekenen wat het Weeknummer is van dat laatste jaar.

De offset-functie gebruiken in uitgebreide datumtabellen

Van daaruit zou ik SUMX gebruiken als een herhalende functie op de datumtabel. Ik zou ook moeten kijken of de CurrWeek week nummer 1 is .

De offset-functie gebruiken in uitgebreide datumtabellen

Als het geen week 1 is, hoef ik alleen maar 1 af te trekken van de CurrWeek-waarde voor CurrYear . Daarna kan de Totale Verkoop eindelijk worden opgeteld .

De offset-functie gebruiken in uitgebreide datumtabellen

Als u naar de onderstaande tabel kijkt, kunt u nu zien dat alle waarden perfect zijn geaggregeerd. De waarden die verschijnen onder Total Sales worden gewoon overgedragen naar de volgende week.

De offset-functie gebruiken in uitgebreide datumtabellen

Zelfs als ik van 2017 naar 2018 een jaargrens overschrijdt, doorbreekt het patroon niet. De Total Sales van de laatste week van 2017 is nog perfect berekend voor week nummer 1 van 2018.

De offset-functie gebruiken in uitgebreide datumtabellen

Deze keer ga ik dezelfde berekening doen, maar met datumtabel-offsets toegepast.

Zo ziet die maat eruit als ik offsets gebruik.

De offset-functie gebruiken in uitgebreide datumtabellen

Dus om de PrevWeek- waarde te krijgen, hoef ik alleen maar naar de geselecteerde WeekOffset te verwijzen en 1 af te trekken.

De offset-functie gebruiken in uitgebreide datumtabellen

Vervolgens gebruik ik de functie voor de totale verkoop over datums waarbij de WeekOffset gelijk is aan de PrevWeek- waarde.

De offset-functie gebruiken in uitgebreide datumtabellen

Kijkend naar de resultaten, lijken de resultaten perfect te zijn, zelfs in de overgang van 2017 naar 2018.

De offset-functie gebruiken in uitgebreide datumtabellen

Het probleem zit hem echter in de Total . Dit is duidelijk niet de juiste waarde.

De offset-functie gebruiken in uitgebreide datumtabellen

Hier is hoe ik dat ga oplossen.

Merk allereerst op dat de kolom Week & Jaar in oplopende volgorde staat .

De offset-functie gebruiken in uitgebreide datumtabellen

Ik ga dat veranderen en in plaats daarvan de kolom in aflopende volgorde sorteren , met 2020 bovenaan.

De offset-functie gebruiken in uitgebreide datumtabellen

Omdat er geen context uit Week & Jaar komt , identificeert het niet de offsetwaarde van de huidige week, maar wordt er nog steeds 1 van afgetrokken . Maar wat ik wel kan doen, is een cumulatief totaal toepassen om het totaal aan te passen .

Zo ziet de maatregel eruit:

De offset-functie gebruiken in uitgebreide datumtabellen

Het begin van de maat verandert niet. Het is precies hetzelfde als de vorige maatregel die ik toepaste.

Maar aangezien ik een patroon moet gebruiken dat lijkt op cumulatieve totalen, moet ik de CALCULATE- functie gebruiken op de FirstWeek over de datums met 1 ervan afgetrokken.

De offset-functie gebruiken in uitgebreide datumtabellen

Ik moet ook de MAX WeekOffset- waarde van de ALLSELECTED- datums identificeren en er ook een van aftrekken.

De offset-functie gebruiken in uitgebreide datumtabellen

Vervolgens gebruik ik de CALCULATE- functie opnieuw voor de Total Sales . Ik gebruik de functie om ALLE datums op te nemen . De waarde van WeekOffset moet groter zijn dan of gelijk zijn aan FirstWeek en kleiner dan of gelijk zijn aan LastWeek .

De offset-functie gebruiken in uitgebreide datumtabellen

Nogmaals, dit volgt het basispatroon voor cumulatieve totalen.

Dan kan ik doorgaan met het controleren van het eindtotaal met behulp van de patronen.

De offset-functie gebruiken in uitgebreide datumtabellen

Dus INDIEN de Week & het Jaar INSCOOP IS , verwacht ik dat de resultaten de LWSales laten zien . Maar als dat niet het geval is, verwacht ik dat de LWTotal verschijnt.

De offset-functie gebruiken in uitgebreide datumtabellen

Dus als ik terugga naar mijn tafel, wordt nu het juiste totaal weergegeven.

De offset-functie gebruiken in uitgebreide datumtabellen

Offsets voor specifieke weken

Laat me teruggaan naar het voorbeeld dat ik eerder gebruikte, waarbij ik de gegevens filterde om alleen de laatste vier weken weer te geven.

De offset-functie gebruiken in uitgebreide datumtabellen

Als ik inga op de maat, kan ik met offsets tot dezelfde resultaten komen. Dit is hoe dat eruit zou zien.

De offset-functie gebruiken in uitgebreide datumtabellen

Ik moest alleen de huidige WeekOffset- waarde identificeren voor de context die uit de rijen komt.

De offset-functie gebruiken in uitgebreide datumtabellen

Als ik dat eenmaal heb, kan ik de CALCULATE- functie toepassen op de totale verkoop van ALLE datums waarop de WeekOffset groter is dan of gelijk is aan ThisWeek min 3, of kleiner dan of gelijk aan de waarde voor ThisWeek .

De offset-functie gebruiken in uitgebreide datumtabellen

Dit retourneert precies dezelfde waarde als het voorbeeld dat ik probeer te repliceren.

De offset-functie gebruiken in uitgebreide datumtabellen


Cumulatieve totalen op basis van maandelijkse gemiddelde resultaten in LuckyTemplates
Gegevensnormalisatie in LuckyTemplates voor verschillende dagen Resultaten
Realiseer snel een uitgebreide datumtabel in LuckyTemplates

Conclusie

De voorbeelden die ik u hierboven heb laten zien, bewijzen hoe dynamische offsets werkelijk zijn. U kunt ze gebruiken in filters, segmenten en zelfs in DAX-berekeningen.

Offsets kunnen ook worden gebruikt in uitgebreide datumtabellen voor weken, maanden, kwartalen, jaren en fiscale jaren. Ze bieden veel flexibiliteit en kunnen u gemakkelijk helpen de gewenste resultaten te behalen.

Blijf gewoon spelen met offsets en kijk welke andere toepassingen u ervoor kunt hebben. U kunt ook het raadplegen voor andere gevallen waarin de offset-functie nuttig bleek te zijn.

Al het beste,

Melissa


Wat is zelf in Python: voorbeelden uit de echte wereld

Wat is zelf in Python: voorbeelden uit de echte wereld

Wat is zelf in Python: voorbeelden uit de echte wereld

Een RDS-bestand opslaan en laden in R

Een RDS-bestand opslaan en laden in R

Je leert hoe je objecten uit een .rds-bestand in R opslaat en laadt. In deze blog wordt ook besproken hoe je objecten uit R naar LuckyTemplates importeert.

First N Business Days Revisited – Een DAX-coderingstaaloplossing

First N Business Days Revisited – Een DAX-coderingstaaloplossing

In deze tutorial over DAX-coderingstaal leert u hoe u de functie GENERATE gebruikt en hoe u de titel van een maat dynamisch wijzigt.

Breng inzichten onder de aandacht met behulp van de Multi Threaded Dynamic Visuals-techniek in LuckyTemplates

Breng inzichten onder de aandacht met behulp van de Multi Threaded Dynamic Visuals-techniek in LuckyTemplates

Deze zelfstudie behandelt hoe u de Multi Threaded Dynamic Visuals-techniek kunt gebruiken om inzichten te creëren op basis van dynamische gegevensvisualisaties in uw rapporten.

Inleiding tot het filteren van context in LuckyTemplates

Inleiding tot het filteren van context in LuckyTemplates

In dit artikel zal ik de filtercontext doornemen. Filtercontext is een van de belangrijkste onderwerpen waarover elke LuckyTemplates-gebruiker in eerste instantie zou moeten leren.

Beste tips voor het gebruik van de apps in LuckyTemplates Online Service

Beste tips voor het gebruik van de apps in LuckyTemplates Online Service

Ik wil laten zien hoe de online service LuckyTemplates Apps kan helpen bij het beheren van verschillende rapporten en inzichten die uit verschillende bronnen zijn gegenereerd.

Analyseer winstmargeveranderingen in de loop van de tijd - analyse met LuckyTemplates en DAX

Analyseer winstmargeveranderingen in de loop van de tijd - analyse met LuckyTemplates en DAX

Leer hoe u wijzigingen in uw winstmarge kunt berekenen met behulp van technieken zoals vertakking van metingen en het combineren van DAX-formules in LuckyTemplates.

Materialisatie-ideeën voor gegevenscaches in DAX Studio

Materialisatie-ideeën voor gegevenscaches in DAX Studio

Deze tutorial bespreekt de ideeën van materialisatie van datacaches en hoe deze de prestaties van DAX beïnvloeden bij het leveren van resultaten.

Zakelijke rapportage met behulp van LuckyTemplates

Zakelijke rapportage met behulp van LuckyTemplates

Als u tot nu toe nog steeds Excel gebruikt, is dit het beste moment om LuckyTemplates te gaan gebruiken voor uw zakelijke rapportagebehoeften.

Wat is LuckyTemplates Gateway? Alles wat u moet weten

Wat is LuckyTemplates Gateway? Alles wat u moet weten

Wat is LuckyTemplates Gateway? Alles wat u moet weten