SSAS浏览器中的错误(层次结构,维度)

时间:2012-12-05 14:16:46

标签: ssas hierarchy dimension

我有一个用户定义的层次结构:

A>乙

维度键是A和B的组合键。

现在,如果我浏览多维数据集并使用层次结构作为过滤器,它将无效(在度量中不显示任何内容)。

但如果我使用层次结构作为行字段,它将起作用,很好地显示层次结构成员。

有什么想法吗?

2 个答案:

答案 0 :(得分:0)

SSMS和SSRS查询编辑器中的GUI多维数据集浏览器为您编写MDX查询。为了达到很远,你应该开始学习MDX的基础知识。

如果您在X轴上放置尺寸,然后可能取消选中一些项目,则生成的MDX将仅列出Select子句中的那些项目。

select 
{[Measures].[Measure1]} on 0,
{[A].&[ID1], [A].&[ID2], [A].&[ID3]} on 1
From mycube

如果在网格上方的过滤器区域中放置一个维度,它会将过滤器添加到WHERE子句中 - 因此您将看不到维度成员,但您将看到这些度量。您仍然需要在X轴或Y轴上添加一些内容才能获得任何结果

select 
From mycube
Where {[A].&[ID1], [A].&[ID2], [A].&[ID3]}

最后。如果使用窗口顶部的过滤器字段,则自动生成的MDX将创建子多维数据集。同样,您仍然必须指定要在至少一个轴上显示的内容以获得要测量的内容。

Select 
From 
( Select {[A].&[ID1], [A].&[ID2], [A].&[ID3]} on 0 From mycube)

答案 1 :(得分:0)

发现它是什么。

维度由另一个表构成,该表的成员数多于进行度量的表。 (aprrox维度成员比度量成员多50%)

因此,当使用维度作为过滤器时,它会显示许多空行,按设计工作,并且在处理多维数据集时不会失败,因为所有度量键都可以在维度中找到。