【问题标题】:MDX Expression : Calculated MemberMDX 表达式:计算成员
【发布时间】:2014-08-27 18:50:37
【问题描述】:

我正在尝试在 Microsoft Analysis Services 多维数据集上创建一个计算成员

有一个现有的维度[Projects][Project Number - Name],其成员沿着“12345 - 项目 X”这一行。我只需要提取项目编号(“12345”)。

我最初以为它会像LEFT(Projects].[Project Number - Name],5) 一样简单,但这会产生null 响应。

即使我只是像[Projects].[Project Number - Name] 一样重复维度,我也会得到null

我尝试了[Projects].[Project Number - Name].Value, [Projects].[Project Number - Name].Members 和许多其他想法,但我(正如您可能看到的)在黑暗中拍摄。

我主要是想在 Tableau 中实现这个功能(需要一个 MDX 表达式,而不是完整的查询),但我也尝试过 MS Excel Power Pivot 中的计算成员功能,它产生的结果完全相同回答 (null) - 这表明我的 MDX 有问题。

【问题讨论】:

  • 感谢这确实让我朝着正确的方向前进。我现在有 `LEFT([Projects].[Project Number - Name].CURRENTMEMBER.NAME,5) 工作,但前提是我还包括工作表其他地方包含的原始 [Projects].[Project Number - Name] 维度。如果我将原始维度取出,计算的成员将变为空...... ???

标签: mdx olap-cube powerpivot tableau-api


【解决方案1】:

我会尝试:

LEFT( [Projects].[Project Number - Name].currentMember.name, 5 )

否则,[Projects].[Project Number - Name] 引用一个成员,然后将其转换为元组并进行评估。所以你的表达式实际上是在处理这个元组评估的结果,而不是成员本身的名称。

【讨论】:

  • 这将返回维度名称(“项目编号 - 名称”)而不是成员值(“12345 项目 X”)....?
  • 抱歉,我忘记了 .currentMember 通话 - 现在可以了吗?
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2011-01-05
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多