Beispiel 3 – Verwenden der Except-Funktion, um Elemente aus einer verweigerten Gruppe herauszunehmen
In diesem Beispiel besitzt eine Datenbankrolle die in der folgenden Tabelle aufgeführten Dimensionssicherheitseinstellungen.
Attribute |
IsAllowed |
AllowedSet |
DeniedSet |
ApplyDenied |
VisualTotals |
---|---|---|---|---|---|
State |
True |
|
|
True |
False |
City |
True |
|
EXISTS (City..Members, EXCEPT (State.members, {CA})) |
True |
False |
Gender |
False |
|
|
True |
False |
Die Ergebnisse dieser Dimensionssicherheitseinstellungen sind die folgenden:
Die für das City-Attribut angegebene verweigerte Gruppe beschränkt durch die Schlüsselwörter EXISTS und EXCEPT die Sichtbarkeit nachfolgender Elemente neu hinzugefügter Elemente des State-Attributs.
Das Gender-Attribut ist nicht sichtbar, weil die Eigenschaft IsAllowed für dieses Attribut auf False festgelegt ist.
Überprüfen des Resultsets
Auf der Grundlage dieser Dimensionssicherheitseinstellungen für die Rolle (und basierend auf dem Cubezugriff für alle Zellen) wird vom Cube bei einer Abfrage aller Elemente das folgende Resultset zurück gegeben.
All Level |
State |
City |
Gender |
Sales Amount |
---|---|---|---|---|
All Offices |
|
|
|
27300 |
|
California |
|
|
12900 |
|
|
San Jose |
|
4200 |
|
|
San Francisco |
|
4400 |
|
|
Los Angeles |
|
4300 |
|
Washington |
|
|
8700 |
|
Oregon |
|
|
5700 |
Siehe auch