OVER-Funktionen

Mit den OVER-Funktionen wird festgelegt, wie Daten beispielsweise relativ zu Zeiträumen aufgeteilt werden sollen.

Anmerkung: Die Verwendung von OVER-Funktionen unterscheidet sich für benutzerdefinierte Ausdrücke und berechnete Spalten. In benutzerdefinierten Ausdrücken können Sie Verweise auf Achsen einschließen, während Sie in berechneten Spalten nur auf Spalten oder feste Hierarchien verweisen können.

Weitere Informationen finden Sie unter Verwenden der OVER-Anweisung zum Referenzieren von Datenabschnitten und Verwenden von OVER-Anweisungen in berechneten Spalten.

Option Beschreibung
All Verwendet alle Knoten in der Hierarchie, auf die verwiesen wird. Dies kann hilfreich sein, wenn sich der aktuelle Knoten mit mehr als einer Hierarchie überschneidet. Sie können beispielsweise die relativen Verkäufe der verschiedenen Produktkategorien für jeden Monat anzeigen.

Beispiele für benutzerdefinierte Ausdrücke:

Sum([Sales]) / Sum([Sales]) OVER (Intersect(All([Axis.Color]), [Axis.X]))

Sum([Sales]) / Sum([Sales]) OVER (All([Axis.X])) * 100

Beispiele für berechnete Spalten:

Sum([Sales]) OVER All([Date])

Max([Sales]) OVER Intersect([Category], All([Date]))

AllNext Verwendet alle Knoten (den aktuellen Knoten eingeschlossen) bis zum Ende der Ebene.

Beispiel für einen benutzerdefinierten Ausdruck:

Sum([Sales]) OVER (AllNext([Axis.X]))

Beispiele für berechnete Spalten:

Sum([Sales]) OVER AllNext([Date])

Max([Sales]) OVER Intersect([Category], AllNext([Date]))

AllPrevious Verwendet alle Knoten (den aktuellen Knoten eingeschlossen) ab dem Anfang der Ebene. Hiermit kann die Gesamtsumme berechnet werden.

Beispiele für benutzerdefinierte Ausdrücke:

Sum([Sales]) OVER (AllPrevious([Axis.X]))

Sum([Sales]) OVER (Intersect(Parent([Axis.X]), AllPrevious([Axis.X])))

Beispiele für berechnete Spalten:

Sum([Sales]) OVER AllPrevious([Date])

Max([Sales]) OVER Intersect([Category], AllPrevious([Date]))

FirstNode Wählt den ersten Knoten auf der aktuellen Ebene aus.

Beispiel für einen benutzerdefinierten Ausdruck:

Sum([Sales]) - Sum([Sales]) OVER (FirstNode([Axis.X]))

Beispiel für eine berechnete Spalte:

Sum([Sales]) - Sum([Sales]) OVER (FirstNode([Hierarchy.TimeHierarchy]))

Intersect Gibt die sich überschneidenden Zeilen aus Knoten in verschiedenen Hierarchien zurück. Siehe auch AllPrevious und All.

Beispiel für einen benutzerdefinierten Ausdruck:

Intersect(Parent([Axis.X]), All([Axis.Color]), Parent([Axis.Rows]), ...)

Beispiel für eine berechnete Spalte:

Sum([Sales]) OVER Intersect([Category], AllPrevious([Date]))

LastNode Wählt den letzten Knoten auf der aktuellen Ebene aus.

Beispiel für einen benutzerdefinierten Ausdruck:

Sum([Sales]) - Sum([Sales]) OVER (LastNode([Axis.X]))

Beispiel für eine berechnete Spalte:

Sum([Sales]) - Sum([Sales]) OVER (LastNode([Hierarchy.TimeHierarchy]))

LastPeriods Der aktuelle und die vorherigen n - 1 Knoten werden berücksichtigt. Hiermit können die gleitenden Durchschnittswerte berechnet werden.

Beispiel für einen benutzerdefinierten Ausdruck:

Sum([Sales]) OVER (LastPeriods(3, [Axis.X]))/3

Beispiel für eine berechnete Spalte:

Sum([Sales]) - Sum([Sales]) OVER (LastPeriods([Hierarchy.TimeHierarchy]))

NavigatePeriod Mit dieser Methode können Sie Ihre eigene Knotennavigation festlegen. Die Methode weist vier Argumente auf:

Arg1 ist die Hierarchie zum Navigieren.

Arg2 ist eine Zeichenfolge, die die Ebene in der Hierarchie angibt, zu der Sie navigieren sollten.

Arg3 ist eine Ganzzahl, die die Anzahl der Schritte angibt, die in der Hierarchie auf der durch Arg1 angegebenen Ebene zur Seite verschoben wird.

