在MDX查询中有以下计算成员:
MEMBER [Asset].[Class].[Fixed Income Derivatives (Inflation Linked)]
AS
(
[Asset].[Class].&[Fixed Income],
[Asset].[Sub Class].&[Derivatives],
[Asset].[Sub Class Type].&[Inflation]
)这在查询中使用,如下所示:
SELECT
{
[Measures].[Market Value]
} ON 0,
NON EMPTY(
{
[Asset].[Class].[Fixed Income Derivatives (Inflation Linked)]
} ON 1
FROM [Asset]这很好,当然也给了我所有与通胀挂钩的固定收益衍生品的市场价值。
我现在试图增加第二个计算成员,这一次给我所有的固定收益脱扣器,这是而不是通胀挂钩。我想,在第二个成员中,这就像EXCEPT一样简单,如下所示:
MEMBER [Asset].[Class].[Fixed Income Derivatives (Non Inflation Linked)]
AS
(
[Asset].[Class].&[Fixed Income],
[Asset].[Sub Class].&[Derivatives],
EXCEPT(
[Asset].[Sub Class Type].[Sub Class Type],
[Asset].[Sub Class Type].&[Inflation]
)
)唉,没有运气--它会产生错误。
函数需要参数的字符串或数值表达式。使用了一个元组集表达式。
这是一个令人困惑的信息,但在SSAS课程中却是如此。我确信我在正确的轨道上,只是有一些轻微的错误,但我不能为我的生活发现问题。
发布于 2010-09-23 06:17:40
您只需要使用聚合函数来实现您的目标,而不会出现错误。
更改您的计算成员定义如下;
MEMBER [Asset].[Class].[Fixed Income Derivatives (Non Inflation Linked)]
AS
(
Aggregate
(
{[Asset].[Class].&[Fixed Income]} *
{[Asset].[Sub Class].&[Derivatives]} *
EXCEPT
(
[Asset].[Sub Class Type].[Sub Class Type],
[Asset].[Sub Class Type].&[Inflation]
)
,Measures.CurrentMember
)
)https://stackoverflow.com/questions/3685403
复制相似问题