Erhalten Sie LuckyTemplates-Werte der letzten Woche mithilfe von DAX und Power Query

Erhalten Sie LuckyTemplates-Werte der letzten Woche mithilfe von DAX und Power Query

Das Abrufen früherer Periodenwerte in LuckyTemplates ist eine häufige Aufgabe, das Abrufen von Werten früherer Wochen erfordert jedoch besondere Aufmerksamkeit. In diesem Tutorial bespreche ich zwei unkomplizierte und vielseitige Methoden zum Abrufen der LuckyTemplates-Werte der Vorwoche, die eine nützliche Ergänzung Ihrer Toolbox sein können – eine mit DAX und die andere mit Power Query. Das vollständige Video dieses Tutorials können Sie unten in diesem Blog ansehen.

Dieses Tutorial entstand aus einer Frage, die ich von einem LuckyTemplates-Mitglied bekam. Das Mitglied fragte, wie sich die Zahl der Vorwoche am einfachsten ermitteln ließe. Dies ist eine häufige Frage, die mir begegnet. Es scheint ziemlich einfach zu sein, aber je mehr man sich damit beschäftigt, desto mehr wird einem klar, dass es eine Menge zu verarbeiten gibt.

Inhaltsverzeichnis

Werte der Vorwoche in LuckyTemplates: Das Problem

Wenn wir uns die Wochennummer ansehen, haben wir 52 Wochen; Multiplizieren Sie das mit sieben Tagen (einer Woche) und das ergibt 364. In jedem Jahr gibt es also einen zusätzlichen Tag, und in Schaltjahren gibt es zwei zusätzliche Tage. Diese ein oder zwei zusätzlichen Tage verursachen am Ende viele Probleme.

Lassen Sie uns eine Kennzahl aus unserer Datumstabelle erstellen. Wir nennen es MAX Week # (Nummer). In dieser Analyse verwenden wir die LuckyTemplates Extended Dates Table; dies hat ISO Weeknumber , was sehr hilfreich ist. Nehmen wir nun den MAX der ISO-Wochenzahl.

Erhalten Sie LuckyTemplates-Werte der letzten Woche mithilfe von DAX und Power Query

Nehmen wir nun eine Tabelle und lassen Sie das Jahr sowie unsere MAX-Wochennummer fallen . Dieser Datensatz umfasst Daten aus 10 Jahren, und wir sehen, dass die ersten beiden Jahre 52 Wochen umfassen. Dann haben wir zwei Jahre mit 53 Wochen, drei Jahre mit 52 Wochen und dann zwei weitere Jahre mit 53 und eines mit 52.

Erhalten Sie LuckyTemplates-Werte der letzten Woche mithilfe von DAX und Power Query

Hier ist kein wirklich erkennbares Muster erkennbar. Es ist nicht einfach, vorherzusagen, dass man in einem Jahr 52 Wochen haben wird und im anderen Jahr 53.

Wenn Sie mit DAX-Zeitintelligenzfunktionen vertraut sind, denken Sie vielleicht als Nächstes an die Verwendung der DATEADD- Funktion, die einen Datumsbereich um einen bestimmten Zeitraum nach hinten verschiebt. Das geht wirklich gut für Tag, Monat, Quartal und Jahr, aber die Woche wird nicht berücksichtigt, also müssen wir einen anderen Weg finden, dies zu tun.

In der LuckyTemplates Extended Dates-Tabelle, die wir verwenden, hat Melissa (eine der LuckyTemplates-Experten) eine Funktion namens OFFSETS eingefügt . Lassen Sie uns auf diese Funktion eingehen, denn sie ist aus DAX-Perspektive absolut entscheidend für die Lösung dieses Problems.

Wenn wir uns den aktuellen Zeitraum ansehen (z. B. den 20. Januar, in dem dieses Tutorial erstellt wurde), sehen wir, dass der Offset gleich Null ist . Die Funktionsweise von Offsets besteht darin, dass der Offset für die aktuelle Periode Null wird.

Die Woche vor der aktuellen Woche ist eine negative Eins, zwei Wochen vor der aktuellen Woche sind eine negative Zwei und so weiter. Und dann geht es von den positiven Zahlen aus weiter; Die nächste Woche bekommt dann eine Eins, zwei Wochen bekommt eine Zwei usw.

Erhalten Sie LuckyTemplates-Werte der letzten Woche mithilfe von DAX und Power Query

Jedes Mal, wenn Sie den Bericht relativ zum heutigen Datum öffnen, werden die Offsets berechnet. Das ist unglaublich leistungsstark und jetzt zeige ich Ihnen, wie einfach es ist, einige schwierige Probleme wie diese LuckyTemplates-Nummer der letzten Woche zu lösen, wenn Sie Offsets verwenden.

Erhalten von LuckyTemplates letzte Woche mit DAX

