Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/reporting-services/3.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
Reporting services 使用SSAS多维数据集时间计算的SSRS报告_Reporting Services_Ssas_Cube - Fatal编程技术网

Reporting services 使用SSAS多维数据集时间计算的SSRS报告

Reporting services 使用SSAS多维数据集时间计算的SSRS报告,reporting-services,ssas,cube,Reporting Services,Ssas,Cube,我正在寻找以下问题的优化解决方案- 我有一个包含日期维度的多维数据集,它有一个层次结构月->季度->年 我已经创建了一个立方体,一切都很好。现在,我的ssrs报告需要所有维度customer sales属性以及以下计算 上个月的利润, 当月利润, 最近6个月的利润(每月上市), 上个月的交易, 去年利润与本年利润之比 因为我已经创建了一个层次结构,所以我每个月、每年和每个季度的所有计算都已经在多维数据集中预先计算过了。现在要检索上面列出的计算,进行这些时间计算的最佳方法是什么?将这些计算放在多维

我正在寻找以下问题的优化解决方案-

我有一个包含日期维度的多维数据集,它有一个层次结构月->季度->年

我已经创建了一个立方体,一切都很好。现在,我的ssrs报告需要所有维度customer sales属性以及以下计算 上个月的利润, 当月利润, 最近6个月的利润(每月上市), 上个月的交易, 去年利润与本年利润之比

因为我已经创建了一个层次结构,所以我每个月、每年和每个季度的所有计算都已经在多维数据集中预先计算过了。现在要检索上面列出的计算,进行这些时间计算的最佳方法是什么?将这些计算放在多维数据集或SSRS数据集中的何处


您能提出一些好的方法和方法吗?

如果您对MDX感到满意的话,尽管可以编写查询将所有这些计算结果放入数据集中,但将这些类型的计算结果放入多维数据集中通常对许多报告的可重用性更好。这样,如果您决定使用Excel或第三方应用程序,其他工具也可以使用时间计算

您可以使用“计算”选项卡中的“商业智能向导”来执行此操作-以下是一篇针对SSAS 2005的文章,该文章仍然适用于更高版本:

这里还有另一种类似的方法:

更新:
对于处理日期范围(如从现在起的最后6个月)的命名集,请参阅本文:

尽管编写查询以将所有这些计算输入到数据集中是完全可能的(如果您对MDX感到满意的话),但将这些类型的计算放入多维数据集中通常对许多报表的可重用性更好。这样,如果您决定使用Excel或第三方应用程序,其他工具也可以使用时间计算

您可以使用“计算”选项卡中的“商业智能向导”来执行此操作-以下是一篇针对SSAS 2005的文章,该文章仍然适用于更高版本:

这里还有另一种类似的方法:

更新:
对于处理日期范围(如从现在起的最后6个月)的命名集,请参阅本文:

不确定我是否了解您,但问题是您需要获取动态值,并且所有内容都已硬编码

您可以使用prevmemebr函数获取层次结构中的上一个成员:

([Date].[Calendar].PrevMember, <your measure here>)
([日期][日历].PrevMember,)
其中,日期是维度,日历是层次结构。
因此,如果您按月浏览,它将获得最近几个月的数据,例如,不确定我是否获得了您的数据,但问题是您需要获得动态值,并且您将所有内容都硬编码

您可以使用prevmemebr函数获取层次结构中的上一个成员:

([Date].[Calendar].PrevMember, <your measure here>)
([日期][日历].PrevMember,)
其中,日期是维度,日历是层次结构。
因此,如果您按月份浏览,它将获得最近几个月的数据,例如

您必须使用mdx查询在多维数据集中的“计算”中计算上个月的利润、本月的利润、最近6个月的利润。我最近在我的“收入比较报告”中这样做,我计算了
上个月的收入
最近两个月的收入
前季度收入
,并使用了它们。成功了

您必须使用mdx查询在多维数据集“计算”中计算上月利润、本月利润、最近6个月利润作为度量值。我最近在我的“收入比较报告”中这样做,我计算了
上个月的收入
最近两个月的收入
前季度收入
,并使用了它们。成功了

我不知道。你们的问题是关于那个些计算出的场或场的公式。将此计算(多维数据集或数据集)放在何处?放在何处以及如何进行?你们能解释一下吗?我不知道。你们的问题是关于那个些计算字段的公式。将此计算(多维数据集或数据集)放在何处?放在何处以及如何进行?请你解释一下汉克斯·斯泰西亚的回答好吗。这是有用的。但我仍然有一些疑问-1。如何在同一多维数据集中包含所有时间计算,如年初至今、最近六个月的单独计算、最近13个月的计算。很抱歉,我可能会问一个无关紧要的问题,但我不清楚这个概念。我有一个具有时间维度的立方体。现在,我想在DimDate中进行计算,这将分别为我提供最近6个月的计算结果,以便当我从这个多维数据集创建数据集时,我可以将此计算字段拖到我的报告中,该报告可以显示最近6个月的计算结果?如果你阅读我提供的说明,它会解释你是如何做到这一点的。“商业智能向导”可以为您设置类似的计算,您可以从中进行修改。有些人喜欢将计算作为日期维度的一部分,而另一些人则喜欢链接中描述的单独维度。您确实需要在YTD的原型多维数据集中进行尝试和查看,等等。对于过去六个月或过去13个月,您需要创建一个独立于计算的命名集。像YTD这样的计算是显示单个列的值。当您需要一个月(6、13、24或其他)的列表时,您需要一个命名集,它是一个成员列表。这有点棘手,我得离开一会儿。今天晚些时候我会发布一个解决方案。在我深入讨论之前,我有一个问题要问你。您是否在寻找从现在起的最后6个月(您查看报告的那一天)?或者从你拖入数据透视表的日期算起的最后6个月?谢谢Stacia,我将查看命名集。现在我的困惑已经消除了:)。您能给我介绍一下命名集(如最近6/12/13个月)以及如何在SSRS报告数据集中使用它们吗?在我的一份报告中,我按月份列出了过去六个月的利润,我还需要在另一个专栏中列出