範例 3—使用 Except 函數來排除拒絕的集合中的成員
在此範例中,資料庫角色具有下表所顯示的維度安全性設定。
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 |
這些維度安全性設定的結果如下:
對 City 屬性指定的拒絕集合,透過 EXISTS 和 EXCEPT 關鍵字,會限制 State 屬性的新加入成員之下階出現與否。
Gender 屬性看不見,因為這個屬性的 IsAllowed 屬性設定為 False。
檢閱結果集
根據角色的這些維度安全性設定 (以及根據所有資料格的 Cube 存取權限),查詢所有成員時,會從 Cube 傳回下列結果集。
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 |