又到月末了,表格表姐、财务狗,IT人们又要赶报表了。
财务人哭诉说:
自从干了总账会计,我发现人家吃饭,我在做报表;人家睡觉,我在做报表。做报表的事真是从年头到年尾,从年尾到年头啊,现在生活中没有其他,只有EXCEL。
自从干了总账会计,我才知道一个报表不来回修改个十几二十次,那都是不正常的。我才知道周末是不能关机的,要是关机了,就嘿嘿。
所以说,做报表的,佛系才能长命。
表格表姐也憋了很多牢骚:
每到月底、季末,领导就会在群里夺命连环@
要知道,这样的报表,我要去申请业务系统的数据先核对。大包大揽导出几十万条数据,给我配备的电脑,打开需要2分钟;每写完一条函数,都要运算7、8分钟;鼠标不敢乱点,人也不敢离开,还时不时的得给主机扇风。企业级的报表,尤其数据多的时候,Excel真不是好选择。当你好不容易做完,一句“数据不对”就给打回,心中真不知是什么滋味。
IT人更是不服:
公司采购了几千万的SAP大家不用,业务系统自带的报表也不用,依旧excel邮箱满天抄送,任务系统中这里少数据,那里口径对不上。回头各种抱怨数据不对。SQL手把手教大家写了,简单的数据库功能也是花了两天培训的。结果到头来,简单的报表需求依旧交给IT,反倒是需求提得更严苛了,真是有苦无处说。
大大小小的报表,是企业里少不掉的基础事物,维系着整个经营信息的流转,但现在反而成为很多人的日常工作的束缚,不免引起一阵反思。
工欲善其事,必先利其器!
造成这些问题的很大部分原因就在于,缺乏一套高效的工具。
做报表做表格,很多人第一时间想到的是Excel。Excel作为个人办公软件绝无仅有,但作商业用,其实在效率上还有办公协同上稍有不足:用Excel收集数据容易乱,用Excel存储数据容易丢失,影响数据质量。而且普遍企业报表需求大于人员负荷,用Excel做报表改报表无疑都是在增大工作量。
懂IT的朋友可能会说,交给数据库啊my sql 、oracle,写两条SQL,借助数据库的运算性能就解决了。再不行,找程序员写代码,批量做报表,数据录入、图形化报表、甚至数据分析都可以交由程序开发,性能杠杠的。
那如果有现成的工具,可以直接和数据库交互(数据导出+填入数据),能连接各系统的数据,能高效率批量做报表,展现,交互分析,可视化大屏,并做到办公协同,那就是小编今天想来讲讲的FineReport了。
为什么这么说,先来了解FineReport的制表原理
1、FineReport的制表原理
FineReport是通过连接数据库,读取数据字段来设计报表模板的,所以在制作模板前先要知道数据库的类型、地址、访问数据库的用户名密码,两者建立一个数据连接后才可开始设计模板。然后依据所需功能(表格展示?填报?dashboard分析?)和表样来操作模板,最后在web端展示。
制作模板时处理的对象是数据字段(区别于Excel的单元格数据),模板中一个单元格放一个数据字段,web端展示时字段扩展。FineReport报表中单元格的扩展是有方向的,可纵向扩展,也可横向扩展,也可以不扩展。
单元格的扩展是针对某一个单元格,当报表主体中绑定了多个单元格时,单元格与单元格之间依靠父子格关系跟随扩展。子格的数据会根据父格的数据进行过滤分组显示,并且还会跟随父格的扩展方向而扩展。
2、三大类报表设计方式,解决日常所有报表需求,并且一表复用。
1)普通模板设计,此者最常用。依靠着单元格的扩展与父子格的关系来实现模板效果,可进行参数查询,填报报表,图表设计等。比如交叉报表、行式报表、分组报表等等。
2)聚合报表设计,针对不规则大报表。适用于一张模板中显示多个独立模块的报表,几个报表块汇总在一起的复杂报表。
3)决策报表设计,就是表单,也是dashboard,也就是大家常见的各种图表拼接在一起的可视化数据报表。
通过拖拽图表来制作,制作好的dashboard可以自己适配屏幕的大小,多以也可以做成手机端的报表,大屏可视化,下面有细讲。
以下举例一些常见的报表格式:
交叉表
行式报表
分组报表
自由报表
3、参数实现数据查询和过滤
在很多情况下,我们需要根据条件查询数据,过滤。在FineReport中,通过设置参数绑定数据字段和过滤的控件(单选框、复选框等等),参数可用JS编辑更多复杂的情况,通过界面输入查询条件来控制报表显示的内容及形式,而后导出打印。
很多公司很多员工都会要做周报月报季报等,有些全国性的公司有分公司、门店、办事处。经常性的要做这些重复性很大的报表。那用FineReport就可以集中将每一条数据明细上传到数据库中(填报功能,下面会讲)。在做报表时,做将一些常用的维度“地区”、“时间”、“城市”等等作为一个查询的参数控件,类似Excel中的筛选,导出。基本上一个周报模板,就解决了一些人一年52张手工excel报表的工作量。
4、填报
填报就是向数据库中录入数据,用于固定格式固定条件的数据收集。就好比你注册网站时提交的邮箱、收集、用户名、密码,都会按照格式存放到数据库中。
填报也需要一个模板,操作流程如下:
填报模板由控件组成,文本控件、数字控件、密码控件、单复选框、网页、文件等等。控件对应着数据字段。有了填报,就可以收集数据,并且允许用户实现对数据库的增删改。出于数据质量和数据安全的考虑,还可以对填报进入的数据做校验操作。
填报最大的用处是替代excel收集数据,做好了模板,奖模板链接发送给相关人,填完数据审核过后即可入库,省得excel传来传去,而且是在web端填写,也非常简单。
酷炫的dashboard都需要通过FineReport的表单(决策报表)来设计展现。通过拖拽报表块、图表块和各类控件初步设计界面。
不同于普通报表,普通报表是一个整体,无法实现局部刷新。表单是由各个组件组成,可以实现组件内刷新,即局部刷新。像动态大屏都是全局或者局部刷新的,所以需要用决策报表制作实现。
1、决策报表制作过程
新建表单:FineReport支持新建工作薄,即普通报表模板,还支持新建表单,两种设计模式;
拖入组件:FineReport表单支持多种不同的组件类型,包括报表块、tab块、绝对画布块、参数、图表和控件等等;
定义数据集:定义各个组件数据来源,图表组件数据即可来源于数据集,也可来源于单元格;
设置表单样式:即设置表单的显示样式。
2、数据可视化与交互
之前很多网友留言,问这样的可视化是什么图表制作的。其实大多由FineReport自带的H5图表。此前有提到FineReport良好的开放性,可让IT同事写代码开发,所以在制作时,也可接入Echarts等第三方控件来制作图表。
3、实用而强大的数据地图
finereport有很强大的地图功能:基本地图、GIS地图、热力地图、大数据流向地图等。
GIS地图基于GIS地图层进行数据展示,支持自定义GIS主题风格,能够与数据表钻取联动。比如省级钻取到市级、县级、街道。
篇幅有限,以上只展现了FineReport的一部分功能,很多细节无法展开。
要说效率,最大的好处就是从数据库中读出数据自动产生报表,且一类报表做成一个固定样式的模板,每次只要同步一下,自动生产周期性的报表,如日报、周报、月报、季报等。 每次按照条件查询,Excel批量导出/打印,少了人力去一个一个用Excel统计汇总。
而且操作上,大多数功能FineReport都封装成模块了,包括写SQL取数,汇总筛选过滤等,基本上都有对应的功能键。像著名的资产负债表,如果按照以往写代码或者写复杂的SQL语句,就有点摧残生命了,而且那天书般的SQL语句要是出点错谁来查,如果数据来自多个源,那就彻底无法解脱了。
其次,在数据处理速度上,由于性能一部分依靠数据库,一部分依靠FineReport的行式报表引擎,相比于Excel的单机效率,几十万行的数据秒出。再者,企业数据库有各种自带或第三方的集群方案,通过堆机器就可以近似于无限的加大数据储存能力。
最后,FineReport除了解放个人,最大的贡献应该是对企业。在商业用途上,我们要考虑效率,人员的培训成本,协同性,还要考虑对企业业务的支撑、贡献,这几点Excel是比较难发挥贡献的。有知友说“Excel用得再溜,老板也不会给你涨工资,可能还革了其他同事的命”。那是因为Excel处理了数据,但没有得到有效结果去服务于业务带来效益。那如果在报表之后,基于业务基于指标去做特定主题的数据分析,站在公司角度做数据化管理,为领导的业务决策提供有效意见,这样的高度就别有不同了。
如果想了解更多,欢迎移步帆软官网下载个人免费版本~