首页 文章

SSAS MDX获取基于其他属性维度和动态度量的维度属性

提问于
浏览
0

我目前遇到问题,因为我需要根据对多维数据集本身执行的计算,动态关联多维立方体中维度的属性 .

根据用户选择的日期,我必须计算某种类型材料的库存天数 . 然后基于返回值和材料类型以及相同的组,关联旋转尺寸的属性 . 也就是说,我有一个Dimension Type of Material,Dimension Group和Rotation维度 . 然后根据库存天数的计算(此计算已经完成并且正常工作),材料的类型和与特定属性相关联的组 .

例:

Product Prod_Typ    Group
PrdA    ZMA1        SAID

如果我的度量“天数”是89,我必须关联ID“4”(基于下表),因为我的度量返回0(INI)和90(END)之间的值:

ID  MATTYP  GRP   COD_ID    INI  END        DSC
1   ZMA     CONS    1       0    90         TextA
2   ZMA     CONS    2       91   180        TextB
3   ZMA     CONS    3       181  99999      TextC
4   ZMA1    SAID    1       0    90         TextD
5   ZMA1    SAID    2       91   180        TextE
6   ZMA1    SAID    3       181  99999      TextF

1 回答

  • 0

    您需要执行以下操作 .

    • 使您显示事实的映射表 . 让我们说Range_Fact

    • 将Range_Fact连接到Prod_Typ和Group . 这很简单,因为它们已经作为尺寸出现 .

    • 在Fact_Range中创建两个度量分钟(INI)和最大值(结束) .

    • 现在在您的查询中,您需要根据min(ini)和Max(end)之间的天数计算进行过滤 . 你的查询就像

    在列上选择[Measures] . [DayCount],

    filter(([DimProduct] . [PrdA] . [Prda],[DimProductType] . [Pod_Typ] . [Pod_Typ],[DimGroup] . [Group] . [Group]),[Measures] . [DayCount]> = [测量] . [minCI]和[测量] . [DayCount] <= [测量] . [maxEnd])来自[MyCube]

相关问题