作者:Jenny.Zhang
发布时间:2023.9.15
浏览次数:4,725 次浏览
作为一个在数据行业摸爬滚打多年的老江湖,我初入行的时候和大部分人一样,当了很长一段时间的“表哥”,才开始做真正的数据分析,辅助业务决策。不过无论是当纯粹的“表哥表姐”,还是专业的数据分析师,都难逃做报表这一关。
提到做报表,自然而然就能想到Excel,从大学到毕业后工作2年,我对Excel的都处于一种狂热的追捧状态,认为在数据处理、报表制作方面来讲Excel是最佳选择。在我大学的期间,我就把Excel用的很熟练了,学会了各种基本函数的用法、数据透视表操作,还用Excel做一些简单的数据挖掘工作。
不可否认的是,Excel给我的职业生涯开了个好头,对刚入行的小白来说,熟练掌握Excel分析和报表制作技巧还能了解一些数据挖掘知识,很快就能在同批新手数据分析师中脱颖而出。
但是工作2年后,我对Excel热爱已经荡然无存,甚至有点厌恶。
本来是抱着一腔数据分析的热情,结果每天就是做一些基础的报表需求工作,大量的时间花在取数,数据处理,报表制作上,真正的分析工作只占5%的时间。
而且Excel对于简单逻辑的报表和小规模数据集,数据处理起来还是很快的,但是一旦遇到复杂的大数据量数据集就卡的要死,效率很低。再加上数据无法实时更新,需要耗费很多重复人力在更换数据源上,并且可视化效果也有限。
当时我在的部门,全部是用Excel做数据分析的,虽然总有人吐槽,但也没人提出更好的解决办法,大家就依然沉浸在加班取数做表......取数做表的氛围中。后来新换一个主管,带着我们用开源报表工具实施报表项目。
用了开源报表工具,大数量问题解决了,也实现了报表的个性化定制,但是新的问题又来了,开源报表工具没办法适应需求的变化,项目搞到一半,需求一变化,代码改起来就手忙脚乱,经常因为业务改需求导致项目延期上线。
被开源报表折腾够呛之后,我们又准备试试商业报表工具,四处打听了一番之后,了解到了FineReport这个国产报表工具,在业内口碑不错,打听了一下消息,也有不少竞品公司在用它
于是,我们就对这个报表工具展开了研究,对我们来说,选工具最重要的就是这几点:1、易用2、上手难度低3、性能好4、性价比高,FineReport在各方面的表现都很好,也改变我以前对国产软件的一贯偏见。
先说取数的问题,这是让绝大部分数据人最头疼的事儿,大部分企业的CRM、ERP、OA 等业务系统都是独立运行的,各个系统的数据不能打通,取数就要到不同的系统中查询导出,再加上各个系统的数据口径不一致,取数、整合数据的环节就要耗费70%的精力。
FineReport系统架构
FineReport提供了多源数据整合的功能,可以和多个系统的数据源链接,跨数据库、跨数据表取数,把来自于不同系统中的数据集中到一张报表中,比传统的SQL+Excel整合数据的方式效率高的多。
报表开发方面,FineReport也比Excel更专业,它是一个纯Java开发的报表软件,相对于开源报表来说,它的功能都是封装好的,用户不需要编码直接就能用,而且它的界面设计风格和Excel类似,兼容Excel常用的公式,稍微会点Excel就能很快上手。
另外,它带有普通报表、聚合报表、决策报表三种报表模式,基本上覆盖了我们工作中遇到的绝大部分的报表需求,比如普通的分组报表、行式报表,复杂票据之类的中国式的复杂报表,还有就是驾驶舱、大屏之类的可视化报表。
普通报表模式一般用来做分组报表、行式报表等基础报表,制作模板的时候处理对象是数据字段,这一点和Excel区别,Excel是对单元格数据进行操作。然后依靠着单元格的扩展与父子格的关系来实现模板效果
行式报表
聚合报表是专门用来做制作不规则的复杂报表。一张报表中各个模块相互独立,像下面这种,这样的报表用Excel做的话,我估计你得花半天时间来回对齐格线
决策报表模式功能很强大,可以自由拖拽设计表单界面,自适应页面大小显示,制作炫酷的可视化驾驶舱或者大屏,各个图表组件通过参数设置能够实现联动和钻取分析,这些用Excel做就得要学会透视表和vba,而且还没办法解决数据实时更新的问题
拖拽制表
FineReport制作的驾驶舱模板
FineReport制作的可视化大屏
反正整体来说,FineReport在报表开发方面的优势可以总结成这三个方面:
直接从数据库中读数,周期性的报表用一个报表模板就可以一劳永逸,每次同步一下就可以自动生成,比Excel手动统计汇总方便太多。
操作简单,大部分的功能都封装成模块了,直接就能用,而且sql语句可以拖拽生成,不用一行行码代码。而且FineReport软件内置了常用的报表模板,比如财务分析常见的资产负债表,模板的指标和计算公式都设置好了,直接往里面填数据,就可以快速生成报表,节约大量时间。
数据处理速度快,报表一部分依靠数据库,一部分依靠FineReport的行式报表引擎,相比于Excel的单机效率高了N倍。
除了开发性能高,FineReport还有一个亮点就是支持填报。通过设计好的填报模板可以直接向数据库中录入数据,可以通过填报校验条件设置来保证入库数据的准确性。我看见好多公司收集数据的办法就是用Excel,把一张Excel表传来传去,最后拿到手还要检查数据准确性,用FineReport填报报表,只需要把填报模板发给对应人,填完数据自动审核入库,省一半劳动力
接下来再说说数据安全和报表后期管理运维的问题。企业无论选什么样系统还是工具,最担心的就是数据安全的问题,原始的excel报表开发模式很难保证数据安全,在报表流转查看的过程中极有可能发生数据隐私泄露的情况。
不过FineReport在设计的过程中显然考虑了这一点,提供了一个数据决策系统来对报表系统资源、用户、模板进行统一管理,方便我们IT人员对系统进行运维。
管理员可以根据用户的企业角色或者部门分配报表查看和编辑的权限,保障数据安全,除此以外,还可以通过定时调度、智能运维、连接配置等功能实现对报表系统的整体配置和运维。
从上面说的几点来看,FineReport在企业报表应用上完胜Excel,而且它还可以集成在OA,ERP,CRM内,懂点java的话还可以做更深层次的开发,比如我同事用这个开发了一个公司内部的考试系统,获得老板一阵夸赞。
能遇见这样优秀的国产软件着实让我体会到了国产真香,再想到前两天哈工大被禁用Matlab软件的事,让很多用着国外软件的企业惴惴不安,也让大部分的企业意识到国产化替代的重要性。
虽然我们在国产化软件研发上还有很长的一段路要走,不过当下这些优秀国产软件的涌现,也让我们在国产化替代上更有信心!
比如,目前主流的软件——帆软finereport,它小到填报、查询、部署、集成,大到帆软可视化大屏、dashboard驾驶舱,应有尽有,功能很强大。最重要的是,因为这个工具,整个公司的数据架构都可以变得规范,下一步就是构建企业的大数据平台了。而且它是java编写的,支持二次开发,类Excel的设计器,无论是IT还是业务,上手都很简单:编辑sql优化、数据集复用简直都是小case,大大降低了报表开发的门槛。在企业中被关注最多的数据安全方面,帆软FineReport支持多人同时开发同一套报表,并通过模板加锁功能防止编辑冲突;通过帆软数据分析权限控制,保障数据安全。
商业智能BI产品更多介绍:www.finebi.com