今天给大家安利一套自动化报表的实现过程。
按照以往,自动化报表是这么实现的:仅使用Excel的Power query+数据透视表,甚至连VBA都不用,就实现了如下的多视角多维度,带筛选功能的自动化报表。
Excel的自动化报表到底强大在哪?这还用说?可以让你通过各种方式让老板满意,这还不够?要是老板让你做个全年的财务分析表,你找IT要到了数据,之后自己操作一番就生成了可视化报表,感叹简直牛哉!
其实对于一部分人乃至很多小企业(50人以下)来说,学会这些就够了,但是还是有很多人和很多中大型企业,面对巨大的数据量,也想这么干,但是无奈没有办法,为什么呢?
在真实的工作中,数据量是很大的,Excel根本支撑不住如此高维度的分析,就我对于Excel的真实体验来说,100多M的Excel文件,光打开就需要小二十分钟,随着多任务线之间的交叉,汇总任务呈几何级数增加….
找IT人员用python或者sql数据库,也是一种解决方法,但都不是长久之计,解决方式应该是建立自己的报表系统,将数据库打通。
报表项目中,常常会出现报表源数据来自不同数据库的情况,也就是同一张报表可能会从多个业务系统读取数据。例如:员工信息从人力资源系统中取出,销售数据从销售系统中取出。当然,还有一种可能,同一应用系统的数据库负载太大,不得已分成多个数据库,例如:销售系统数据分成当前库和历史库。
在数据库类型方面,报表工具可能连接同样类型的数据库,比如都是 oracle 或者 db2;也可能是不同的类型。
报表应用中针对这种数据分库存储的解决办法有两种:
(1)建设专门的数据仓库
(2)利用跨库访问的技术
专门数据仓库的建设和管理比较复杂,如果数据量很大效率会很低,而且要持续进行 ETL 以便同步各个应用系统的数据。如果使用跨库访问技术,例如 Oracle 的透明网关、DB2 的联合查询等,也会遇到不少局限。
现在有了第 3 种解决办法,也就是建立自己的报表系统:其内置的集算引擎可以连接多个数据库,取数之后统一进行数据计算,从而能较好的解决报表数据取自不同数据库的问题。
如果要实现自己的报表系统,并能做出可视化的报表,还能自动化,那就是今天我要讲的FineReport了,它是什么?
FineReport的本质是一个通用的报表制作和数据可视化工具,是一个开放的商业报表工具。好比Excel,小到可以存储统计数据、制作各式各样的图表、dashboard,大到制作财务报表、开发进销存系统。
对企业来说,两个星期搭建数据环境和人员学习,就可以实现自动化出报表了。正常不出意外的情况下,一份报表的手工制作时间为2~3个小时,改为FineReport自动化模板后,一键刷新,整个过程不超过5分钟,制作人员只需要翘脚等待刷新完成。
而且,对于想做信息化转型的企业来说,报表自动化是其基础,那么FineReport是如何实现它的?
1、释放劳动力:复杂且多维度的数据需要庞大的人力资源开销了,实现自动化可以直接的降低此部分的重复开发,注意是“重复”。
对于IT开发人员来说,以前的报表需要通过SQL、JAVA等开发语言来制作,对开发人员要求高,开发周期长。在FineReport中,只要会SQL和一些简单的JS,就能实现各种复杂的报表样式,还支持二次开发,想要的都能拥有!
同时,FineReport独有的数据集、组件、单元格复用的功能,半小时就能完成一张复杂报表,解放10+人力。
2、降低错误率:自动化意味着通过编码的手段持久化流程、逻辑,当我们调试正确一次后,那么我们就可以信任这个工具了,我相信再重复劳作场景下机器的稳定产出率要比人更加可靠。
(1)报表运维:我们需要依据业务人员的使用数据对报表进行迭代与优化,及时淘汰弃用的报表,对常用的模板进行展现样式、交互效果、性能层面的调优。FineReport采用云端运维的模式,所有数据全部上云,实时更新。
(2)权限管理与多级上报
部分重要数据未经审批就提交入库是有一定风险的,且二次校检比较复杂,所以需要上级部门对底层工作人员的填报数据进行处理和验证审批,这种简单的工作流,我们称之为数据上报。
FineReport的报表功能完全满足这个需求,且具备简单易操作的审批流程设计功能,并可以做到三种上报模式:简单数据上报、联合填报上报、分发逐级上报。
3、时效性高:除了每个月报表的报表,我们还可以考虑实现在每一天统计当月的情况,实时的汇总每日信息以动态的调控月度计划。
报表是需要定期生成、定期发布的,所以不得不定期做重复的事情来得到用户需要的报表,有过经历的人都懂,这是多么多么的麻烦。FineReport 的定时调度功能可以让用户从不厌其烦的重复操作中解脱,你的周报、日报、月报再也不用担心。
它是通过直连企业的数据库,换句话说,FineReport相当于在数据库的支撑下搭建了一个数据中心,所有的生产数据都可以集中到系统中去,通过业务包的形式进行管理,并将数据库中的数据按照字段实时更新,想做报表时就可以直接从库中取数。
同理你也可以将其集成到OA系统、ERP系统之中,随时取数、找数做报表。
总结
其实,自动化不仅仅局限于报表,当你实现一部分的工作自动化以后,你就会走上一个“工作自由”的快车道,因为你有更多的时间能用来研究如何去更高效的完成余下的那堆工作,然后,每天工作的时间就会越来越短。
原创文章,作者:kepupublish,如若转载,请注明出处:https://blog.ytso.com/tech/bigdata/172990.html