如何对 Excel Services 使用时间智能筛选器或如何将区域选择传递到 Excel 报表

原文发布于 2011 年 5 月 24 日(星期二)

PerformancePoint 仪表板具有一组筛选器,可允许 PerformancePoint 内容和其他内容相互连接并相互交互。我想详细介绍一下时间智能筛选器以及如何在 Excel 中使用它来获取基于区域的查询。

什么是时间智能筛选器?

时间智能 (TI) 筛选器允许您创建自定义时间集,然后在仪表板中使用自定义时间集来设定用户可以看到的内容的范围。自定义时间集的示例包括“前一阶段”、“过去 3 个月”、“过去 6 个月”等。使用 TI 筛选器的好处是可以跨报表(和数据源)使用它们。

有关如何设置时间智能的详细信息,请参阅前一篇文章(该链接可能指向英文页面)

连接到 Excel Services 报表

可以使用工作簿参数连接 Excel Services 报表。有关如何设置 Excel Services 报表和参数的详细信息,请参阅前一篇文章(该链接可能指向英文页面)

在该应用场景中,我们需要将 TI 筛选器连接到 Excel Services 报表,以便以迷你图的形式查看给定时间段内 3 种最畅销产品的趋势值。类似以下情况:

clip_image001

显而易见,AdventureWorks 多维数据集需要更新其日期。

在 Excel 中设置此功能

在 Excel 中需要执行几个步骤才能设置此功能。我们准备对此报表使用多维数据集功能。这使我们能够更好地控制报表的布局,并且可以向报表中添加区域参数。有关多维数据集功能的详细介绍,请参阅 Excel 团队博客(该链接可能指向英文页面) 上介绍多维数据集功能的一些优秀文章。我们将对此报表使用 CUBESET、CUBERANKEDMEMBER 和 CUBEVALUE 函数。

CUBESET 允许您在 Excel 中定义一个集,供 CUBERANKEDMEMBER 函数稍后使用。在本例中,我们希望时间集是基于 TI 筛选器中的值的动态集。将对单元格 C16 使用的公式为:

=CUBESET("Adventure Works ",B26, " " )

在本例中,我们将连接到 Adventure Works 数据源(第一个参数),第二个参数是集表达式。可以在公式中输入集表达式,但我们希望该值来自参数。因此我们只进行单元格引用。此单元格引用是我们填充工作簿参数的位置。最后一个参数只用于显示文本,本例中我们将此参数保留为空。

通过 CUBERANKEDMEMBER 函数,我们可以从 CUBESET 函数定义的集中获取单个成员。将对单元格 D16 使用的公式为:

=CUBERANKEDMEMBER("Adventure Works ",$C$16,ROW(A1))

在本例中,$C$16 引用的是我们在上一步中创建的集,ROW(A1) 参数为我们提供集中的第一个成员,对于后续月份,我们只需添加 ROW (A2) 等参数即可,具体数量取决于我们要显示的时间值数。

clip_image003

要获取 3 种最畅销的产品,您可以通过使用 CUBESET 和 CUBERANKEDMEMEER 来执行相同的过程,只是这次针对的是产品维度。

最后,要获取单元格中的值,您可以使用 CUBEVALUE 函数,并引用产品维度成员和时间成员的单元格以及您希望包含的度量值。

设置迷你图(该链接可能指向英文页面)后,报表即可供使用。

需要做的最后一项工作是创建一个工作簿参数。该参数用于通过 PPS 筛选器与 Excel 工作簿通信。

若要创建工作簿参数,请创建单个单元格命名区域。在本例中,我们希望值位于单元格 B26 中。这是在 CUBESET 函数中引用的单元格。我们将调用命名区域时间值。从功能区中,选择“文件”->“保存并发送”。

clip_image004

选择“发布选项”(Publish Options) 和“参数”(Parameters) 选项卡。

clip_image005

如果选择“添加命名区域”,

clip_image006

所选内容应该可供发布到 SharePoint,并且 Excel 中的所有内容应该均可供使用。

在 PerformancePoint 中设置

按通常方式在 PerformancePoint 中设置 Excel 报表。应该会自动列出工作簿参数。这是您在 Excel 中设置的同一参数。

clip_image007

本例中需要设置的下一项是时间智能筛选器。我们只创建两个区域,一个针对过去 3 个月,另一个针对过去 6 个月。

clip_image009

需要做的最后一件事是在仪表板中将这两个筛选器连接起来。将时间筛选器和 Excel 报表作为组件添加到仪表板中。使用“成员唯一名称”(Member Unique Name) 作为起点,“时间值”(Time_Value) 作为终点。

clip_image010

最终结果是您将具有使用时间筛选器 MDX 值或来自其他筛选器的任何区域值的动态 Excel 报表。

clip_image011

Leif Brenne

程序经理主管

Microsoft Office BI

这是一篇本地化的博客文章。请访问 How to use Time Intelligence Filters with Excel Services or how to pass a range selection into your Excel Report 以查看原文