Ssas MTD函数不与作用域一起工作
我希望我的MTD能在这个月的各个日期显示出来。但结果是我只得到了月份级别的数据 当我在SSMS和ff做同样的事情时:Ssas MTD函数不与作用域一起工作,ssas,mdx,Ssas,Mdx,我希望我的MTD能在这个月的各个日期显示出来。但结果是我只得到了月份级别的数据 当我在SSMS和ff做同样的事情时: SCOPE ([Measures].[Net IMS Volume]); ( [Time].[Time Calculations].[MTD] ) = SUM( MTD([Time].[Time Hierarchy 1].CURRENTMEMBER) ,[Time].[Time Calculations].[Current Time] );
SCOPE ([Measures].[Net IMS Volume]);
( [Time].[Time Calculations].[MTD] )
= SUM(
MTD([Time].[Time Hierarchy 1].CURRENTMEMBER)
,[Time].[Time Calculations].[Current Time]
);
END SCOPE;
我在日期级别获取数据。我在YTD函数中也遇到了这种情况。您的时间维度可能键入不正确。要使
YTD
和MTD
按预期工作,需要进行特定的键入
MSDN
对YTD
功能的参考:
在定义的“备注”部分:
如果未指定成员表达式,则默认为当前表达式
第一个层次结构的成员,在第一个层次结构中的级别为“年”
度量值组中时间类型的维度
Ytd函数是PeriodsToDate函数的快捷函数,其中
设置级别所基于的属性层次结构的属性
到年。也就是说,Ytd(成员_表达式)等价于
PeriodsToDate(年份\级别\表达式、成员\表达式)。请注意
当Type属性设置为FiscalYears时,函数将不起作用
您可以通过转换为使用PeriodsToDate来测试这是否是您的问题:
WITH MEMBER [Time].[Time Calculations].MIKE2 AS
SUM
(
MTD([Time].[Time Hierarchy 1].CURRENTMEMBER)
,[Time].[Time Calculations].[Current Time]
)
SELECT
{
([Time].[Time Calculations].[MTD],[Measures].[Net IMS Volume])
,([Time].[Time Calculations].MIKE2,[Measures].[Net IMS Volume])
} ON 0
,[Time].[Time Hierarchy 1].[Date] ON 1
FROM [My Cube];
MTD
和YTD
需要在多维数据集中进行特定的键入-设置好了吗?什么是特定的键入?我将添加一个链接并引用到答案我的答案有帮助吗?
WITH MEMBER [Time].[Time Calculations].MIKE2 AS
SUM
(
PeriodsToDate(
[Time].[Time Hierarchy 1].[Month Level]
, [Time].[Time Hierarchy 1].CURRENTMEMBER
)
,[Time].[Time Calculations].[Current Time]
)
SELECT
{
([Time].[Time Calculations].[MTD],[Measures].[Net IMS Volume])
,([Time].[Time Calculations].MIKE2,[Measures].[Net IMS Volume])
} ON 0
,[Time].[Time Hierarchy 1].[Date] ON 1
FROM [My Cube];