Mitgliederbezogene Funktionen

Verwenden Sie Essbase-Elementfunktionen in Formeln, um Elementlisten und -bereiche anzugeben, Elementlisten zu generieren, Elementnamen zu bearbeiten und mit Elementkombinationen über Dimensionen hinweg zu arbeiten.

In diesem Abschnitt wird die Erstellung von Formeln erläutert, die sich auf Mitglieder beziehen.

Elementlisten und -bereiche angeben

Wenn Sie einige Essbase-Berechnungsfunktionen verwenden, müssen Sie möglicherweise eine Liste mit Gliederungselementen und/oder einen Elementbereich eingeben. Listen können durch Komma getrennte Listen mit literalen Elementnamen sein oder von Berechnungsfunktionen zurückgegeben werden. Bereiche können mit Doppelpunktsyntax angegeben oder von Berechnungsfunktionen zurückgegeben werden.

Beispiel: Die Funktion @ISMBR prüft, ob ein aktuell berechnetes Element mit einer Liste oder einem Bereich angegebener Elemente übereinstimmt.

In der folgenden Tabelle wird die Syntax für die Angabe von Elementen aufgeführt:

Tabelle 17-8: Syntax zum Angeben von Elementlisten und -bereichen

Elementliste oder -bereich Syntax

Ein Element

Der Elementname.

Beispiel:

Mar2001

Eine Liste der Mitglieder

Eine durch Komma getrennte Liste (,) mit Elementnamen.

Beispiel:

Mar2001, Apr2001, May2001

Ein Bereich aller Elemente auf derselben Ebene zwischen und einschließlich der beiden definierenden Elemente

Die beiden definierenden Elementnamen, die durch einen Doppelpunkt (:) getrennt sind. Beispiel:

Jan2000:Dec2000

Ein Bereich aller Elemente in derselben Generation zwischen und einschließlich der beiden definierenden Elemente

Die beiden definierenden Elementnamen, die durch zwei Doppelpunkte (::) getrennt sind.

Beispiel:

Q1_2000::Q4_2000

Eine funktionsgenerierte Liste mit Elementen oder einem Elementbereich

Eine Liste der Elementlisteninhalte und der entsprechenden Funktionen finden Sie unter Elementlisten generieren.

Eine Kombination aus Bereichen und Liste

Trennen Sie jeden Bereich, jede Liste und jede Funktion durch ein Komma (,).

Beispiel:

Q1_97::Q4_98, FY99, FY2000

Oder

@SIBLINGS(Dept01), Dept65:Dept73, Total_Dept

Wenn Sie keine Elementliste oder keinen Elementbereich in einer Funktion angeben, für die eine dieser Elemente erforderlich ist, verwendet Essbase die Elemente der Ebene 0 der als Zeit getaggten Dimension. Wenn keine Dimension als Zeit gekennzeichnet ist, zeigt Essbase eine Fehlermeldung an.

Elementlisten generieren

Mit Essbase-Elementgruppenfunktionen können Sie Elementlisten generieren, die auf einer bestimmten Element- oder Elementliste basieren.

Tabelle 17-9: Liste der Elementgruppenfunktionen

Funktion Inhalt der Mitgliederliste

@ALLANCESTORS

Alle Vorgänger des angegebenen Elements, einschließlich der Vorgänger des angegebenen Elements als gemeinsames Element. Diese Funktion enthält das angegebene Element nicht.

@IALLANCESTORS

Alle Vorgänger des angegebenen Elements, einschließlich der Vorgänger des angegebenen Elements als gemeinsames Element. Diese Funktion enthält das angegebene Element.

@ANCEST

Der Vorgänger des angegebenen Elements auf der angegebenen Generation oder Ebene

@ANCESTORS

Alle Vorgänger des angegebenen Elements (optional bis zur angegebenen Generation oder Ebene), jedoch nicht das angegebene Element

@IANCESTORS

Alle Vorgänger des angegebenen Elements (optional bis zur angegebenen Generation oder Ebene), einschließlich des angegebenen Elements

@LANCESTORS

Alle Vorgänger der angegebenen Elementliste (optional bis zur angegebenen Generation oder Ebene), jedoch ohne die angegebenen Elemente

@ILANCESTORS

Alle Vorgänger der angegebenen Elementliste (optional bis zur angegebenen Generation oder Ebene), einschließlich der angegebenen Elemente

@ATTRIBUT

Alle Basisdimensionswerte, die dem angegebenen Attributdimensionswert zugeordnet sind

