Excel MDX CubeSet Except()被CubeValue引用时返回空白

0vvn1miw  于 2023-06-07  发布在  其他
关注(0)|答案(1)|浏览(239)

我有三个要报告的元组,我想创建一个“All Other”集。我使用下面的MDX查询从两个元组维度的交叉连接集合中排除三个元组的集合。

Except(
    {
        ([Table1].[Dim1].Children*[Table2].[Dim2].Children)
    },  {
        ([Table1].[Dim1].&[Apples],[Table2].[Dim2].&[Grocery]),
        ([Table1].[Dim1].&[Oranges],[Table2].[Dim2].Members),
        ([Table1].[Dim1].&[Pears],[Table2].[Dim2].Members)
    }
)

这将返回一个包含1,524个成员的有效立方体集,正如预期的那样。但是,当此立方集传递给另一个单元格中的立方值函数时,将返回一个空值。我已经验证了在结果“All Other”集合中应该有数据,并且立方值度量在其他集合(包括单元组和多元组)上起作用。
我还尝试了一个简单的求反(-{tuple set}),但这返回了一个#N/A错误,而不是一个有效的集合。
思考问题可能是什么或其他方法来完成同样的事情?

ztyzrc3y

ztyzrc3y1#

不是一个明确的答案,而是为了帮助调查。
如果你将MDX硬编码到CUBEVALUE函数中,它是否返回一个值-我不知道你的多维数据集的名称或其中的任何度量,所以你需要替换这些值:

=CUBEVALUE("MYCUBENAME", ,"[Measures].[MYMEASURENAME]", "Except(
    {
        ([Table1].[Dim1].Children*[Table2].[Dim2].Children)
    },  {
        ([Table1].[Dim1].&[Apples],[Table2].[Dim2].&[Grocery]),
        ([Table1].[Dim1].&[Oranges],[Table2].[Dim2].Members),
        ([Table1].[Dim1].&[Pears],[Table2].[Dim2].Members)
    }
)" )

如果你只尝试成员而不是元组,它会工作吗?:

=CUBEVALUE("MYCUBENAME", ,"[Measures].[MYMEASURENAME]", 
    "Except(
      [Table1].[Dim1].Children, 
      [Table1].[Dim1].&[Apples]
     )" )

相关问题