Kategorie / DAX spezifisch
Im letzten Blog-Beitrag haben wir die DATEADD() vorgestellt für flexible Periodenvergleiche. DAX bietet eine ähnlich klingende Funktion mit dem Namen PARALLELPERIOD – die aber tatsächlich etwas anderes tut!
Kostenstellen, Aufbauorganisationen, Stücklisten – Hierarchien kommen überall vor. Im Artikel Was macht eigentlich PATH haben wir gezeigt, was man mit der Funktion PATH machen kann. Eine aktuelle Anfrage eines Lesers nehmen wir zum Anlass, Power Pivot PATH() in diesem Artikel etwas tiefer zu betrachten.
Im letzten Artikel haben wir gesehen, was Star-Schemas sind. Was aber, wenn wir die Daten nur flach zur Verfügung gestellt bekommen?
Im letzten Artikel haben wir besprochen, wozu man diese Calculate() benötigt. Dort haben wir einen einfachen Periodenvergleich auf ein fest eingegebenes Jahr vorgenommen. Schöner wäre es, könnten wir dynamisch immer auf das vorherige Jahr gehen – das geht in Kombination mit Filter().
In den Artikeln über Kontext haben wir beschrieben, was der Benutzerkontext und der Zeilenkontext ist. Mit dem speziellen Iterator Filter haben wir Kontexte weiter gefiltert oder Filter mit ALL() wieder aufgehoben. Was aber, wenn wir nur einen Teil der Filter aufheben wollen? Beispielsweise für einen Vorjahresvergleich? Dazu benötigen wir die CALCULATE()-Funktion.
Im ersten Artikel über Kontext haben wir uns angesehen, worin der Unterschied zwischen dem Zeilenkontext und dem Benutzerkontext besteht. In diesem Teil zeigen wir Auswirkungen, die vielleicht überraschend, aber ungemein nützlich sind und erläutern die Funktion EARLIER().
Im vorherigen Artikel haben wir gesehen, wie man Zeilenkontexte überschreiben kann und mittels den Funktionen EARLIER() und EARLIEST() auf umgebende Kontexte zugreifen kann. Welchen Einfluss haben Benutzerfilter bei der Verwendung von RELATED() oder RELATEDTABLE() und welche Rolle spielen mehrere Tabellen?
Im Artikel über Kontexte haben wir eine Einführung  zu den entsprechenden Begriffen gegeben. Mit dem dort erläuterten Modell kann man gut arbeiten – bei fortgeschrittenen DAX-Funktionen, wie beispielsweise der Funktion Calculate(), sollte man den Kontext besser verstehen – dafür brauchen wir aber einen Mehrteiler :-)
Im Artikel Related() statt VLookup haben wir vorgestellt, wie man über verknüpfte Tabellen navigieren kann, um Werte zu finden. Tabellen lassen sich allerdings nur über ein Merkmal verknüpfen. Was, wenn wir einen Wert über zwei oder mehr Merkmale suchen wollen? Beispielsweise die Frachtkosten eines Spediteurs in ein spezielles Warenempfängerland? Hier hilft uns die Funktion LookupValue().