iccube创建从层次结构中选择的类别成员,不包括另一个

时间:2015-10-19 16:10:45

标签: mdx iccube iccube-reporting

使用IcCube,我需要创建“预选”,我将在报告中包含这些内容,这样我的用户就无需选择多个参数来获取最常用的选项。

我创建了一个STATS维度«GroupMaladies»,其中包含1个层次结构«Maladies»。

使用以下命令,我可以在我的报告中创建我可以使用的类别成员(在多维数据集的高级脚本中)...

(来自同一层级,同一级别的多个代码)

a[0] = a[0] * b

(来自相同层次结构,不同级别的多个代码)

   CREATE CATEGORY MEMBER [GroupMaladies].[Maladies].[Toutes].[ group 1] as {
     [Classification GHM].[DA_GP_GA_GHM].[All-M].&[D09].&[X08].&[G078],
    [Classification GHM].[DA_GP_GA_GHM].[All-M].&[D19].&[X15].&[G079] }

(来自多个维度的多个代码)

CREATE CATEGORY MEMBER [GroupMaladies].[Maladies].[Toutes].[ Group 2] as { 
[Classification GHM].[DA_GP_GA_GHM].[All-M].&[D02].&[C09].&[G024],
[Classification GHM].[DA_GP_GA_GHM].[All-M].&[D02].&[X05],
[Classification GHM].[DA_GP_GA_GHM].[All-M].&[D01].&[X02]}

(整个层次结构减去1或其中一些组件)

CREATE CATEGORY MEMBER [GroupMaladies].[Maladies].[Toutes].[ Group3 <18] as { 
[Classification GHM].[DA_GP_GA_GHM].[All-M].&[D12].&[C17].&[G106]}  *  {[Tranche Age].[Tranche Age].[Tranche].[< 18 ans]}

现在,我想使用整个层次结构,但是从同一维度的另一个层次结构中排除某些值:

CREATE CATEGORY MEMBER [GroupMaladies].[Maladies].[Toutes].[Group 4] as 
except({[Classification GHM].[DA_GP_GA_GHM].[All-M]}, 
       {[Classification GHM].[DA_GP_GA_GHM].[All-M].&[D15].&[C19].&[G127].&[11C05]})

但最后一个场景不起作用...... 任何人都可以提供帮助吗?

1 个答案:

答案 0 :(得分:2)

在icCube中,您有一组用于构建类别的函数,这些函数允许对事实(或子多维数据集)进行基本的集合操作。

您上次的MDX声明:

CREATE CATEGORY MEMBER [GroupMaladies].[Maladies].[Toutes].[Group X] as 
[Classification GHM].[ASO].[All-M].&[C]
-[Classification GHM].[DA_GP_GA_GHM].[All-M].&[D15].&[C19].&[G127].&[11C05] 
-[Classification GHM].[DA_GP_GA_GHM].[All-M].&[D15].&[C19].&[G127].&[11C11] 
-[Classification GHM].[DA_GP_GA_GHM].[All-M].&[D15].&[C19].&[G127].&[11C13]
-[Classification GHM].[DA_GP_GA_GHM].[All-M].&[D15].&[C20].&[G128].&[12C04]

相同
CREATE CATEGORY MEMBER [GroupMaladies].[Maladies].[Toutes].[Group X] as 
[Classification GHM].[ASO].[All-M].&[C]

为什么?

在一组成员之间应用减号 - 使用Except函数 - 并且不应用于我们正在寻找的事实或子多维数据集。

<强>解决方案

所以你要在子管上寻找减负操作:

可以使用SubcubeMinus函数执行减号。随意检查其他设置操作为交叉,联合,补充和对称差异。