Erstellen wir eine neue Kennzahl und nennen sie „ Vorherige Woche #“ . Wir beginnen mit einer Variablen ( SelWkOffset ), wobei wir einfach einen SELECTEDVALUE des WeekOffset erstellen . In der aktuellen Zeile wird also dieser WeekOffset gezeichnet und in unsere Variable eingefügt.

Die nächste Variable wird Result sein . Dies ist das Endergebnis, das wir wollen, und wir werden CALCULATE verwenden , weil wir den Kontext ändern werden.

Dann möchten wir die MAX ISO Weeknumber und diese unterliegt diesen Filterbedingungen. Daher entfernen wir alle Filter in der Datumstabelle und verwenden hier ALLE . Wenn wir einen Datums-Slicer hätten, würden wir vielleicht ALLSELECTED verwenden wollen , aber im Moment tun wir das nicht, also werden wir einfach ALL verwenden, um den Filter aus dieser Datumstabelle zu entfernen.

Und dann sagen wir, dass der WeekOffset unserem SelWkOffset minus eins entsprechen wird . Hier werden die OFFSETS so mächtig. Sie können die Wochennummer minus eins nicht verwenden, da diese jedes Jahr zurückgesetzt wird. Da jedoch ALLE OFFSETS sequentiell sind, können Sie es so behandeln, als würden Sie das vorherige Jahr ermitteln und einfach eins für jedes vorherige Jahr subtrahieren. Und so funktioniert dieser Offset genauso wie eine fortlaufende Zahl.

Wir können jetzt diese Filterbedingung übernehmen und schließen, CALCULATE schließen und einfach unser Ergebnis zurückgeben .

Erhalten Sie LuckyTemplates-Werte der letzten Woche mithilfe von DAX und Power Query

Schauen wir uns nun an, wie diese Maßnahme funktioniert. In der folgenden Tabelle können wir sehen, dass es genau das tut, was wir uns erhofft hatten. In Woche 52 für Periode eins im folgenden Jahr ist die Vorwoche 52. Und dann wird in jeder Periode um eins zurückgegangen und so weiter.

Erhalten Sie LuckyTemplates-Werte der letzten Woche mithilfe von DAX und Power Query

Was tun Sie nun, wenn Sie keinen Offset haben?

Nehmen wir an, Sie arbeiten mit einer unternehmensweiten Datumstabelle, die aus Ihrem Data Warehouse stammt und diese Offsets nicht enthält. Es gibt eine Technik, die ich Ihnen in Power Query zeigen möchte. Das erste Mal sah ich es in einem Blogeintrag von Imke Feldmann.

Dieser Ansatz eignet sich sehr gut für alle Situationen, in denen Sie die Tabelle in aufsteigender Reihenfolge anordnen können und keinen Versatz haben müssen. Es muss nicht einmal ein Datumsfeld vorhanden sein. Es könnte sich um eine völlig andere Art von Tisch handeln. Solange es in aufsteigender Reihenfolge sortierbar ist, können Sie diese Technik verwenden.

Verweisen wir also auf diese Dates Raw-Tabelle und nennen wir sie Dates . Dann achten wir darauf, dies in aufsteigender Reihenfolge zu sortieren .

Erhalten Sie LuckyTemplates-Werte der letzten Woche mithilfe von DAX und Power Query

Als nächstes wollen wir nach Woche gruppieren . Der Grund dafür ist, dass wir zwei Indexspalten hinzufügen werden. Wenn wir diese Indexspalten hinzufügen, möchten wir, dass diese die Wochengranularität und nicht die Tagesgranularität aufweisen .

Erhalten Sie LuckyTemplates-Werte der letzten Woche mithilfe von DAX und Power Query

Als nächstes möchten wir diese Indexspalten hinzufügen. Wichtig hierbei ist, dass der erste Index, den wir hinzufügen, ein 0-basierter Index sein wird. Und dann werden wir einen zweiten Index hinzufügen, der ein 1-basierter Index ist.

Erhalten Sie LuckyTemplates-Werte der letzten Woche mithilfe von DAX und Power Query

Dann nehmen wir diese Spalte und führen eine Tabelle in sich selbst zusammen. Wir werden es basierend auf den beiden verschiedenen Indexspalten zusammenführen. Das wird uns eine Verschiebung der Reihen bescheren.

Wenn wir also dies nehmen und den ersten mit dem 0-basierten Index mit dem 1-basierten Index zusammenführen, entspricht er 521 bei 522 Zeilen. Das ist genau das, was wir erwarten würden, da die zweite Tabelle den Nullindex nicht aufnehmen wird, da sie bei eins beginnt.

Erhalten Sie LuckyTemplates-Werte der letzten Woche mithilfe von DAX und Power Query

Danach erweitern wir dies einfach richtig, indem wir einfach die ISO-Wochennummer verwenden.

