2012-12-05 29 views
0

我有一个用户定义的层次结构:在SSAS浏览器中的一个错误(层次结构,尺寸)

A> B

尺寸键是A的组合物键和B.

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

但是,如果使用层次作为行字段,它会工作,表现出很好的层次结构的成员。

任何想法?

+0

这可能是一个计算出的量度,你试图展示什么?您在过滤器中用于比较的操作员是什么?层次结构级别的值是否出现在过滤器表达式字段中? –

+0

你可以添加一些示例代码来解释你的意思吗?您是使用GUI工具创建查询还是编写MDX? – Bill

+0

我在GUI中使用多维数据集浏览器(并尝试在Excel中的透视表)。 我没有使用任何计算的度量。具有维度过程的立方体很好。 – user1800552

回答

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) 
+0

如果我使用不在事实表中的维度成员,也许这将显示为空? – user1800552

+0

GUI工具不应让您使用未链接到事实表的维度。如果过滤到与任何事实数据都没有关联的维成员,您将得到一个NULL /空值。 – Bill

0

发现它是什么。

尺寸是由另一个表格构成的,该表格具有比从中进行度量的表更多的成员。 (aprrox维度成员比度量成员多50%)

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