Standardmäßig sind Parent-Child-Hierarchien in Analysis Services so eingestellt, dass der DATAMEMBER jedes Parent-Knoten in einem Client angezeigt wird.
Dieser DATAMEMBER ist ein zusätzlicher Knoten, der nur für die Parent-Knoten angezeigt wird. Er enthält die Werte, die in der Dimension genau gegen diesen Knoten geschlüsselt sind. Im Gegensatz dazu zeigt der Parent-Knoten Team1, die Summe aller Unterknoten inklusive seines DATAMEMBER-Knoten an.
Organisation | Summe | Beschreibung |
Team1 | 1000 | Summe von allen Unterknoten + eigenen DATAMEMBER |
Team1(DATAMEMBER) | 100 | eigener DATAMEMBER |
Team2 | 500 | |
Team3 | 400 |
Über das Property MembersWithData kann man die Sichtbarkeit der DATAMEMBER in Clients steuern. NonLeafDataVisible sorgt dafür, dass der DATAMEMBER angezeigt wird. Setzt man das Property auf NonLeafDataHidden wird der DATAMEMBER für Clients ausgeblendet.
Lässt man sich nun mit einem Client den Cube anzeigen, so erhält man folgende Ansicht:
Organisation | Summe |
Team1 | 1000 |
Team2 | 500 |
Team3 | 400 |
Diese Ansicht kann für einen User sehr verwirrend wirken, trotz der korrekten Werte.
Wenn man weiß, dass Werte immer nur auf Blätter des Hierarchiebaumes geschlüsselt werden (nie auf einen Parent), dann macht es Sinn die DATAMEMBER auszublenden. Sollte dies nicht der Fall sein, muss man mit seinen Usern abstimmen, welche Darstellung erwartet und bevorzugt wird.
Hinweis: Bei einer nicht aggregierbaren Parent-Child-Dimension werden die Werte nur auf den DATAMEMBER geschlüsselt (Es wird ja nicht aufsummiert). Sollte man die DATAMEMBER unsichtbar manchen, kann man deshalb auch nicht über die Parent-Child-Hierarchie browsen. |
Zugriff per MDX
Per MDX ist der Zugriff auf einen unsichtbarem DATAMEMBER aber weiterhin möglich. Dies erreicht man indem man die DATAMEMBER-Funktion verwendet:
1: Dimension.Hierarchie.CURRENTMEMBER.DATAMEMBER
Benennung des Datamember
Den DATAMEMBER kann man abweichend von den anderen Knoten benennen. Dies geschieht über das Property MembersWithDataCaption.
Zum Beispiel erhält man mit folgendem Wert:
1: * (Wert)
die folgende Hierarchie-Ansicht:
* ist das Platzhalter für den Namen des Parent
(Wert) ist in diesem Beispiel der String der an den DATAMEMBER angehängt wird
Sie sehen gerade einen Platzhalterinhalt von Facebook. Um auf den eigentlichen Inhalt zuzugreifen, klicken Sie auf die Schaltfläche unten. Bitte beachten Sie, dass dabei Daten an Drittanbieter weitergegeben werden.
Mehr InformationenSie sehen gerade einen Platzhalterinhalt von Instagram. Um auf den eigentlichen Inhalt zuzugreifen, klicken Sie auf die Schaltfläche unten. Bitte beachten Sie, dass dabei Daten an Drittanbieter weitergegeben werden.
Mehr InformationenSie sehen gerade einen Platzhalterinhalt von X. Um auf den eigentlichen Inhalt zuzugreifen, klicken Sie auf die Schaltfläche unten. Bitte beachten Sie, dass dabei Daten an Drittanbieter weitergegeben werden.
Mehr Informationen