报表是所有软件项目中的基础功能,市场上有不少报表工具,例如国外产品水晶报表、JasperReport、BIRT、jFreeReport等。不过由于国内市场的特殊性,报表格式通常比较复杂,老外的产品不太适应,现在开发者已逐渐转向国产的报表工具,例如Smartbi电子表格、润乾报表、帆软Finereport、久其报表等。
在国产的报表软件中,FineReport是老牌子,Smartbi电子表格是广州思迈特公司推出的新一代报表软件,这个“新一代”新在何处?有什么新的特色?
Demo初体验
两个产品都提供在线体验和免费下载,Smartbi电子表格的Demo网站是 http://demo.smartbi.com.cn,Finereport的Demo在http://www.finereporthelp.com:8889/demo。通过体验网站,大致可以了解各自的功能。
Smartbi的Demo包括:报表展示(列表式报表、分组报表、交叉报表、中国式报表等)、图形展示(线图、饼图、柱图、面积图、雷达图、迷你图等)、数据填报、动态报表、分析报告等。
Finereport的Demo包括报表展示(明细表、数据钻取、分组表、套打表等)、参数查询(时间段查询、模糊查询等)、数据填报、统计图表(折线图、气泡图、散点图等)、主题分析等。
令人意外的是Finereport使用了Java applet插件,需要用户安装java环境,这在当下并不常见。
粗粗看完Demo,感觉两个产品都提供了完备的报表功能。
1.报表开发对比
思迈特公司开发了一个Excel插件,直接利用Excel进行报表设计,这也是“新一代”的含义,因为国内其他的报表工具都号称是“类Excel报表设计器”,从全球范围看Smartbi也是第一家直接利用Excel的报表产品。
使用Excel设计报表,产品的易用性、功能新都更好。其他报表工具模仿Excel,把Excel的部分功能重新做一遍,实在没有必要,也不可能比Excel做的更好。
Finereport的设计器是Java开发的客户端程序,功能丰富、略显复杂,在“类Excel”报表工具阵营中是比较成熟的。
除了界面上的差别,报表开发过程其实是很类似的,大致步骤是:连接数据库----开发数据集---拖拽字段到表单---表单美化。都能够实现各种类型的报表,支持多源分片、行列对称,能够轻松处理复杂的报表展现样式,都支持中国式报表。
对比结论:
Finereport是类Excel报表设计器,Smartbi电子表格直接利用Excel设计报表;两个报表工具的功能都很全面,开发过程类似,Smartbi胜在易用性。
2.图形开发对比
图形是报表的重要元素,漂亮的图形能够为报表增色不少。Smartbi电子表格直接利用Excel的图形组件,Finereport自己开发了一些图形组件。
Smartbi电子表格的图形优点有三个:图形种类多、图形更漂亮、设计时所见即所得。Excel的基础图形虽然不多,但图形组合能力超强,能够做出各种创意的图形。在Smartbi的Demo中,“高级图形”目录展示了一部分创新图形,例如手风琴式折叠图、子弹图、毛利树等。
Excel图形具有极强的定制性,可以设计出非常漂亮的图形,有兴趣的可以看些Excel作图方面的图书,例如《Excel图表之道》。
Excel设计图形时所见即所得,在设计调整图形时非常直观。Finereport在设计状态下只能看到大致的示意图,在执行状态下才能看到图形的真实模样,图形的调整略为麻烦。
Finereport的图形也有自己的优势,内置了几种复杂图形(全距图、甘特图、仪表盘等),地图/GIS地图颇有特色,图形采用html5技术,动感十足。
结论:
Smartbi电子表格和Finereport都提供了丰富的图形功能,Smarti胜在美观性、图形数量、设计的直观性。
3.平台管理功能对比
除了核心的报表、图形功能之外,Smartbi电子表格和Finereport还提供企业级产品必备的平台管理功能,例如系统管理、用户管理、定时调度等。Smartbi的元数据分析功能颇具特色,能够追溯数据的来源,对于开发者非常友好。
4.二次开发对比(javascript脚本)
Smartbi电子表格和finereport都支持javascript脚本,开发报表的一些动态效果,例如下面的表格树报表,就是通过JS实现的。
Smartbi电子表格提供向导设置,自动生成JS代码。Finereport则必须手写代码。在开发者友好程度上,Smartbi更好。
5.移动版对比
Smartbi电子表格和finereport都提供ios/android的APP,手机上的展现效果较好,基本与PC上一致。
离线功能是Smartbi电子表格移动版的突出优势,报表数据可以存储在手机上,在脱离网络的情况下,用户依然可以打开报表查看数据,非常适合经常外出的领导使用。
6.性能对比
Finereport初次打开报表时会下载两个1M多的JS库文件,在局域网内基本没什么影响,但当网络环境不好时(例如手机网络),速度会比较慢。在两个JS文件缓存后,后继打开的报表速度会大幅提升。
Smartbi电子表格初次打开报表时,下载的文件都很小,网络负载低,打开速度快。
在win7+CPU(i5 4200u)+8G RAM+mysql环境下,测试一下交叉表的运行效率,数据行2.3万条。
测试结果如下,报表首次运行时的速度大致相同,但第二次、第三次运行时,Smartbi电子表格的速度大幅提高,Finereport的速度基本不变。究其原因,Smartbi电子表格提供了较好的缓存机制,Finereport虽然也有缓存但似乎效果不大。
7.价格对比
Smartbi电子表格提供免费版(含10个注册用户及5个并发用户),企业版公开报价是6.8万/套(不限用户)。Finereport的价格不详。
附带两个产品的演示版本下载
Smartbi电子表格下载网站:http://www.smartbi.com.cn
帆软Finereport下载网站:http://www.finereport.com/