我想在SSAS中编写一个KPI,它将所有员工年龄的平均值都给出。员工的出生日期在Dim_Employee中。我已经阅读了3本充满MDX日期和时间处理建议的书籍,但都没有成功。随着数小时的绝望试验和错误,我尝试了无数次的解决方案,但没有成功。在SSAS中使用DateDiff MDX
出生日期是源数据库中的datetime(空)。我试图解决方案如下:
VBA!DateDiff("yyyy", now(), [Employee].[BirthDate].CurrentMember.Member_Value)
当然,我应该用[Date].[Date].CurrentMember
代替now()
,但为了简单起见我用这个。
在Employee维度中,我使用Date数据类型创建了一个ValueColumn。当我尝试在Management Studio来执行它,它给我回了以下错误:
"The Axis0 function expects a tuple set expression for the argument. A string or numeric expression was used."
当我不使用Member_Value,它给回空,则DateDiff还给-2010
。
因为我对我想写这个关键绩效指标的立方体结构没有责任,所以我搜索了一个不需要新的度量,尺寸的解决方案。 (然而,如果没有向立方体添加新元素的情况下没有解决方案,那么我当然会在给定的立方体中提出改变请求)
这种情况下的解决方案是什么?是否可以在不使用其他度量的情况下编写此KPI?
祝贺解决方案。如果可以,请确保将您的答案标记为“已接受”,以便其他人可以从您的成功中学习。干杯〜 – 2011-12-21 18:23:55