示例 3 - 使用 Except 函数从拒绝集中排除成员
在此示例中,数据库角色具有如下表中所示的维度安全性设置。
Attribute |
IsAllowed |
AllowedSet |
DeniedSet |
ApplyDenied |
VisualTotals |
---|---|---|---|---|---|
州省市自治区 |
True |
|
|
True |
False |
市县 |
True |
|
EXISTS (City..Members, EXCEPT (State.members, {CA})) |
True |
False |
性别 |
False |
|
|
True |
False |
以下为这些维度安全性设置的结果:
为城市属性指定的拒绝集通过 EXISTS 和 EXCEPT 关键字限制州省市自治区属性的新添加成员的后代的可见性。
性别特性不可见,因为此特性的 IsAllowed 属性设置为 False。
查看结果集
根据该角色的这些维度安全性设置(并根据对所有单元的多维数据集的权限),在查询所有成员时将从多维数据集中返回以下结果集:
全部级别 |
州省市自治区 |
市县 |
性别 |
销售额 |
---|---|---|---|---|
All Offices |
|
|
|
27300 |
|
California |
|
|
12900 |
|
|
San Jose |
|
4200 |
|
|
San Francisco |
|
4400 |
|
|
Los Angeles |
|
4300 |
|
Washington |
|
|
8700 |
|
Oregon |
|
|
5700 |