Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/entity-framework/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
MDX-选择多个日期时累计总和不起作用_Mdx_Cumulative Sum - Fatal编程技术网

MDX-选择多个日期时累计总和不起作用

MDX-选择多个日期时累计总和不起作用,mdx,cumulative-sum,Mdx,Cumulative Sum,我已经构建了一个MDX计算成员,它返回一段时间内的累计销售额。 -如果未应用任何筛选器,或者用户筛选时间为1个月,则查询将返回正确的结果 我的问题是,当用户选择多个月时,查询返回全年的累计值 以下是我使用动态集、计算成员和范围编写的内容: 动态设置: PeriodToDate=现有PeriodToDate([Date].[Calendar-YQMD].[Year],[Date].[Calendar-YQMD].CurrentMember) 计算成员: ( PeriodsToDate([Date]

我已经构建了一个MDX计算成员,它返回一段时间内的累计销售额。 -如果未应用任何筛选器,或者用户筛选时间为1个月,则查询将返回正确的结果

我的问题是,当用户选择多个月时,查询返回全年的累计值

以下是我使用动态集、计算成员和范围编写的内容:

动态设置:

PeriodToDate=现有PeriodToDate([Date].[Calendar-YQMD].[Year],[Date].[Calendar-YQMD].CurrentMember)

计算成员:

( PeriodsToDate([Date].[Calendar-YQMD].[Year],[Date].[Calendar-YQMD].CurrentMember) ,[措施][销售额-国外] )

范围:

范围 ( 【日期】【日历-YQMD】【年份】, [措施][销售额-国外] )

这=合计([PeriodToDate],[Measures]。[Sales Amount-Foreign])

结束范围

尝试以下操作:

Create Dynamic Set CURRENTCUBE.SelectedMonths as [Date].[Calendar - YQMD].[Month].Members;

Scope ( [Date].[Calendar - YQMD].[Year], [Measures].[Sales Amount - Foreign] );
    This = Aggregate(PeriodsToDate([Date].[Calendar - YQMD].[Year], Tail(Existing SelectedMonths,1).Item(0).Item(0)));
End Scope;
试试这个:

Create Dynamic Set CURRENTCUBE.SelectedMonths as [Date].[Calendar - YQMD].[Month].Members;

Scope ( [Date].[Calendar - YQMD].[Year], [Measures].[Sales Amount - Foreign] );
    This = Aggregate(PeriodsToDate([Date].[Calendar - YQMD].[Year], Tail(Existing SelectedMonths,1).Item(0).Item(0)));
End Scope;

你好,格雷格。当我们将解决方案转移到生产环境中时,我们在大数据上执行此MDX时面临一个问题。SSAS不返回数据。你对此有什么建议吗?@ZiadMatragi你是说它很慢还是返回零行?它非常慢。我们相信这是因为动态设置。但是我们找不到另一个解决方案。@ZiadMatragi您能测试您的原始代码是慢还是快吗?如果速度慢,则可能是数据大小的问题。如果快,那么它可能是一个MDX的东西。每个人的优化都是不同的,当我们在大小为100MB的数据上运行它时,速度非常快。但是当移动到3GB的dataHello Greg时,速度变得非常慢。当我们将解决方案转移到生产环境中时,我们在大数据上执行此MDX时面临一个问题。SSAS不返回数据。你对此有什么建议吗?@ZiadMatragi你是说它很慢还是返回零行?它非常慢。我们相信这是因为动态设置。但是我们找不到另一个解决方案。@ZiadMatragi您能测试您的原始代码是慢还是快吗?如果速度慢,则可能是数据大小的问题。如果快,那么它可能是一个MDX的东西。每个人的优化都是不同的,当我们在大小为100MB的数据上运行它时,速度非常快。但当移动到3GB数据时,速度变得非常慢