Esempio 6: Utilizzo delle funzioni Exists ed Except per specificare set delle autorizzazioni concesse e negate
In questo esempio vengono utilizzate le impostazioni di protezione delle dimensioni per il ruolo del database illustrate nella tabella seguente.
Attribute |
IsAllowed |
AllowedSet |
DeniedSet |
ApplyDenied |
VisualTotals |
---|---|---|---|---|---|
State |
True |
|
EXCEPT (State..Members, {California}) |
False |
True |
City |
True |
EXISTS (City..Members, {California} + {Seattle}) |
|
False |
False |
Gender |
False |
|
|
True |
False |
I risultati delle impostazioni di protezione delle dimensioni sono i seguenti:
Il set delle autorizzazioni negate per l'attributo State specifica che solo il membro California può essere visualizzato dal ruolo del database. Tutti gli altri membri esistenti e gli eventuali nuovi membri aggiunti dell'attributo State non saranno visibili.
I membri inclusi nelle gerarchie di attributi contenenti un membro dell'attributo State restano visibili anche se all'attributo State è associato un set delle autorizzazioni negate. I membri inclusi nelle altre gerarchie di attributi restano visibili, in quanto la proprietà ApplyDenied per gli attributi State e City è impostata su False.
La città di Seattle è visibile in quanto è inclusa nel set delle autorizzazioni concesse per l'attributo City.
I totali aggregati per gli attributi All Level e State includono solo i valori per i membri visibili, in quanto la proprietà VisualTotals per entrambi gli attributi è impostata su True.
Esame del set dei risultati
In base alle impostazioni di protezione delle dimensioni per il ruolo e all'accesso del cubo a tutte le celle, viene restituito il set di risultati seguente dal cubo quando viene eseguita una query su tutti i membri.
All Level |
State |
City |
Gender |
Sales Amount |
---|---|---|---|---|
All Offices |
|
|
|
17400 |
|
California |
|
|
12900 |
|
|
San Jose |
|
4200 |
|
|
San Francisco |
|
4400 |
|
|
Los Angeles |
|
4300 |
|
Washington |
|
|
4500 |
|
|
Seattle |
|
4500 |