教程:向报表添加 KPI (Report Builder 2.0)
关键绩效指标 (KPI) 是报表中对业务具有重大意义的可测量值,例如,总销售额。如果要在报表上显示 KPI 的当前状态,则可以使用以下三种不同方法之一:
使用背景色突出显示用于显示 KPI 状态的单元值。
使用仪表显示 KPI 的状态。
将单元值替换为显示 KPI 状态的图像。
在本教程中,您将学习使用方法 1 和 2 添加 KPI。
为定义 KPI 的当前状态,我们将基于 AdventureWorks2008 示例数据库创建一个业务要求,并将其添加到在教程:创建基本表报表 (Report Builder 2.0) 中创建的报表。
假定 KPI 基于销售订单总计,而该总计为每个订单的 Line Total 的聚合。KPI 旨在以下列方式突出显示订单总计:
超过 100 的订单总计需要立即处理。
超过 25 但低于 100 的订单总计需要特殊处理。
不足 25 的订单总计无需额外关注。
要求
若要完成本教程,您必须满足下列前提条件:
- 您必须有权访问在教程:创建基本表报表 (Report Builder 2.0) 中创建的 Sales Order 报表。
学完本教程的估计时间:10 分钟。
打开现有报表
单击**“开始”,依次指向“程序”**、Microsoft SQL Server 2008 Report Builder,再单击 Report Builder 2.0。
从“报表生成器”按钮,单击**“打开”**。
浏览到报表服务器上的 Sales Order。
接下来,您需要将表中单元的背景色设置为基于处理报表时单元中显示的值的表达式。
使用背景色显示 KPI 的当前状态
在表中,右键单击从 Product 单元向下的两个单元(在显示每个订单总计的小计行中),然后单击**“文本框属性”**。
在**“填充”中,单击 fx 按钮,然后在“为以下项设置表达式: BackgroundColor”**字段中键入以下表达式:
=IIF(Sum(Fields!LineTotal.Value) >= 100, "Violet", IIF(Sum(Fields!LineTotal.Value) < 25, "Transparent", "Cornsilk"))
对于包含 Line Total 值大于或等于 100 的聚合汇总的每个单元,背景色会更改为紫色。介于 25 和 100 之间的所有值都使用名为“Cornsilk”的黄色底纹着色。不足 25 的值不会突出显示。
单击**“确定”**。
单击**“运行”**以预览报表。
在显示每个订单总计的小计行中,单元的背景色更改取决于聚合总数的值。
接下来,您将添加一列和一个仪表以显示 KPI 的状态。
使用仪表显示 KPI 的当前状态
切换到“设计”视图。
在表中,右键单击前面步骤中更改的单元的列控点,指向**“插入列”,然后单击“右侧”**。此时将向表添加一个新列。
在**“插入”选项卡的“数据区域”组中,单击“仪表”,然后在表外的设计图面上单击。将显示“选择仪表类型”**对话框。
单击**“线性”**。将选中第一个线性仪表。
单击“确定”。
此时将向设计图面添加一个仪表。
从“报表数据”窗格,将 LineTotal 拖至该仪表。
将该字段拖到仪表中时,将使用内置 SUM 函数聚合该字段。
右键单击仪表,指向**“仪表”,然后单击“指针属性”**。
在**“指针类型”中,选择“条形”**。这会将指针从标记改为条形,从而在将仪表添加到表中时更加清晰可见。
单击**“指针填充”。在“辅助颜色”中,选取“黄色”**。渐变填充模式将从白色改为黄色。
将表内的仪表拖到所插入列的第三个单元中。
注意 可能需要调整列大小,以使单元能够容纳水平线性仪表。若要调整列大小,请单击列标题,并使用控点水平和垂直调整单元大小。
单击**“运行”**以预览报表。
仪表中条形的水平长度将根据 KPI 的值变化。
(可选)添加处理溢出的最大刻度格,以使超出最大刻度的任何值始终指向最大刻度格:
打开“属性”窗格。
单击刻度。该线性刻度的属性将显示在“属性”窗格中。
在**“刻度格”**类别中,展开 MaximumPin 节点。
将**“启用”**属性设置为 True。随即将在刻度的最大值之后显示一个刻度格。
将**“边框颜色”**设置为“酸橙色”。