对于最近版本的SSAS中的钻取行集,可以返回的行限制为10,000行。如果选择集包含的数据超过10K限制,我担心返回部分结果的风险。在这种情况下,是否存在显示警告或不返回任何行的机制?
发布于 2013-02-11 19:51:44
MDX钻穿允许您为返回的行集指定一个限制。据我所知,它没有“显示这将产生多少行”的功能。在执行钻取之前,您可以通过为每个事实表设置一个计数度量值,并为所讨论的切片选择这个值来伪造它。
我不确定Excel 2010是否有很多现成的设施来管理这个问题。当我还是个孩子的时候,Excel 2000-2003并没有从盒子里钻出来,所以你不得不自己翻滚。这是一个用于执行钻取操作的VBA脚本的示例。您可以很容易地将菜单挂在枢轴表上,从而提供对此类脚本的访问。这至少允许您提供某种形式的验证。
通过API对枢轴表进行反思是可能的,如果有点谨慎的话。你可以得到尺寸和切片状态。在Server 2000天中,我通过这种方式进行了一次“演练”,允许您在同一片上打开另一个多维数据集(想想保险单上的索赔)。现在,SSAS支持具有多个事实表(度量值组)的多维数据集,这就不太有用了。
但是,如果您能够拦截(IIRC)双击事件,该事件将启动钻取并将其敲到头部,那么您可以使用自省来制定一个计数查询,以防止出现过大的钻取。然后会弹出一个对话框,大意是“您将钻入1,347,961行。”
https://dba.stackexchange.com/questions/34534
复制相似问题