MDX 使用PeriodsToDate 错误:日期转换函数中的成员和级别必须属于同一层次结构

问题描述 投票:0回答:0

按如下层次结构:

[Fiscal Calendar].[Fiscal Calendar].[Fiscal Year]
-> [Fiscal Calendar].[Fiscal Calendar].[Fiscal Quarter]  
-> [Fiscal Calendar].[Fiscal Calendar].[Fiscal Month]  
-> [Fiscal Calendar].[Fiscal Calendar].[Fiscal Week]

对于提示的季度,我需要返回一组从年初到(包括所选季度的最后一周)的迄今为止的周数。

我得到本季度最后一周的信息如下:
(我使用 STRTOMEMBER 因为我将在此处使用参数。)

MEMBER [TailWeek] AS Tail( 
                   {Descendants(
                     STRTOMEMBER('[Fiscal Calendar].[Fiscal Calendar].[Fiscal Quarter].&[66]',CONSTRAINED)  
                     ,2,Self)               
                    }
                         ).Item(0).UniqueName

将返回:

[Fiscal Calendar].[Fiscal Calendar].[Fiscal Week].&[860]

我想在PeriodsToDate中使用[TailWeek],如下所示:

SET [WeeksToDate] AS  PeriodsToDate([Fiscal Calendar].[Fiscal Calendar].[Fiscal Year] , 
                    [TailWeek])

但它给出了错误:
日期转换函数中的成员和级别必须属于同一层次结构。

我发现这可行,但我不想在这一周进行硬编码。

SET [WeeksToDate] AS  PeriodsToDate([Fiscal Calendar].[Fiscal Calendar].[Fiscal Year] , 
                    [Fiscal Calendar].[Fiscal Calendar].[Fiscal Week].&[860])

是的,我是 MDX 新手。感谢所有帮助。

mdx
© www.soinside.com 2019 - 2024. All rights reserved.