将维度属性转换为度量

Converting dimension attribute to measure

我必须将一些度量值乘以维度属性的值。

我正在尝试从这个属性中进行定期测量,然后我可以乘以

我的代码是:

CREATE MEMBER CURRENTCUBE.[Measures].[Formulaa]
 AS 
(
   [DIM RESOURCE].[Formula].Member_Value 
),
VISIBLE = 1 ,  ASSOCIATED_MEASURE_GROUP = 'x'  ;  

CREATE MEMBER CURRENTCUBE.[Measures].[Formulaaa]
 AS 
(
   [Measures].[Formulaa] * [Measures].[Line Quantity In]     
),
VISIBLE = 1 ,  ASSOCIATED_MEASURE_GROUP = 'x'  ;  

在我的浏览器(或查询)[DIM RESOURCE].[Formula] 属性

之前它一直有效

但是,当我删除它时 - 我得到 [Measures].[Formulaa] All

所以我的问题是:我应该怎么做才能避免浏览此属性?

首先,您应该知道,在没有作用域的情况下,层次结构默认为 [ALL] 成员。因此,为了使您的度量 [Measures].[Formulaa] 起作用,您应该在切片器或其中一个轴中包含来自 [DIM RESOURCE].[Formula] 的成员。

其次,你能否尝试更换

[DIM RESOURCE].[Formula].Member_Value

[DIM RESOURCE].[Formula].CURRENTMEMBER.Member_ValueCURRENTMEMBER 选择当前在范围内的 [DIM RESOURCE].[Formula] 层次结构中的成员。

编辑 保持定义不变,但将查询更改如下:

SELECT 
    { 
        [Measures].[Line Quantity In], 
        [Measures].[Quantity In], 
        [Measures].[Formulaa] 
    } ON COLUMNS, 

    { 
        [DIM RESOURCE].[Formula].CHILDREN
    } ON ROWS 

FROM [CMR]

有两种设置作用域的方法。您可以通过在过滤器 axis/sub-select 上设置成员来对多维数据集进行切片,或者您可以在任一轴上指定成员。但是你不能在不同的轴上不相关,同时期望测量值发生变化。这没有意义。