Erhalten Sie LuckyTemplates-Werte der letzten Woche mithilfe von DAX und Power Query

Das gibt uns die Nummer der Vorwoche. Und jetzt erweitern wir einfach unsere ursprüngliche Gruppierung und entfernen das Feld „WeekEnding“ und die ursprüngliche ISO-Wochennummer, damit es nicht zu Duplikaten kommt.

Erhalten Sie LuckyTemplates-Werte der letzten Woche mithilfe von DAX und Power Query

Wenn wir das in eine Tabelle eintragen, können Sie sehen, dass es genau die gleichen Ergebnisse sind wie bei der Verwendung der DAX-Technik. Es funktioniert genauso wie unser DAX-Maß, aber in diesem Fall mussten wir die Offsets nicht verwenden.

Erhalten Sie LuckyTemplates-Werte der letzten Woche mithilfe von DAX und Power Query

Abschluss

Dies sind zwei verschiedene, sehr vielseitige Möglichkeiten, die Nummer der Vorwoche zu ermitteln. Bei der ersten Technik können Sie die Leistungsfähigkeit von Offsets erkennen, indem Sie eine ansonsten schwierige Berechnung ganz einfach durchführen. Die zweite Technik funktioniert genau wie unser DAX-Maß, aber in diesem Fall mussten wir die Offsets nicht verwenden.

Hoffentlich finden Sie dieses Tutorial hilfreich. Sie können sich unten das vollständige Video-Tutorial ansehen und sich die entsprechenden Links für weitere ähnliche Inhalte ansehen.

Beifall!


So speichern und laden Sie eine RDS-Datei in R

So speichern und laden Sie eine RDS-Datei in R

Sie erfahren, wie Sie Objekte aus einer .rds-Datei in R speichern und laden. In diesem Blog wird auch behandelt, wie Sie Objekte aus R in LuckyTemplates importieren.

Was ist Self in Python: Beispiele aus der Praxis

Was ist Self in Python: Beispiele aus der Praxis

Was ist Self in Python: Beispiele aus der Praxis

First N Business Days Revisited – Eine DAX-Codierungssprachenlösung

First N Business Days Revisited – Eine DAX-Codierungssprachenlösung

In diesem Tutorial zur DAX-Codierungssprache erfahren Sie, wie Sie die GENERATE-Funktion verwenden und einen Kennzahltitel dynamisch ändern.

Präsentieren Sie Einblicke mithilfe der Multi-Threaded-Dynamic-Visuals-Technik in LuckyTemplates

Präsentieren Sie Einblicke mithilfe der Multi-Threaded-Dynamic-Visuals-Technik in LuckyTemplates

In diesem Tutorial erfahren Sie, wie Sie mithilfe der Multi-Threaded-Dynamic-Visuals-Technik Erkenntnisse aus dynamischen Datenvisualisierungen in Ihren Berichten gewinnen.

Einführung in den Filterkontext in LuckyTemplates

Einführung in den Filterkontext in LuckyTemplates

In diesem Artikel werde ich den Filterkontext durchgehen. Der Filterkontext ist eines der Hauptthemen, über die sich jeder LuckyTemplates-Benutzer zunächst informieren sollte.

Beste Tipps zur Verwendung der Apps im LuckyTemplates-Onlinedienst

Beste Tipps zur Verwendung der Apps im LuckyTemplates-Onlinedienst

Ich möchte zeigen, wie der LuckyTemplates Apps-Onlinedienst bei der Verwaltung verschiedener Berichte und Erkenntnisse aus verschiedenen Quellen helfen kann.

Analysieren Sie Gewinnmargenänderungen im Laufe der Zeit – Analysen mit LuckyTemplates und DAX

Analysieren Sie Gewinnmargenänderungen im Laufe der Zeit – Analysen mit LuckyTemplates und DAX

Erfahren Sie, wie Sie Ihre Gewinnmargenänderungen mithilfe von Techniken wie Kennzahlenverzweigung und der Kombination von DAX-Formeln in LuckyTemplates ermitteln.

Materialisierungsideen für Datencaches in DAX Studio

Materialisierungsideen für Datencaches in DAX Studio

In diesem Tutorial werden die Ideen der Materialisierung von Datencaches und deren Auswirkungen auf die Leistung von DAXs bei der Bereitstellung von Ergebnissen erläutert.

Geschäftsberichte mit LuckyTemplates

Geschäftsberichte mit LuckyTemplates

Wenn Sie bisher noch Excel verwenden, ist dies der beste Zeitpunkt, LuckyTemplates für Ihre Geschäftsberichtsanforderungen zu verwenden.

Was ist LuckyTemplates Gateway? Alles was du wissen musst

Was ist LuckyTemplates Gateway? Alles was du wissen musst

Was ist LuckyTemplates Gateway? Alles was du wissen musst