从事Java开发这么多年,经常会遇到设计到报表开发的项目,各类的报表工具也接触了不少,最近有人让我推荐一些比较好用的开源报表工具,我就借这篇文章系统地说一说。
从节约成本角度出发,开源类的报表工具肯定是首先想到的,目前国内外的开源报表工具大大小小有不少家,用的最多的是这三个:Jaspereport、BIRT、Pentaho,下面结合我的使用体验说说各自的优缺点。
这个是用的最多的一款基于Java的老牌开源报表工具,免费的。可以在Java环境下像其它IDE报表工具一样来制作报表,提供了可视化操作界面,可以输出多种格式也支持通用jdbc数据库链接,一般都是和ireport搭配使用。但是系统语言是英文,这一点用起来比较不方便,而且像一些复杂的报表样式,比如常见的交叉分析销售业务情况表,实现起来很困难,要写大量的代码,开发周期长。
BIRT也是深受报表开发者喜爱的一款开源报表工具,和jasperreport一样是免费的,比上者好的一点是,它安装之后操作界面是中文的,而且采用的是类Dreamweaver的界面,可以生成图片、导出excel,做一些简单的列表报表、交叉表很方便,但是对于一些需求复杂的报表做起来很麻烦,而且没有填报功能。
Pentaho 是操作交互性能比较好的开源报表工具,免费但系统语言是英文。他的优势是报表设计环节很方便,可以任意摆放和设置各类报表控件,也能够快速地设置报表的数据来源,且随时可以预览报表的结果。支持链接通用数据库、图形化呈现,打印、导出、也可以做大屏展示,但和birt一样没有填报功能。它主要是以工作流为核心、面向解决方案而不是工具组件,它把多个开源项目整合到了一起,可以创建报表、仪表盘、分析模型、商业规则和 BI 流程,但是鱼和熊掌不可得兼,Pentaho同时具有报表与商业智能的功能,所以导致两个功能都不是很出色。
从工具成本的角度来看,开源工具的确成本低,但是在实际应用的过程中发现,开源报表的性价比其实不高,因为开源报表工具大多是国外的,没什么像样的技术支撑,学习文档都是英文的,学习成本比较高。另外,从功能实现的角度看,开源报表工具实现一些简单的报表需求还是没问题的,但一旦遇到中国式的复杂报表就难以解决,除此以外,开源报表没有专业的技术支持,维护起来很困难。
所以,为了避开开源报表的不足,很多人更愿意选择商用报表,目前市面上的商用报表功能都比较强大,也分国外和国产的,国外的比较典型的有水晶报表、Cognos,国内比较知名的是帆软的FineReport,功能上来说,国产报表更能适应一些中国式复杂报表需求,且技术文档是中文的,查看起来方便,技术支持服务也比较完善。我现在涉及到报表制作项目的,一般都是用FineReport,简单介绍一下吧。
第一个吸引我的点是上手快,它的报表设计页面和Excel类似 ,拖拽式操作很灵活,基本不用写什么代码,会用sql取数就行了。



点击阅读原文免费获取FineReport个人版永久激活码

推 荐 学 习
一文教会你财务报表分析,小白也能看懂
数据分析掌握这个方法,你就会了一半
数据可视化用这个工具,比Echarts快一倍!
长按识别二维码关注公众号
码字不易,给个在看吧~

