在项目开发前的设计阶段,当我们讨论报表需求时,往往会纠结是选择开源软件还是商业报表工具。实际上,这个问题并不复杂,简单粗暴的来说:
1、报表现在不多,今后也不会很多,同时也不难,用开源;
2、当前报表少,也不难,但后续会不断增加报表需求,那么建议直接上商业报表,以防后患;
3、现在报表已经比较多了,那么不管简单还是复杂,建议选择便宜的商业报表;
为啥?
1、开源报表不花钱,报表需求已经确定,就那么几张,并且都还挺简单,开源报表完全能够满足,开发多用不了多长时间,后期维护也不会多费劲,干嘛要花不必要的钱?!
2、开源报表对于复杂格式,尤其是中国式复杂报表,往往力不从心。所以,不管确定需求中的报表是多是少,一定要选择国内的商业软件,这些商业软件解决此类复杂报表的技术都已很成熟,随便选个自己能接受价格(当然是越便宜越好,haha)的产品就行了。
3、商业软件服务好,有电话、在线、邮件等等各种入口可以咨询;而开源就只能到论坛发帖子,什么时候能有人回,完全靠运气,因此被客户骂的可能性是很大的,千万不要给自己挖坑!
说到这儿,好像和今天的主题有点跑偏了——其实并没有,今天就是想通过看似很简单的交叉报表(行列都有分组维度),对比一下用开源和商业报表工具的开发过程,最终有助于解决的就是上面所说前期选型问题。
我们现在的开源是比较常用的 Birt 报表