基于IBM Cognos的高级报表制作技巧
一、基于条件制作动态报表
在使用报表时,用户往往希望某些“异常数据”能够突出显示,以便其更快速了解数据的总体状态。如: 性能数据一旦超过设定的阀值,则突出显示为黄色或者红色;在其他情况下显示为绿色。IBM Cognos Report Studio 就提供了这样一种机制,在用户生成报表的时候,能够自动根据开发人员事先设定好的条件以及显示格式,对报表进行动态显示。
在制作基于条件的动态报表时,需要注意三要素。第一个要素是条件,条件是用以判断的规则,通常为一个变量表达式及其一系列取值,如,上面的性能数据超过阀值。第二个要素是用于和条件绑定的特定数据项 (Data Item),条件表达式只有和具体的数据项相关,以数据项运行时的取值作为条件输入,才能达到动态显示报表的目的,如,上面提到的性能数据。第三个要素条件格式,即在条件表达式的某一特定取值下,报表显示的格式,如字体,颜色,阴影等。总得来说,基于条件的动态报表的实现就是根据某特定数据项在报表运行时的取值,计算变量表达式的取值,并根据变量表达式的取值,决定报表的显示格式。 Cognos 支持三种类型的变量:字符串变量,布尔变量和语言变量。以下的三小节将分别介绍使用这三种变量制作动态报表的过程。 使用字符串变量制作动态报表
在 2.1 节中,我们将介绍简单的使用字符串变量的制作动态报表的过程。我们希望实现根据项目状态的取值,动态显示报表中“项目状态”单元格的背景颜色:当项目状态为 R(Red) 时,项目状态单元格的背景显示为红色;当项目状态为 Y(Yellow) 时,项目状态单元格的背景显示为黄色;当项目状态为 G(Green) 时,项目状态单元格的背景显示为绿色;当项目状态为 C (Complete) 时,项目状态单元格的背景显示为蓝色。
步骤 1. 打开变量编辑窗口。点击 Explorer Bar 上的 Condition Explorer。点击弹出页面中的 Variables。见图 1。 图 1. 打开变量编辑窗口
步骤 2. 创建字符串变量。将 Insertable Objects 中的字符串变量(String Variable)拖拽到 Variables 部分。见图 2。 图 2. 创建字符串变量
步骤 3. 定义字符串变量表达式。在将字符串变量拖拽到 Variable 的过程中,系统会自动弹出变量表达式编辑窗口。在编辑窗口的左侧列出了可用于表达式的各种组件和数据项。可以通过拖拽的方法选择所需的数据项组合成变量表达
式。以下的例子中,我们设定一个简单的变量表达式,这个变量表达式就等于报表中项目状态(PROJECT_STATUS)。见图 3。 图 3. 定义字符串变量表达式
步骤 4. 为字符串变量表达式赋值。选中字符串变量 String 1, 点击 Values 框下面的添加(Add)图标,在弹出的对话框中,输入希望添加的变量值,如 R (Red),然后点击 OK 按钮。此变量值就会被添加到 Values 的列表中。可以通过重复以上步骤,添加其他变量值。根据之前的描述,我们需要 R (Red), Y (Yellow), G (Green), C (Complete) 四个变量值。见图 4。 图 4. 为变量表达式赋值