2010-11-11 24 views
1

我们在SSAS中有一个非常稀疏的多维数据集。 MOLP存储中的立方体大小仅为50M字节。编写自己的MDX查询时,可以使用NON EMPTY/NONEMPTY来禁止/过滤空结果。但是我们有第三方工具(Cognos Analysis Studio)供我们的业务用户针对多维数据集运行临时分析。首先,用户使用Cognos Analysis Studio拖动维度和度量,初始结果出现空结果。然后用户试图压制空的结果。需要很长时间才能得出非空的结果。SQL Server分析服务:需要抑制空结果

由于MDX是由Cognos生成的,因此我们无法控制如何生成MDX以针对多维数据集运行。我们使用此多维数据集的用户只对非空结果感兴趣。我们想知道SSAS多维数据集中是否存在行为控制,以始终返回非空结果。

问:

如何我们可以设置(或达到)立方体范围的行为总是抑制空的结果?

+0

这是什么版本的SQL Server? – cairnz 2010-11-12 09:06:56

+0

我们正在使用2008 R2 – LamonteCristo 2010-11-12 16:22:58

回答

1

我认为你要找的功能叫做“零点抑制”。点击“设置”,“取消”, “零和空单元格”。这改变了默认设置,它只会抑制空单元格而不会填充零点。或者,点击报告中的一列。点击顶部的“零点抑制”图标。任何填零的行都会消失。

你可以谷歌的“零压制cognos”得到更多的解释。

+0

感谢您的回复,但我们正在使用Cognos Analysis Studio,而不是报告编写者。我们无法控制如何生成MDX。 – LamonteCristo 2010-11-12 16:24:54

+0

如果对立方体使用已保存的视图,则可能包含已打开的零点抑制。 – rossdavidh 2010-11-22 13:32:30

0

我不知道Cognos Analysis Studio是否允许使用集合。如果是这样,请尝试在MdxScript中针对默认多维数据集度量创建维度属性的non empty。然后使用此集合而不是原始尺寸属性。
例如

CREATE CURRENTCUBE.[Set1] as NonEmpty([Dim1].[Atr1].allmembers, [Measures].DefaultMember);