报表漫谈

来源:互联网 发布:提高优化效率的词语 编辑:程序博客网 时间:2024/06/03 23:03

项目中需要报表,之前用过开源的报表,比如JFreechart,收费的水晶报表等,因为需求还没有确定下来,为了项目的进度和需求,保险起见找了几款国内收费的报表软件,比如润乾、快逸、皕杰报表,通过一番对比,选用了相对便宜一些的皕杰报表,开发版大概在一万多,帮助文档和售后支持很全面,花了大概两天时间,把帮助文档浏览了一番,和项目做了一个简单的集成,下面大概介绍一下关于报表大致内容。

其实,帮助文档中把整个报表从易到难介绍的非常全面,不应该出现这篇博客,为了做下学习的记录,还是写了出来。首先说,一般的报表都会包含:报表设计器、报表服务器两大部分,报表服务器中有报表引擎,是整个报表的核心,报表解析、缓存管理、性能管理和调度管理等,报表设计器可独立存在,不用依赖于报表服务器,它自带运算引擎等,主要用来设计、调试报表模板,举个熟悉的例子:就像EclipseTomcat的区别,Eclipse提供了开发程序的一切条件,当我们开发完成后,需要拿到Tomcat去部署,然后用户就可以使用我们的系统了。说了很多,下面是皕杰报表和FineReport的架构图,大家可对比可下:

(皕杰报表)


FineReport


从上图我们分析可得,报表工作的一般流程是:开发人员设计好报表模板,部署到报表服务器,服务器根据之前的设置,从数据源拿到数据,经过解释翻译等过程,把数据和模板组合成一个有数据的页面展现给用户,然后给用户提供导出打印等功能。

用过了报表,那为什么会出现报表呢?报表其实就是账单,就像饭店的账单一样,进入信息化时代,纸张必然淘汰,微软推出的ExcelWord等成为了报表不可多得的好工具,但他有一个致命的缺点就是数据静态化,如何解决动态问题?数据库其实也可以看做是一个动态的报表工具,但是无法支持复杂的更加直观的图形展示等功能,因此,报表系统出现是历史必然,针对国内各种特色的报表需求,很多国内厂商又推出了符合国内人习惯的报表系统,比如润乾、fineReport、皕杰等。

以上这些报表用法大致相同,具体可查看技术文档,就没必要在此多言了,有时间得多看看开源的报表系统。