Dynamic SSRS MDX数据集需要动态字段源,是否有解决方法?
我在下面的MDX查询中遇到了一个问题。问题在于TOPCOUNT,我使用案例陈述来计算我在计算什么 INVESTOR、ADVISER和ADVISERGROUP实际上都是同一维度,链接到事实表中的不同字段,即ADVISER的维度是Entity.IDKey->fact.advisorkey,INVESTOR的维度是Entity.IDKey->fact.InvestorKey 因此,问题是所有数据集都将返回相同的字段名,[ID KEY],但会有不同的位置,即数据集字段源定义需要不同 在SSRS中,它只适用于一种情况,即它在设计时运行的情况,而其他情况下返回的结果不正确。 这有什么办法吗Dynamic SSRS MDX数据集需要动态字段源,是否有解决方法?,dynamic,reporting-services,dataset,field,mdx,Dynamic,Reporting Services,Dataset,Field,Mdx,我在下面的MDX查询中遇到了一个问题。问题在于TOPCOUNT,我使用案例陈述来计算我在计算什么 INVESTOR、ADVISER和ADVISERGROUP实际上都是同一维度,链接到事实表中的不同字段,即ADVISER的维度是Entity.IDKey->fact.advisorkey,INVESTOR的维度是Entity.IDKey->fact.InvestorKey 因此,问题是所有数据集都将返回相同的字段名,[ID KEY],但会有不同的位置,即数据集字段源定义需要不同 在SSRS中,它只适
WITH MEMBER [Measures].[Previous Period] as
( [Measures].[Fact TOL Activity Count] ,
ParallelPeriod(
IIF(@GroupBy = 'Y', [Date].[Fiscal].[Fiscal Year],IIF(@GroupBy = 'Q' , [Date].[Fiscal].[Fiscal Quarter], [Date].[Fiscal].[Fiscal Month]))
, 1
,[Date].[Fiscal].CurrentMember ))
MEMBER [Measures].[Current Period] as [Measures].[Fact TOL Activity Count]
MEMBER [Measures].[CPeriod] as [Date].[Fiscal].CurrentMember.Name
MEMBER [Measures].[PPeriod] as
ParallelPeriod(
IIF( @GroupBy = 'Y', [Date].[Fiscal].[Fiscal Year], IIF( @GroupBy = 'Q' , [Date].[Fiscal].[Fiscal Quarter], [Date].[Fiscal].[Fiscal Month]))
, 1
,[Date].[Fiscal].CurrentMember ).Name
MEMBER [Measures].[Growth] as
IIF (ISEMPTY([Measures].[Previous Period]), 0 ,
[Measures].[Fact TOL Activity Count]/ [Measures].[Previous Period] ), FORMAT = "Percent"
SELECT
{
[Measures].[Previous Period], [Measures].[Current Period], [Measures].[Growth], [Measures].[PPeriod],[Measures].[CPeriod]
} ON COLUMNS,
( TopCount(
Except({
CASE [Dim User Type].[User Type Key].CurrentMember.NAME
WHEN "Adviser" THEN [ADVISER].[ID Key].children
WHEN "Firm" THEN [ADVISERGROUP].[ID Key].children
WHEN "Investor" THEN [INVESTOR].[ID Key].children
ELSE [INVESTMENTMANAGER].[ID Key].children
END
} ,
CASE [Dim User Type].[User Type Key].CurrentMember.NAME
WHEN "Adviser" THEN [ADVISER].[ID Key].[Unknown]
WHEN "Firm" THEN [ADVISERGROUP].[ID Key].[Unknown]
WHEN "Investor" THEN [INVESTOR].[ID Key].[Unknown]
ELSE [INVESTMENTMANAGER].[ID Key].[Unknown]
END
)
, 10
, ( [Measures].[Growth], STRTOMEMBER(@CurrentPeriod, CONSTRAINED), [Dim EVENTTYPE].[IASEVENTTYPEKEY].&[ET00000040], STRTOMEMBER(@UserTypeKey, CONSTRAINED))
)) on rows
FROM [TOL Metrics Usage]
where ( [Dim EVENTTYPE].[IASEVENTTYPEKEY].&[ET00000040], STRTOMEMBER(@UserTypeKey, CONSTRAINED), STRTOMEMBER(@CurrentPeriod, CONSTRAINED) )
您将@UserTypeKey作为参数。因此,您可以根据基于此参数的报告进行定位 如果希望基于名称进行筛选,而不希望仅为该名称创建另一个数据集,则还可以添加另一个计算成员
MEMBER [Measures].[UserTypeKeyName] AS [Dim User Type].[User Type Key].CurrentMember.NAME