Was ist der beste Weg, um ein Mitglied und alle seine Nachkommen in MDX zur Liste?

StackOverflow https://stackoverflow.com/questions/147953

  •  02-07-2019
  •  | 
  •  

Frage

In einer OLAP-Datenbank mit denen ich arbeite gibt es eine ‚Location‘ Hierarchie der Ebenen aus Unternehmen, Region, Ort, Standort, Raum, Bis. Für eine bestimmte Firma brauche ich einige MDX zu schreiben, die alle Regionen, Bereiche und Standorte (aber nicht alle Ebenen unterhalb Site) auflistet. Ich dies mit der folgenden MDX am Erreichen

Aktuell
HIERARCHIZE({
[Location].[Test Company], 
Descendants([Location].[Test Company], [Location].[Region]), 
Descendants([Location].[Test Company], [Location].[Area]), 
Descendants([Location].[Test Company], [Location].[Site])
})

Da mein Wissen über MDX begrenzt ist, ich frage mich, ob es ein einfacherer Weg, dies zu tun war, mit einem einzigen Befehl vielmehr, dass vier? Gibt es einen weniger ausführlich Weg, dies zu achieveing, oder ist mein Beispiel der einzige Weg, dies zu erreichen?

War es hilfreich?

Lösung

DESCENDANTS([Location].[Test Company],[Location].[Site], SELF_AND_BEFORE)

Andere Tipps

Der Befehl Sie wollen, ist DESCENDANTS. Halten Sie die ‚Stammbaum‘ Analogie im Auge, und man kann sehen, dass dies die Nachkommen eines Mitglieds auflistet, so weit wie Sie wollen.

Sie können die 'Distanz' (in Stufen) aus dem gewählten Elemente angeben, 3 in Ihrem Fall.

Es gibt ein paar seltsame Optionen, die Sie mit dem dritten Argument angeben, können Sie SELF_AND_AFTER wollen, finden Sie unter http://msdn.microsoft.com/en-us/library/ms146075.aspx

EDIT - oops, wie santiiiii bemerkt, sollte es SELF_AND_BEFORE sein

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top