利用 Cognos Report Studio 建立复杂企业报表
王永, 软件工程师, IBM
徐彦丽, 软件工程师, IBM
简介: 本文首先介绍了 Cognos Report Studio 的基本内容,然后利用一个项目
管理复杂报表的实例介绍了 Report Studio 建立报表的步骤,同时实例中介绍了
如何利用地图管理器来自定义地图文件进而利用该文件生成地图报表。
发布日期: 2010 年 11 月 25 日
级别: 初级
前言
Cognos 是面向企业的业务智能和绩效计划软件的全球领导者。企业的解决方案
可以通过实现计划和预算、绩效度量和监视、报表和分析等管理环节的关键步骤
来提高调整企业绩效,而 Cognos 是唯一能够在一个完整的解决方案中为这些重
要的管理活动提供支持的软件。Cognos 解决方案通过与财务预算、规划和财务
报表工具的整合,提供了企业报表、财务分析和记分卡工具。Cognos 产品包括:
Cognos8 BI、Cognos TM1、Cognos8 Go !、Cognos8 计划、Cognos Now、Cognos8
Controller 及 Cognos8 劳动力绩效软件。
Cognos BI 提供了报表、分析、记分卡、仪表盘及事件管理等方面的内容。Cognos
BI 具有三层架构:Web 服务层、应用层和数据层,各层间有网络防火墙进行分
割。如图 1:
图 框架结构图
从结构图中可以看出,在三层架构的基础上为用户接口层,其分为基于 Web 和
基于 Windows 的两种接口形式。Cognos BI 具有基于 Windows 的五种组件:
FrameWork Manager、Metric Designer、Transformer、Map Manager 及 Cognos8 Go
Office! 和基于 Web 的七种用户组件接口,分别为:Cognos Connection、Cognos
Administration、Query Studio、Report Studio、Analysis Studio、Event Studio 和
Metric Studio。
下面简单介绍这七大组件的功能特征。
l. Cognos Connection 是 Cognos8 的 Web 门户。通过该门户您可以存储和访问
报表、查询、事件等。如果您拥所需权限,还可以使用门户来进行报表管理(包
括计划报表和分发报表)。
Cognos Administration 是 Cognos8 的管理工具。在 Cognos Administration
中,您可以执行服务器管理、数据管理、安全和内容管理、活动管理以及
Portal 服务管理。
Query Studio 是用于在 Cognos8 中创建简单查询和报表的报表工具。在
Query Studio 中,您可以查看数据、创建报表、更改报表的外观以及处理
报表中的数据。
Report Studio 是 Cognos8 复杂精细报表制作工具。它可以针对多个数据
库创建复杂的具有多页且可以进行多项查询的报表。
Event Studio 是 Cognos8 事件管理工具。它可以在事件发生时通知事件
组织中的决策者,以便他们可以作出及时有效的决策。
Analysis Studio 是 Cognos8 的分析工具。它可以用来浏览、分析和比较
维度数据。它可以帮您通过在大型数据源中查找有用信息来回答业务问题。
Metric Studio 是 Cognos8 的度量标准工具。它可以用来创建记分卡应用
程序并监控这些程序中的度量标准。它可以帮助您将组织的战略转换为相
关、可度量的目标,以使每个员工的行为与战略计划保持一致。
回页首
Cognos Report Studio 概述
Report Studio 是 Cognos8 复杂精细报表制作工具。它可以针对多个数据库创建
复杂的具有多页且可以进行多项查询的报表。Report Studio 展现的报表基于统一
的元数据模型。统一的元数据模型为应用提供了统一、一致的视图。用户可以在
浏览器中自定义报表,格式灵活,元素丰富,同时还具有独特的穿透钻取(drill
up 和 drill down)、切片(slice)和切块(dice)、以及旋转(pivot)等功能,
使分析人员、管理人员或执行人员能够从多角度对信息进行快速、一致、交互地
存取,从而获得对数据的更深入了解,有效地将各种相关的信息关联起来,使用
户在分析汇总数据的同时能够深入到自己感兴趣的细节数据中,以便更全面地了
解情况,做出正确决策。
Report Studio 用户界面
图 Studio 用户界面
1. 可插入对象窗格包含您可以添加到报表的对象。将对象拖动到工作区即可将
它们添加到报表。可插入对象窗格包含以下选项卡:
“源”选项卡包含来自为报表所选定的数据包中的项目,例如数据项和计算。
“数据项”选项卡介绍了在报表中创建的查询。
“工具箱”选项卡包含可以添加到报表的各种对象,例如文本和图形。
2. 属性窗格列出您可以为报表中的对象设置的属性。指定属性的值后,请按 Enter
键、单击其它属性或保存报表以确保保存该值。
3. 资源管理器栏上的按钮可以处理报表的不同部分:
将指针悬停在“页面资源管理器”按钮上可以转至特定的报表页面或提示页
面。
将指针悬停在“查询资源管理器”按钮上可以处理查询。
将指针悬停在“条件资源管理器”按钮上可以处理变量。
4. 工作区是设计报表的区域。
Report Studio 报表创建模式
为了同时满足普通报表创建者和财务报表创建者的需求,Report Studio 提供了两
种报表创建模式:
专业创建模式
用户在专业创建模式中具有对所有 Report Studio 功能的访问权限。但无
法查看动态数据。
快速创建模式
快速创建模式提供简易的 Report Studio 界面。它是为非技术用户创建传
统财务和管理报表而设计的。此创建模式可以查看动态数据,并且仅支持
交叉表报表。它包含专业创建模式中所提供功能的子集。
使用快速创建模式时,如果打开在专业创建模式中创建的报表,则您可以看到仅
可在专业创建模式下插入的对象(例如图表、地图和列表),但无法修改这些对
象。
Report Studio 报表结构
所有报表结构均具有两个组件,一个定义报表外观的布局组件和一个定义报表数
据的查询组件。
布局组件是定义报表外观和格式的一组页面。页面包含用于创建报表的布局对象。
一个页面包含页眉、页面正文及页脚,其中页面正文是必需的。布局对象包括五
种基本图表类型、文本、块及表格,在创建报表时将布局对象添加到页面。
查询组件确定显示在报表中的数据。主要通过简单的 SELECT 语句、汇总功能
和分组列来计算总和或平均值或者应用过滤以显示所需数据,同时可以自定义查
询以获得想要的数据结果。
Report Studio 报表类型
Report Studio 具有以下五种报表类型:
列表
列表报表是一种以行和列显示数据的报表。每个列均显示数据库中数据项
或基于数据库中数据项所进行计算的所有值。使用列表报表可以显示数据
库中的明细信息。
交叉表
与列表报表类似,交叉表报表也是以行和列显示数据的报表。但是,行和
列相交处的值显示汇总信息而不是详细信息。
图表
以图形的方式显示数据,包括柱形图、条形图、面积图、折线图,同时也
可以创建组合了这几种图表类型的自定义图表。如图 3。
图 Studio 图表类型
地图
地图可以在空间环境下来表示表格数据,接下来的内容会详细介绍。
重复器
在运行报表时可以使用重复器重复项目。例如,您可以使用重复器创建邮
件标签,包括客户名称和地址。
回页首
Report Studio 创建复杂报表实例
作为一个项目经理,需要时时观察和控制项目的进度、质量及成本等方面的情况。
我们要实现一个报表,使项目经理能够
根据项目的属性及类型查看项目的详细信息,包括项目承办人信息、各种
投资成本信息、项目类型属性信息等。
根据地区查看不同项目类型及项目属性的资金完成投放情况。
利用地图报表查看云南省各市资金完成投放的情况。
1.指定数据包
在 Cognos Connection 欢迎页面中,单击“启动””链接。
在下拉列表中,单击“Report Studio”。
在“选择数据包”对话框中,单击您要使用的数据包“POC_Project”。
2.选择报表模板
Report Studio 中有两种报表创建方式可以选择:
“创建一个新的报表或模板”或“打开已经存在的报表或模板”,如图 4。
图 Studio 报表模板
选择“创建一个新的报表或模板”,然后选择空白的报表类型,确认后出现一个空
白的报表工作区域。
选择工具栏“Headers &footers”按钮,打开“Page Headers & Footers”对话框,选择
“Header”和“Footer”,确定,可以看到报表工作区中出现了页眉和页脚区域。如
图 5。
图 5. 插入页眉页脚
3. 设置报表布局
打开可插入对象窗格中的工具箱选项卡。选择“表格(Table)”对象,拖入到工
作区的 Body 区域中,一个闪烁的黑色条形图指示您可以放置项的位置。设置
表格为两行两列。
选中表格的一个单元格,在属性窗格中,点击属性层次结构,选择“表格”对象。
这时整个表格为选中状态。如图 6。
图 6. 改变属性层次结构
在属性中选择“位置”,设置表格的大小,使其宽度为 1000pt。同时选择工具栏
中“居中对齐”按钮使其在工作区中居中对齐。如图 7。
图 7. 设置表格大小
设置表格的背景属性,从属性窗格中选择颜色和背景条目,点击“Background
Image”,选择背景图片。如图 8。
图 8. 设置表格背景
按照表格设置的方法。从工具箱选项卡中拖一“图像”对象放入页眉区域,在属性
窗格中设置图像的 URL 及宽度。
选中页脚区域。从工具箱选项卡中拖一表格对象,设置为一行一列,按照以上的
方法设置表格居中及宽度为 1000;然后放置三张图片。
4. 保存报表
报表将保存到 Cognos8 服务器,也可以保存到你的计算机。
单击工具栏上的“保存”按钮,如果是第一次保存报表,请指定报表的保存位置并
键入文件名,单击“保存”。
5. 添加报表对象
在表格第一行第一列中,放置列表,其显示项目的详细信息。
从工具箱选项卡中选择“列表”。
从源选项卡中将需要的数据项拖入列表中。
设置查询条件:从工具箱中选择“块”(block)对象放入此单元格,放置在列表的
上方。
在块对象中拖入“Text Item”对象,设定其值为“项目类型”。
加入一个值提示对象“Value Prompt”,它将给出一个供选择的下拉列表,列出某
个数据项上可能出现的值供用户选择。在提示中要定义一个参数,用户选择的值
由这个参数来接收。在这里命名为“Pro_type”。(如图 10)提示定义了一个包含
参数的过滤表达式,利用参数接收的值对指定数据项进行过滤。
图 9. 添加值提示
设置过滤条件:
图 10. 设置过滤条件
设置下拉列表框的显示内容,也就是过滤条件与显示的条件可以不同。例如你可
以利用项目类型代码来过滤,而实际显示出来的是项目类型。
图 11. 设置查询信息
点击“完成”。
给该查询一个默认的初始值,否则它会以单独页面的形式设置初始值。设置属性
中“默认值”选项,增加一个初始值。
图 12. 设置初始值
利用同样的方法,设置“项目属性”查询条件。
从工具箱中拖一个“提示按钮”进报表。把提示按钮的类型改为“Finish”。
图 13. 改变按钮类型
在放置的基本数据项基础上,还可以对数据项进行以下操作,如图 15:
过滤数据
对数据排序
创建分组
汇总数据
创建计算
格式化数据
使用查询
图 Studio 工具栏
在表格第一行第二列中,放置柱形图表;第二行第二列中放置交叉表,其中交叉
表与图表对应于同一个查询信息,可以用不同的形式反映同一组数据。
从工具箱中选择图表对象,选择 3-D 模式。
图 15. 选择图表类型
从工具箱中选择“交叉表”对象放入第二行第二列中。
在柱状图中设置其行、列及度量所对应的数据项。
选择交叉表,将其查询 Query5 改为图表所对应的查询 Query4,这样可以用两
种形式反映同一数据。
图 16. 改变查询
选择可插入窗格中的数据项选项卡,将 Query4 中的数据项拖入交叉表对应的位
置。
图 17. 数据项对应关系
增加地区查询条件。在属性窗格中,将“Auto-Submit”设置为自动触发,这样就不
需要通过按钮提交查询条件了。
图 18. 设置自动触发
在表格第二行第一列中,放置地图报表,反映云南省不同市的项目计划资金投资
情况。
首先由于 Report Studio 提供的地图集有限,就 来说只是提供了世界
地图、五大洲及一些主要国家的地图文件,假如需要云南省的地图,那么就要自
己动手了,这就要用到地图管理器。
地图管理器(Map Manager)是一个图形化的地图管理工具。其主要功能有:
能够使用第三方工具如 MapInfo、ESRI 等生成的地图转换成 Report Studio
支持的地图格式。
为地图的图层指定别名及相应语言显示,例如可以更改地区香港为“Hang
Kong”。
可以在已经存在的图层上新建图层,可以合并已存在的图层为一新的图层,
例如可以将黑龙江、吉林、辽宁三个地区图层合并为东北三省一个图层。
下面是建立云南省地图的步骤:
1. 利用 MapInfo 生成 gst 格式的云南省地图
第一步:首先准备一幅 bmp 格式的云南省地图图片,接着启动 MapInfo,选择
“取消”直接进入主界面;在工具栏上选择“打开表”,选择“栅格图象”,然后选择
你要用的地图文件;接着选择“配准”(一般用地图的四个角为顶点,各点坐标不
应在一条线上,距离应为 5),打开地图后在工具栏上选择“新建表”,然后让此
表建到已经打开的地图文件中,最后建立表字段,最后“保存”。
第二步:选择菜单“地图”,“图层控制”,选择刚建的表的图层,选择“可编辑”。
第三步:在浮动工具栏中选择多边形对打开的地图进行描图,每完成一个区域后
选择该区域然后利用菜单“对象”,“转换为区域”。
第四步:全部图描完后,通过菜单“窗口”,“新建浏览窗口”打开表,右击表头选
择“新建行”,然后选择行,该表会给出对应的地图中的区域对象,输入该对象的
名称等字段,完成后保存。
第五步:选择菜单“工具”,“工具管理器”,MapX Geoset 选中,使其在菜单中显
示;然后选中“MapX Geoset 工具”,“另存为”,选中 版本和 gst 格式,保
存。如图 20。
图 主界面
2. 利用地图管理器导入地图文件
打开 MapManager 选择菜单 File,点击 import,选择 MapInfo 生成的 gst 工
程导入即可。
图 20. 导入地图文件
导入结果后会显示出在 MapInfo 中定义好的所有的图层及具体特征值信息。如
图 22。
图 21. 地图文件导入结果
3. 为云南省地图建立别名,并生成 Report Studio 地图集支持的 cmf 格式文件
在图层“Layer”中选择建立的区域图层“Area”。
在“Feature”中选择“Kunming”。
在“Alias”中给出别名“KN”,点击“Add env”。别名建立成功并会作为一条新记录
显示在 Directory 条目中。如图 23。
图 22. 建立别名
4.保存该 cmf 文件到 cognos 安装目录的 maps 文件夹下
图 23. 保存地图文件
5. 建立地图报表
第一步建立基本报表。
在工具箱选项卡中选择“地图”对象,放入第二行第一列。
在选择地图对话框中,选择建好的地图“Yunnan”,然后在区域层中选“Area”,单
击“确定”。如图 25。
图 24. 选择地图
第二步定义区域层的数据。
在“可插入对象窗格”中,展开“POC_project”,“Project_fact”,将“完成投资金额”
拖到“颜色”放置区中。
将“地区”拖到“位置”放置区。
第三步追溯到其他报表。
要实现这一步,需要有目标报表和源报表各一张。其中源报表我们就用上面已经
完成的地图报表。目标报表可以是任何一种报表类型,需要注意的是可以设置过
滤条件。
设置过滤的步骤:
选中目标报表,在工具栏上选择“过滤器”。
在明细过滤选项卡上单击“添加”按钮。
从可用组件框中选择源,建立相应的表达式。例如设置一个地区参数。[Business
View].[site].[SITEID] = ?area?。
图 25. 设置过滤条件
保存目标报表
在源报表中设置追溯链接的步骤:
打开源报表,选择区域层或点层。
在“属性窗格”的数据部分中,单击“地图追溯”,然后单击 ( … ) 按钮。
在“地图追溯”对话框中,选择新建,给出目标报表,点击参数框下的“编辑”(图
18),选择目标报表中的地区参数,保存。如图 28。
图 26. 设置追溯链接
图 27. 添加参数
运行报表后,当点击地图上不同区域的时候,会打开该地区的详细报表。
6.运行报表
运行报表以查看检索的数据。
单击工具栏上的“运行”按钮,Cognos Viewer 将显示报表结果。
图 28. 运行报表
回页首
结束语
通过一个复杂报表的实例,介绍了 Report Studio 的基本应用,同时介绍了如何
利用地图管理器结合第三方工具 MapInfo 自定义报表来解决了 Report Studio 中
的地图文件不足的缺陷,进而使地图报表的应用更加完善。当然实际应用中的复
杂报表的功能更全面更完善,希望这篇文章的介绍能够对 Report Studio 初学者
快速入门具有一定的帮助。