@WITHATTR

Alle Basiselemente, die Attributen zugeordnet sind, die den angegebenen Bedingungen entsprechen

@BETWEEN

Alle Elemente, deren Namens-Zeichenfolgenwerte zwischen zwei angegebenen Zeichenfolgetokens liegen und diese enthalten

@CHILDREN

Alle untergeordneten Objekte des angegebenen Elements, jedoch ohne das angegebene Element

@ICHILDREN

Alle untergeordneten Objekte des angegebenen Elements, einschließlich des angegebenen Elements

@CURRMBR

Aktuelles Element, das für die angegebene Dimension berechnet wird

@DESCENDANTS

Alle abhängigen Elemente des angegebenen Elements (optional bis zur angegebenen Generation oder Ebene), jedoch nicht das angegebene Element oder die abhängigen Elemente gemeinsamer Elemente

@IDESCENDANTS

Alle Nachkommen des angegebenen Elements (optional bis zur angegebenen Generation oder Ebene), einschließlich des angegebenen Elements, jedoch keine Nachkommen von gemeinsamen Elementen

@LDESCENDANTS

Alle Nachkommen der angegebenen Liste von Elementen (optional bis zur angegebenen Generation oder Ebene), jedoch ohne die angegebenen Elemente

@ILDESCENDANTS

Alle Nachkommen der angegebenen Liste von Elementen (optional bis zur angegebenen Generation oder Ebene), einschließlich der angegebenen Elemente

@RDESCENDANTS

Alle Nachkommen des angegebenen Elements (optional bis zur angegebenen Generation oder Ebene), einschließlich Nachkommen von gemeinsamen Elementen, jedoch nicht des angegebenen Elements

@IRDESCENDANTS

Alle Nachkommen des angegebenen Elements (optional bis zur angegebenen Generation oder Ebene), einschließlich des angegebenen Elements und der Nachkommen gemeinsamer Elemente

@EQUAL

Elementnamen, die mit dem angegebenen Token-Namen übereinstimmen

@NOTEQUAL

Elementnamen, die nicht mit dem angegebenen Token-Namen übereinstimmen

@EXPAND

Erweitert eine Elementsuche, indem eine Elementsatzfunktion für jedes Element in einer Elementliste aufgerufen wird

@GENMBRS

Alle Elemente der angegebenen Generation in der angegebenen Dimension

@LEVMBRS

Alle Elemente der angegebenen Ebene in der angegebenen Dimension

@LIKE

Elementnamen, die dem angegebenen Muster entsprechen.

@LIST

Separate Listen von Elementen, die von Funktionen verarbeitet werden müssen, die mehrere Listenargumente erfordern

@MATCH

Alle Elemente, die der angegebenen Platzhalterauswahl entsprechen

@MBRCOMPARE

Elementnamen, die den Vergleichskriterien entsprechen

@MBRCOMPARE

Übergeordnetes Objekt des angegebenen Elements

@MITGLIED

Das Element mit dem Namen, der als Zeichenfolge bereitgestellt wird

@MERGE

Eine zusammengeführte Liste von zwei Elementlisten, die von einer anderen Funktion verarbeitet werden sollen

@PARENT

Übergeordnetes Element des aktuellen Elements, das in der angegebenen Dimension berechnet wird

@RANGE

Eine Elementliste, die das angegebene Element aus einem Dimension mit dem angegebenen Elementbereich aus einem anderen Dimension kreuzt

@ENTFERNEN

Liste der Mitglieder, aus denen einige Mitglieder entfernt wurden

@RELATIVE

Alle Elemente der angegebenen Generation oder Ebene, die sich über oder unterhalb der angegebenen Elemente befinden

@TEILEN

Eine Elementliste, die alle gemeinsamen Elemente der angegebenen Elemente identifiziert

@SIBLINGS

Alle gleichgeordneten Elemente des angegebenen Elements, aber nicht das angegebene Element

@ISIBLINGS

Alle gleichgeordneten Elemente des angegebenen Elements, einschließlich des angegebenen Elements

@LSIBLINGS

Alle gleichgeordneten Elemente, die dem angegebenen Element im Datenbank-Outline vorangehen, jedoch nicht das angegebene Element

@RSIBLINGS

Alle gleichgeordneten Elemente, die dem angegebenen Element im Datenbank-Outline folgen, jedoch nicht dem angegebenen Element

@ILSIBLINGS

Alle gleichgeordneten Elemente, die dem angegebenen Element im Datenbank-Outline vorangehen, einschließlich des angegebenen Elements

