利用CognosReportStudio建立复杂企业报表王永,软件工程师,IBM徐彦丽,软件工程师,IBM简介:本文首先介绍了CognosReportStudio的基本内容,然后利用一个项目管理复杂报表的实例介绍了ReportStudio建立报表的步骤,同时实例中介绍了如何利用地图管理器来自定义地图文件进而利用该文件生成地图报表。发布日期:2010年11月25日级别:初级前言Cognos是面向企业的业务智能和绩效计划软件的全球领导者。企业的解决方案可以通过实现计划和预算、绩效度量和监视、报表和分析等管理环节的关键步骤来提高调整企业绩效,而Cognos是唯一能够在一个完整的解决方案中为这些重要的管理活动提供支持的软件。Cognos解决方案通过与财务预算、规划和财务报表工具的整合,提供了企业报表、财务分析和记分卡工具。Cognos产品包括:Cognos8BI、CognosTM1、Cognos8Go!、Cognos8计划、CognosNow、Cognos8Controller及Cognos8劳动力绩效软件。CognosBI提供了报表、分析、记分卡、仪表盘及事件管理等方面的内容。CognosBI具有三层架构:Web服务层、应用层和数据层,各层间有网络防火墙进行分割。如图1:图1.Cognos框架结构图从结构图中可以看出,在三层架构的基础上为用户接口层,其分为基于Web和基于Windows的两种接口形式。CognosBI具有基于Windows的五种组件:FrameWorkManager、MetricDesigner、Transformer、MapManager及Cognos8GoOffice!和基于Web的七种用户组件接口,分别为:CognosConnection、CognosAdministration、QueryStudio、ReportStudio、AnalysisStudio、EventStudio和MetricStudio。下面简单介绍这七大组件的功能特征。l.CognosConnection是Cognos8的Web门户。通过该门户您可以存储和访问报表、查询、事件等。如果您拥所需权限,还可以使用门户来进行报表管理(包括计划报表和分发报表)。CognosAdministration是Cognos8的管理工具。在CognosAdministration中,您可以执行服务器管理、数据管理、安全和内容管理、活动管理以及Portal服务管理。QueryStudio是用于在Cognos8中创建简单查询和报表的报表工具。在QueryStudio中,您可以查看数据、创建报表、更改报表的外观以及处理报表中的数据。ReportStudio是Cognos8复杂精细报表制作工具。它可以针对多个数据库创建复杂的具有多页且可以进行多项查询的报表。EventStudio是Cognos8事件管理工具。它可以在事件发生时通知事件组织中的决策者,以便他们可以作出及时有效的决策。AnalysisStudio是Cognos8的分析工具。它可以用来浏览、分析和比较维度数据。它可以帮您通过在大型数据源中查找有用信息来回答业务问题。MetricStudio是Cognos8的度量标准工具。它可以用来创建记分卡应用程序并监控这些程序中的度量标准。它可以帮助您将组织的战略转换为相关、可度量的目标,以使每个员工的行为与战略计划保持一致。回页首CognosReportStudio概述ReportStudio是Cognos8复杂精细报表制作工具。它可以针对多个数据库创建复杂的具有多页且可以进行多项查询的报表。ReportStudio展现的报表基于统一的元数据模型。统一的元数据模型为应用提供了统一、一致的视图。用户可以在浏览器中自定义报表,格式灵活,元素丰富,同时还具有独特的穿透钻取(drillup和drilldown)、切片(slice)和切块(dice)、以及旋转(pivot)等功能,使分析人员、管理人员或执行人员能够从多角度对信息进行快速、一致、交互地存取,从而获得对数据的更深入了解,有效地将各种相关的信息关联起来,使用户在分析汇总数据的同时能够深入到自己感兴趣的细节数据中,以便更全面地了解情况,做出正确决策。ReportStudio用户界面图2.ReportStudio用户界面1.可插入对象窗格包含您可以添加到报表的对象。将对象拖动到工作区即可将它们添加到报表。可插入对象窗格包含以下选项卡:“源”选项卡包含来自为报表所选定的数据包中的项目,例如数据项和计算。“数据项”选项卡介绍了在报表中创建的查询。“工具箱”选项卡包含可以添加到报表的各种对象,例如文本和图形。2.属性窗格列出您可以为报表中的对象设置的属性。指定属性的值后,请按Enter键、单击其它属性或保存报表以确保保存该值。3.资源管理器栏上的按钮可以处理报表的不同部分:将指针悬停在“页面资源管理器”按钮上可以转至特定的报表页面或提示页面。将指针悬停在“查询资源管理器”按钮上可以处理查询。将指针悬停在“条件资源管理器”按钮上可以处理变量。4.工作区是设计报表的区域。ReportStudio报表创建模式为了同时满足普通报表创建者和财务报表创建者的需求,ReportStudio提供了两种报表创建模式:专业创建模式用户在专业创建模式中具有对所有ReportStudio功能的访问权限。但无法查看动态数据。快速创建模式快速创建模式提供简易的ReportStudio界面。它是为非技术用户创建传统财务和管理报表而设计的。此创建模式可以查看动态数据,并且仅支持交叉表报表。它包含专业创建模式中所提供功能的子集。使用快速创建模式时,如果打开在专业创建模式中创建的报表,则您可以看到仅可在专业创建模式下插入的对象(例如图表、地图和列表),但无法修改这些对象。ReportStudio报表结构所有报表结构均具有两个组件,一个定义报表外观的布局组件和一个定义报表数据的查询组件。布局组件是定义报表外观和格式的一组页面。页面包含用于创建报表的布局对象。一个页面包含页眉、页面正文及页脚,其中页面正文是必需的。布局对象包括五种基本图表类型、文本、块及表格,在创建报表时将布局对象添加到页面。查询组件确定显示在报表中的数据。主要通过简单的SELECT语句、汇总功能和分组列来计算总和或平均值或者应用过滤以显示所需数据,同时可以自定义查询以获得想要的数据结果。ReportStudio报表类型ReportStudio具有以下五种报表类型:列表列表报表是一种以行和列显示数据的报表。每个列均显示数据库中数据项或基于数据库中数据项所进行计算的所有值。使用列表报表可以显示数据库中的明细信息。交叉表与列表报表类似,交叉表报表也是以行和列显示数据的报表。但是,行和列相交处的值显示汇总信息而不是详细信息。图表以图形的方式显示数据,包括柱形图、条形图、面积图、折线图,同时也可以创建组合了这几种图表类型的自定义图表。如图3。图3.ReportStudio图表类型地图地图可以在空间环境下来表示表格数据,接下来的内容会详细介绍。重复器在运行报表时可以使用重复器重复项目。例如,您可以使用重复器创建邮件标签,包括客户名称和地址。回页首ReportStudio创建复杂报表实例作为一个项目经理,需要时时观察和控制项目的进度、质量及成本等方面的情况。我们要实现一个报表,使项目经理能够根据项目的属性及类型查看项目的详细信息,包括项目承办人信息、各种投资成本信息、项目类型属性信息等。根据地区查看不同项目类型及项目属性的资金完成投放情况。利用地图报表查看云南省各市资金完成投放的情况。1.指定数据包在CognosConnection欢迎页面中,单击“启动””链接。在下拉列表中,单击“ReportStudio”。在“选择数据包”对话框中,单击您要使用的数据包“POC_Project”。2.选择报表模板ReportStudio中有两种报表创建方式可以选择:“创建一个新的报表或模板”或“打开已经存在的报表或模板”,如图4。图4.ReportStudio报表模板选择“创建一个新的报表或模板”,然后选择空白的报表类型,确认后出现一个空白的报表工作区域。选择工具栏“Headers&footers”按钮,打开“PageHeaders&Footers”对话框,选择“Header”和“Footer”,确定,可以看到报表工作区中出现了页眉和页脚区域。如图5。图5.插入页眉页脚3.设置报表布局打开可插入对象窗格中的工具箱选项卡。选择“表格(Table)”对象,拖入到工作区的Body区域中,一个闪烁的黑色条形图指示您可以放置项的位置。设置表格为两行两列。选中表格的一个单元格,在属性窗格中,点击属性层次结构,选择“表格”对象。这时整个表格为选中状态。如图6。图6.改变属性层次结构在属性中选择“位置”,设置表格的大小,使其宽度为1000pt。同时选择工具栏中“居中对齐”按钮使其在工作区中居中对齐。如图7。图7.设置表格大小设置表格的背景属性,从属性窗格中选择颜色和背景条目,点击“BackgroundImage”,选择背景图片。如图8。图8.设置表格背景按照表格设置的方法。从工具箱选项卡中拖一“图像”对象放入页眉区域,在属性窗格中设置图像的URL及宽度。选中页脚区域。从工具箱选项卡中拖一表格对象,设置为一行一列,按照以上的方法设置表格居中及宽度为1000;然后放置三张图片。4.保存报表报表将保存到Cognos8服务器,也可以保存到你的计算机。单击工具栏上的“保存”按钮,如果是第一次保存报表,请指定报表的保存位置并键入文件名,单击“保存”。5.添加报表对象在表格第一行第一列中,放置列表,其显示项目的详细信息。从工具箱选项卡中选择“列表”。从源选项卡中将需要的数据项拖入列表中。设置查询条件:从工具箱中选择“块”(block)对象放入此单元格,放置在列表的上方。在块对象中拖入“TextItem”对象,设定其值为“项目类型”。加入一个值提示对象“ValuePrompt”,它将给出一个供选择的下拉列表,列出某个数据项上可能出现的值供用户选择。在提示中要定义一个参数,用户选择的值由这个参数来接收。在这里命名为“Pro_type”。(如图10)提示定义了一个包含参数的过滤表达式,利用参数接收的值对指定数据项进行过滤。图9.添加值提示设置过滤条件:图10.设置过滤条件设置下拉列表框的显示内容,也就是过滤条件与显示的条件可以不同。例如你可以利用项目类型代码来过滤,而实际显示出来的是项目类型。图11.设置查询信息点击“完成”。给该查询一个默认的初始值,否则它会以单独页面的形式设置初始值。设置属性中“默认值”选项,增加一个初始值。图12.设置初始值利用同样的方法,设置“项目属性”查询条件。从工具箱中拖一个“提示按钮”进报表。把提示按钮的类型改为“Finish”。图13.改变按钮类型在放置的基本数据项基础上,还可以对数据项进行以下操作,如图15:过滤数据对数据排序创建分组汇总数据创建计算格式化数据使用查询图14.ReportStudio工具栏在表格第一行第二列中,放置柱形图表;第二行第二列中放置交叉表,其中交叉表与图表对应于同一个查询信息,可以用不同的形式反映同一组数据。从工具箱中选择图表对象,选择3-D模式。图15.选择图表类型从工具箱中选择“交叉表”对象放入第二行第二列中。在柱状图中设置其行、列及度量所对应的数据项。选择交叉表,将其查询Query5改为图表所对应的查询Query4,这样可以用两种形式反映同一数据。图16.改变查询选择可插入窗格中的数据项选项卡,将Query4中的数据项拖入交叉表对应的位置。图17.数据项对应关系增加地区查询条件。在属性窗格中,将“Auto-Submit”设置为自动触发,这样就不需要通过按钮提交查询条件了。图18.设置自动触发在表格第二行第一列中,放置地图报表,反映云南省不同市的项目计划资金投资情况。首先由于ReportStudio提供的地图集有限,就co