基于BIRT的智能报表设计
第一章 引言
第一节 选题的背景和意义
随着信息技术的广泛应用,电子政务、电子商务得到迅猛发展,数据的采集、传输、展示、交互、安全等问题显得越来越重要。报表作为一种信息组织和分析的有力手段,是电子政务、商务智能、企业信息系统的重要组成部分,是进行信息浏览、分析、输出的有利工具。随着Internet技术的推广和企业信息化程度的提高,越来越多的报表应用将在Web环境下开发和运行。
目前大多数WEB应用系统都包含或集成了报表系统,这些报表系统基本上都是由应用程序根据需求独立开发的。独立开发的报表系统与对应的应用系统之间的耦合度比较高,报表的格式也包含在代码中,可移植性差、可复用性差,也加大了后期维护工作量。当前Web报表的实现方式主要有两种:基于客户端组件的方式和基于HTML页面的方式。在基于客户端组件的方式中,客户端表现逻辑通过嵌入组件的HTML页面实现。其优点在于客户端具有丰富的图形用户界面和交互功能,缺点是组件下载的过程较慢容易产生超时错误,下载中如果发生错误也很难知道原因,并且可能存在安全隐患。而基于HTML页面的报表其设计器绝大部分是C/S结构的,只是能够在浏览器中展现报表。这种方式可以避免基于客户端组件的方式所产生的问题,但是采用这种方式的应用程序往往效率比较低,而且需要专业的设计人员和维护人员花费大量的时间和精力,同时也难以复用。
本课题分析了传统报表开发和设计中的缺点,研究了基于BIRT的报表解决方案,并通过实例展示该报表解决方案的优点和特色。
第二节 国内外现状分析
由于报表系统在信息系统中的基础性地位,报表统计的应用非常广泛。报表工具软件也引起了国内外一些软件公司的关注和重视。近年来,随着软件开发技术的日新月异,报表技术也不断成熟和完善,目前已经出现了一些优秀的颇具特色的报表工具软件。以下就从国外和国内两个方面扼要介绍一下报表系统的研究现状和进展。
目前国内报表工具软件以用友华表公司的Cell软件为代表,其内核采用了类似微软的Excel的技术。目前其最新的版本是Ce115.3。Ce115.3产品分Cell组件5.3和Cell插件5.3两部分,它们属于报表二次开发工具。Cell组件(ActiveX控件)主要适用于开发Windows应用程序,可在VC,VB,Delphi,PB,VFP,C++ Builder等开发工具下使用。Cell插件主要用于开发Web应用程序,支持Html,Asp,JSP,VBScript,JavaScript等言。Cell的主要特点是:具有很强的打印及打印预览功能、丰富的单元格式与设计、很强的图表功能等。但其不足之处也是很明显的:它不是严格意义上的报表类软件,其本质是属于电子表格类软件。只是在开发类似Excel的报表方面,它具有较明显的优势。另外,还有一些比较优秀的报表软件如:深圳明宇科技的如意报表(Ming-Web Report)它是基于J2EE,XML及.NET等国际主流软件技术开发的,提供了较强的可视化报表设计器,可以实现多种复杂报表,它可运行于Windows,Unix,Linux等多种操作系统上,具备跨平台特性等特点。另外还有润乾报表,其技术核心是他们独创的非线性报表模型,在国内有一定的影响力。
目前国外的商业化报表产品主要有Crystal Report和Active Report等,其中又以Crystal Report为代表。水晶报表由总部位于美国加州的帕罗奥多的Crystal Decisions公司开发。该公司的主要业务有:报告、分析、信息传递技术和服务等。水晶报表基本上可以认为是高效能报表系统的行业标准,微软在其.NET开发平台上捆绑的便是水晶报表。它主要的特点是:可以从各种数据来源创建丰富、交互式的内容,并将它集成到应用程序。可以充分使用Web的优势,实现快速和交互式的报表系统。Crystal Reports提供了完整的组件,该组件能够支持Windows开发环境。其不足之处在于开发一些较复杂的,如带有斜线、交叉线等不规则报表时,实现起来很困难。另外,它在报表的设计和使用方面不太符合中国式报表的习惯。还有就是它的费用比较昂贵。
在开源报表产品中比较有名的主要有BIRT和Jasper Report,Jasper Report的优点就是使用简单,输出方式多样,这样在实现客户的需要的时候痛苦会少一些, 缺点就是文档是收费的,有些东西就只能是靠自己琢磨和尝试。BIRT项目属于Eclipse项目下的商务智能子项目,发展迅速,是一种柔性的报表解决方案,一方面为基本用户提供了可视化的报表设计器,另一方面为高级用户提供了丰富的集成接口,提高了报表的重用性。
第三节 论文的主要工作
结合以上所介绍的背景及课题的研究意义,本论文所做研究的主要内容如下:
分析传统报表工具应用中的问题;
研究BIRT的报表解决方案;
基于Eclipse可视化的设计报表;
研究BIRT的运行时集成;
开发报表管理系统实例同时展示多种报表;
第二章 报表应用的研究
第一节 报表的概念
报表是信息管理,决策支持等系统必不可少的一项最基本但又最重要的内容。因为管理和使用信息,不仅仅是为了浏览和查询,还有更重要的内容:通过这些信息来提取和反映出更重要的内容,报表以特定的格式向用户反映高度浓缩的数据,使用户能够更清晰的看出繁杂的内容中更深刻更有价值的东西,为其决策提供支持。而这些有价值的信息的载体就是报表。那么什么是报表呢,本章将会详细的介绍一下它的相关知识及概念。
人们经常会提到报表,又常常会问什么是报表,一般来说,报表是一个熟悉而有陌生的概念。
简单的说:报表就是用表格、图表等格式来动态显示数据,可以用公式表示为:“报表=多样的格式+动态的数据”。
在用计算机管理和处理信息之前,人们都是利用手工的方式来得到想要的数据和结果。当计算机出现之后,人们利用计算机处理数据和界面设计的功能来生成、展示报表。计算机上的报表的主要特点是数据动态化,格式多样化,可以说,具有了上面公式中报表的特征,就可以称之为报表。从报表的格式和样式来说,报表可以分为固定格式报表和可变格式报表。所谓固定格式报表就是它的样式,字体甚至每一个符号的位置必须是严格规定,不可改变的。比如则务报表、专用票据等等就是这类报表。而另外一类更注重数据的内容和结果的报表,在决策支持系统中,这种报表就更常见,因为能够快速提供准确的统计数据比样式更加重要。