SSAS数据集Cube不存在或者尚未处理

对Microsoft SQL Server(2008) Analysis Services(以下称SSAS) 多维数据集运行多维表达式 (MDX) 查询时,会返回这个错误消息:XXX Cube不存在,或者尚未处理。其中XXX表示多维度数据集的名称。因调用Cube数据集数据至少得有Cube读取权限,导致该问题发生的原因就是无Cube数据集的权限。

以下为我在项目中对应问题的截图:

图一

对于处理此类问题,我们首先需要查看Microsoft Analysis Server(以下称AS)对应的Cube下公共(非管理员)角色权限,登陆AS,找到对应的Cube公共角色,文中实例项目中公共角色为Role,选中Role后右键属性,见以下示例图,然后选择“资料格资料”选项:

图二

上图中Cube后面的下拉选项中无可用数据集,说明该公共角色无该Cube数据集的任何权限,需要在SSAS项目调整角色设置,给予至少的读取权限。

下面说明如何在SSAS项目中设置公共角色权限。

打开相应的项目,找到项目下的角色节点,选中“Role”角色,如下图示:

图三

然后右键选择“设计工具检视(D)”,便得到了角色编辑界面,再选择Cube选择单,将“存取”下拉菜单下的“无”变更为“读取”,如下图示:

图四

保存后进行部署与处理到服务器端,再次登陆AS,按照文章开头所述,找到“资料格资料”选项,在Cube后的下拉选项中有可用的数据集。

图四

全文完,如有疑问,可评论或留言,我将尽快回复。

本文首发地址:http://pengzhiyong.com/blog/285.html,转载请注明。

原文地址:https://www.cnblogs.com/pengzhiyong/p/3700729.html