SSAS OLAP Cube - Sum 度量仅在存在键时有效

Posted

技术标签:

【中文标题】SSAS OLAP Cube - Sum 度量仅在存在键时有效【英文标题】:SSAS OLAP Cube - Sum measure only works when keys are present 【发布时间】:2019-03-01 18:46:09 【问题描述】:

(这是对我实际设置的模拟,以帮助我找出问题所在。)


我有一个事实表和一个维度表,由一个 id 字段链接。

我的目标是制定一个衡量我的多维数据集中所有“thing_count”(整数)值的度量。

如果用户一分为二,它应该显示事实表中所有记录的总“thing_count”。如果按维度中的“category_name”拆分,则应显示每个类别的总“thing_count”。

我试图通过在我的多维数据集中创建一个 SUM 度量来实现这一点:

它有效,但不是我想要的方式

它总是显示(null)除非我从维度中拖入“id”字段。

仅测量:


度量和类别:


度量、类别和 ID:


如何让度量显示值而不需要存在键?


编辑:

应 GregGalloway 的要求(我已经编辑了名称以便屏幕截图更易于理解):

【问题讨论】:

你能去DSV并探索维度表来查看其中的行吗?我想查看您的维度中 id=1 的行的屏幕截图。您能否截取多维数据集编辑器中的 Dimension Usage 选项卡?你能截图维度编辑器的属性关系选项卡吗? 如果我的回答解决了问题,你可以跳过上面的请求,很明显。 截图添加@GregGalloway 【参考方案1】:

对此行为(无聚合)的一个常见解释是您无意中注释掉了多维数据集的 MDX 脚本中的 CALCULATE; 语句。请检查该声明是否仍然存在。

【讨论】:

我没有使用我自己的 MDX 脚本来生成度量。根据我的问题中的屏幕截图,我正在通过 SSAS 使用内置方法。 你能去立方体设计器的计算选项卡并切换到脚本视图并截图吗?我想 100% 确定 CALCULATE 语句仍然存在。 见原帖截图。没有任何计算成员。表单视图显示“当前没有为此模型定义计算。” 所以需要在MDX脚本中添加以下内容并部署。那应该可以解决它:CALCULATE; 这是一个问得很好的问题。你有我的赞成票。很高兴我们能找到一个快速的解决方案。干杯

以上是关于SSAS OLAP Cube - Sum 度量仅在存在键时有效的主要内容,如果未能解决你的问题,请参考以下文章

使用 Python 连接到 SSAS OLAP Cube

SSAS Cube 中的计算度量要么非常慢,要么不具备所有功能

ssas cube:数据是如何被拉取的?

MDX SSAS OLAP -- 根据维度选择切换属性

SSAS MDX 计算度量 - [ITEMS] 的 COUNT 个。[Item] 分组 [Items].[Item Group]

在 Snowflake 中构建 OLAP Cube