2012-02-28 59 views
0

我是MDX的新手, 我有一个要求,那就是使用那个星期六的度量作为那一周的默认值,我有一个时间维度[CALENDAR ], 但是有多个分区,不同的分区有不同的星期开始,这意味着在[CALENDAR]。[h1]。[DATE],星期开始可能是星期四(星期四在自然日历中),在另一个星期日(在自然界日历), 所以我必须使用[日历]。[日期],这是大自然的日历,我可以得到相应的周六,如何在特定的一天使用MDX获得度量

with member measures.[Weekday] 
    as datepart('w',[CALENDAR].[Fiscal].currentmember) 
    member measures.[SatDay] 
    as dateadd('d' 
    ,7-datepart('w',[CALENDAR].[Fiscal].currentmember.MemberValue) 
    ,[CALENDAR].[Fiscal].currentmember.MemberValue) 

    select 
    { 
    [Measures].[Plan Count] 
    ,measures.[Weekday] 
    ,measures.[SatDay] 
    } on 0, 
    [CALENDAR].[Fiscal].[Date] on 1 
    from [MyCube] 

,但我怎么能在这一天的措施?

回答

0

尝试使用包含星期(Year-Week-Date)的日期层次结构进行子选择。

with  member [Measures].[WeekDate] as 
     dateadd('d' ,7 - datepart('w',[Dim Date].[Year - Week - Date].currentmember.MemberValue) 
            ,[Dim Date].[Year - Week - Date].currentmember.MemberValue) 

select {[Measures].[WeekDate], [Measures].[Plan Count]} on 0, 
     [Dim Date].[Year - Week - Date].Children on 1 
from (
    select ([Dim Date].[Year - Week - Date].[Week]) on 0 
    from [cube] 
    where (
     //filters if necessary 
    ) 
)