@IRSIBLINGS

Alle gleichgeordneten Elemente, die dem angegebenen Element im Datenbank-Outline folgen, einschließlich des angegebenen Elements

@SHIFTSIBLING

Das Geschwister in der angegebenen Entfernung zum Mitglied

@NEXTSIBLING

Das nächste oder rechtsextreme Geschwister des Mitglieds

@PREVSIBLING

Das vorherige oder am weitesten links liegende gleichgeordnete Element

@UDA

Alle Elemente mit einem gemeinsamen benutzerdefinierten Attribut, das auf dem Essbase-Server definiert ist

@XRANGE

Elementliste, die den Elementbereich zwischen (und unter Einbeziehung) zwei angegebenen einzelnen oder dimensionsübergreifenden Elementen auf derselben Ebene identifiziert

Elementnamen bearbeiten

Sie können mit Essbase-Elementnamen als Zeichenfolgen in Ihren Block Storage-Formeln und Berechnungsskripten arbeiten.

In der folgenden Tabelle sind Funktionen zur Bearbeitung von Zeichenfolgen aufgeführt:

Tabelle 17-10: Liste der Zeichenfolgenbearbeitungsfunktionen

Funktion Zeichenfolgen bearbeiten

@CONCATENATE

Eine Zeichenfolge erstellen, die das Ergebnis ist, wenn ein Elementname oder eine angegebene Zeichenfolge an einen anderen Elementnamen oder eine andere Zeichenfolge angehängt wird

@NAME

Elementnamen als Zeichenfolge zurückgeben

@SUBSTRING

Teilzeichenfolge von Zeichen aus einer anderen Zeichenfolge oder aus einem Elementnamen zurückgeben

Dimensionsübergreifend mit Elementkombinationen arbeiten

Dimensionsübergreifende Operatoren -> in Essbase-Formeln sind eine Möglichkeit, mehrdimensionale Datenwerte bestimmter Elementkombinationen zu referenzieren. Der FIX-Befehl ist möglicherweise besser für die Performance.

Verwenden Sie den dimensionsübergreifenden Operator, um auf Datenwerte bestimmter Elementkombinationen zu verweisen. Erstellen Sie den dimensionsübergreifenden Operator mit einem Bindestrich (-) und einem Größer-als-Symbol (>). Fügen Sie keinen Raum zwischen dem dimensionsübergreifenden Operator und den Elementen ein.

Hinweis:

Die Verwendung des dimensionsübergreifenden Operators kann erhebliche Auswirkungen auf die Performance haben. Optimierungsrichtlinien finden Sie unter Dimensionsübergreifende Operatoren in Elementformeln.

Unten sehen Sie eine vereinfachte Darstellung eines mehrdimensionalen Cubes, in dem Jan die erste Spalte auf der X-Achse, Sales die vierte und oberste Zeile auf der Y-Achse und Actual die erste Zeile auf der Z-Achse ist. In diesem Beispiel ist "Sales -> Jan -> Actual" die Schnittmenge eines einzelnen Datenwerts.

Abbildung 17-2: Einzelnen Datenwert angeben


Diese Abbildung zeigt einen Cube, in dem der Schnittpunkt eines einzelnen Datenwerts angezeigt wird, wie im Text vor der Tabelle beschrieben.

Das folgende Beispiel, das jedem Produkt auf jedem Markt verschiedene Aufwendungen zuweist, veranschaulicht die Verwendung des dimensionsübergreifenden Operators. Der Wert von Misc_Expenses für alle Produkte in allen Märkten ist bekannt. Die Formel weist jeder Kombination aus Produkt -> Markt einen Prozentsatz des Gesamtwertes Misc_Expenses zu. Die Zuordnung basiert auf dem Umsatzwert für jedes Produkt in jedem Markt.

Misc_Expenses = Misc_Expenses -> Market -> Product * 
   (Sales / ( Sales -> Market -> Product));

Essbase durchläuft die Datenbank und führt folgende Berechnungen durch:

  1. Teilt den Umsatzwert für die aktuelle Mitgliederkombination durch den Gesamtumsatzwert für alle Märkte und alle Produkte (Umsatz -> Markt -> Produkt).

  2. Multipliziert den in Schritt 1 berechneten Wert mit dem Misc_Expenses-Wert für alle Märkte und alle Produkte (Misc_Expenses -> Market -> Product).

  3. Weist das Ergebnis für die aktuelle Elementkombination Misc_Expenses zu.