Arg4 ist optional und bestimmt die Ebene in der Hierarchie, auf die nach unten verschoben werden soll. Dieses Argument kann ausgelassen werden, sodass eine Navigation zur Blattebene erfolgt.

Beispiele für benutzerdefinierte Ausdrücke:

Sum([Sales]) OVER NavigatePeriod([Axis.X], "Year", -1)

Sum([Value]) OVER NavigatePeriod([Axis.X], "Year", 0, 0)

Sum([Sales]) OVER NavigatePeriod([Axis.X], 2, -1, 2)

Beispiel für eine berechnete Spalte:

Avg([Sales]) OVER (NavigatePeriod([Hierarchy.TimeHierarchy],0,-10)) - Avg([Sales])OVER (NavigatePeriod([Hierarchy.TimeHierarchy],0,10))

Next Vergleicht den aktuellen Knoten mit dem nächsten Knoten auf derselben Ebene der Hierarchie. Wenn kein nächster Knoten vorhanden ist, der aktuelle Knoten also der letzte Knoten für die aktuelle Ebene ist, enthält die daraus entstehende Teilmenge keine Zeilen.

Beispiele für benutzerdefinierte Ausdrücke:

Sum([Sales]) - Sum([Sales]) OVER (Next([Axis.X]))

Count() OVER Next([Axis.X], 2)

Beispiel für eine berechnete Spalte:

Max([Sales]) OVER (Intersect([Category],Next([Year])))

NextPeriod Verwendet den nächsten Knoten mit dem nächsten Wert auf derselben Ebene wie der aktuelle Knoten. Wenn kein nächster Knoten vorhanden ist, der aktuelle Knoten also der letzte Knoten für die aktuelle Ebene ist, enthält die daraus entstehende Teilmenge keine Zeilen.

Beispiele für benutzerdefinierte Ausdrücke:

Sum([Sales]) OVER (NextPeriod([Axis.X]))

Count() OVER NextPeriod([Axis.X], 2)

Beispiel für eine berechnete Spalte:

Max([Sales]) OVER (Intersect([Category],NextPeriod([Year])))

ParallelPeriod Verwendet den vorherigen Parallelknoten mit dem gleichen Wert auf derselben Ebene wie der aktuelle Knoten. Hiermit können beispielsweise die Verkaufsergebnisse jedes Monats mit den entsprechenden Monaten des Vorjahres verglichen werden.

Beispiel für einen benutzerdefinierten Ausdruck:

Sum([Sales])-Sum([Sales]) OVER (ParallelPeriod([Axis.X]))

Beispiel für eine berechnete Spalte:

Sum([Sales])-Sum([Sales]) OVER (ParallelPeriod([Hierarchy.TimeHierarchy]))

Parent Verwendet die übergeordnete Teilmenge des aktuellen Knotens. Wenn der Knoten über keinen übergeordneten Knoten verfügt, werden alle Zeilen als Teilmenge verwendet.

Beispiele für benutzerdefinierte Ausdrücke:

Sum([Sales]) / Sum([Sales]) OVER (Parent([Axis.Color]))

Sum([Sales]) / Sum([Sales]) OVER (Parent([Axis.X])) * 100

Avg([Sales]) OVER Parent([Axis.X])

Beispiel für eine berechnete Spalte:

Sum([Sales]) OVER (Parent([Hierarchy.TimeHierarchy]))

Previous Verwendet den vorherigen Knoten auf derselben Ebene als aktuellen Knoten, um das Ergebnis des aktuellen Knotens mit dem vorherigen zu vergleichen. Wenn kein vorheriger Knoten vorhanden ist, der aktuelle Knoten also der erste Knoten für die aktuelle Ebene ist, enthält die daraus entstehende Teilmenge keine Zeilen.

Beispiele für benutzerdefinierte Ausdrücke:

Sum([Sales]) - Sum([Sales]) OVER (Previous([Axis.X]))

Count() OVER Previous([Axis.X], 2)

Beispiel für eine berechnete Spalte:

Max([Sales]) OVER (Intersect([Category],Previous([Year])))

PreviousPeriod Verwendet den vorherigen Knoten mit dem vorherigen Wert auf derselben Ebene wie der aktuelle Knoten. Wenn kein vorheriger Knoten vorhanden ist, der aktuelle Knoten also der erste Knoten für die aktuelle Ebene ist, enthält die daraus entstehende Teilmenge keine Zeilen.

Beispiele für benutzerdefinierte Ausdrücke:

Sum([Sales]) OVER (PreviousPeriod([Axis.X]))

Count() OVER PreviousPeriod([Axis.X], 2)

Beispiel für eine berechnete Spalte:

Max([Sales]) OVER (Intersect([Category],PreviousPeriod([Year])))

Siehe auch Funktionen.