示例 6 - 从维度中排除选定的度量值

在该示例中,数据库角色可以访问地域维度中亚洲成员及其后代的单元,但是该角色不能访问该维度中其他任何成员的单元。 数据库角色还不能访问收入度量值的单元,包括亚洲及其后代的收入单元。

以下表达式为设置这些权限的多维表达式 (MDX) 表达式:

Ancestor(Geography.CurrentMember,[Continent]) IS Asia 
AND Not Measures.CurrentMember IS Revenue

查看结果集

根据此数据库角色的这些单元数据权限,对所有单元的查询将返回下表中显示的结果集:

Continent

Country/Region

Cost

Cost

Revenue

Revenue

Tax

Tax

1997

1998

1997

1998

1997

1998

Asia

.

1453

2507

#N/A

#N/A

182

266

.

Japan

1111

2009

#N/A

#N/A

133

210

.

Korea

342

498

#N/A

#N/A

49

56

Europe

.

#N/A

#N/A

#N/A

#N/A

#N/A

#N/A

.

France

#N/A

#N/A

#N/A

#N/A

#N/A

#N/A

.

Germany

#N/A

#N/A

#N/A

#N/A

#N/A

#N/A

N. America

.

#N/A

#N/A

#N/A

#N/A

#N/A

#N/A

.

Canada

#N/A

#N/A

#N/A

#N/A

#N/A

#N/A

.

USA

#N/A

#N/A

#N/A

#N/A

#N/A

#N/A

重要说明重要提示

如果某个 Microsoft Windows 用户或组属于多个数据库角色,则对所有单元的查询将首先导致根据该用户或组所属的各个数据库角色分别生成数据集。 然后,Microsoft SQL Server Analysis Services 将把所有这些数据集组合为一个数据集,再将组合后的数据集返回给该用户或组。