为什么“中国式复杂报表”比国外难?报表怎么做才能不难?

文 | 商业智能BI相关文章 阅读次数:1,540 次浏览
2023-11-21 17:06:40

中国式复杂报表是什么?

如果说程序员是“码农”的话,那在银行做报表几乎等同于干保洁。平时部门里杂七杂八的事情一定会被分配到自己身上,没有人觉得你的工作有难度,干得好不会受到任何夸奖,一旦报表出错了就会被通报批评。就拿银保监会的East系统要求的报表来说,每个月都要报送,报表格式很复杂,对数据质量和广度的要求高,单纯依靠自动取数和报送根本没办法达到要求,只能靠人力补录。刚入职的时候,对这些报表都不是很熟悉,很容易就会填错数据,被领导一顿骂。

中国式复杂报表变简单,跨组计算,数据处理工序

实际上,报表人的困境可不仅仅是在金融行业,每一个报表新人基本都被这些格式乱套、行列表头复杂的报表折磨过。

为什么会出现这种复杂的报表?

这边提一个“中国式复杂报表”的概念,这个词并没有标准定义,但说的就是中国特有的表头乱、格式复杂、信息量大的报表。看下面这张图你就知道是什么样子的了。这类报表,领导和垂直的业务人员会很喜欢,只要一张表就能看到所有的信息,但没有一个报表人员喜欢做这样的报表,也正是这样的表让企业存储数据的系统变得冗余。

中国式复杂报表变简单,跨组计算,数据处理工序

这类报表产生的原因不太好考证,但主要有两种说法。一种说国人早期不太会使用电脑,通常直接把纸上的一套报表依葫芦画瓢地搬上电脑软件。另一种说是Excel“老鸟”使用习惯没有随工具升级而改变的问题,这些人习惯了用Excel2003做错综复杂的报表,二十年过去了,实现这种报表的方式还是没改变。他们确实觉得简单,毕竟一个功能用了上万次,不熟练都说不过去了。但对报表新人来说,难度堪比用Excel开发可视化大屏,也就渴求让中国式复杂报表变简单。

这些报表到底难在哪里?

1、报表格式复杂

中国式报表最明显的一点是:边框线规则复杂、表头斜线多、格子层套,在绘制表格的时候要注意兼顾层级关系,最头疼的是有些表格很宽,常常搞得顾了左顾不了右。

用Excel确实能制作复杂报表,一个一个小格子,配上合并单元格功能和边框功能,就好像把用纸笔画表的场景搬到了电脑上。但你要问每个格子之间的逻辑?做表的人不清楚,看表的人更是稀里糊涂,随手就被扔进了回收箱。现在的专业报表工具则比Excel更前进了一步,同样可以做复杂报表,但至少制表逻辑清晰,能够形成复用,后来人不用苦苦琢磨到底这复杂报表要怎么合并了。

下面就是典型复杂报表:

自由报表:例如订单卡、身份卡、档案卡,FR支持特殊样式的定制

中国式复杂报表变简单,跨组计算,数据处理工序

交叉报表:例如动态列、分页分栏、单元格进度条,FR支持斜线、冻结行表头及特殊值显示

中国式复杂报表变简单,跨组计算,数据处理工序

数据钻取:支持斜线,行表头冻结,报表之间支持传参,能指定某一字段添加跳转

中国式复杂报表变简单,跨组计算,数据处理工序

其它特殊报表:FR支持单据套打报表、考勤表、电子签章报表

中国式复杂报表变简单,跨组计算,数据处理工序

2、报表数据源多样

大多数情况下,同一张报表的数据通常会来自多个不同的数据表,甚至来自多个不同的异构数据库,从而形成常说的多源报表。最开始这些报表的制作完全依靠IT部门,单取数的工作量就巨大。举个《流浪地球2》里面的例子,各国核弹引爆密码都以不同的方式加密,破解每个国家密码的逻辑都是不一样的,这也是为什么耗费时间很长。取数工作虽没破解核弹密码那么难,但数量大啊。现在大多数企业都已经用上了大数据决策系统,像FineReport之类的,通过打通各个业务系统、数据库数据,用简单SQL的形式取数,确实释放了不少人力成本。

中国式复杂报表变简单,跨组计算,数据处理工序

3、跨行跨组计算

报表数据统计一定会涉及计算:同一行不同列数据的计算、同一列部分数据的汇总等等,这种计算在中国式复杂报表中属于“最基础”、“小儿科”的计算。毕竟,一旦存在时间,那么多半要看同比、环比之类的,这种基本上都是跨行、跨组计算的,简单通用一点的通过写代码或者增加辅助格协助运算数据能够实现。再复杂一点的,像数据涉及到五六个不同的格子,或者需要先计算出一部分数据,再去数据库获取相关数据进行报表制作的,难度可想而知。同样需要利用工具,脱离数据库的处理概念,去打造一套进行复杂计算的逻辑,跨组计算这也是现代很多专业报表工具能够实现的。

4、数据处理工序混乱

数据处理工序的基础工序包括数据产生、整合处理、应用呈现等,而中国式复杂报表把这些基础且分先后的工序,混合在同一个层面了。同一个表,既负责数据录入,又直接用来呈现结果。就拿最经典的填报需求来说,报表不仅需要可以统计汇总数据,还需要可以修改数据,然后把数据存储起来。这种既要对报表的填报模型、数据处理工序、性能等方面进行处理,还要个性化展示的需求让原本只解决“看”这个问题的报表自然而然变复杂了。

怎么能让中国式复杂报表变简单?

从制作层面来说,各大国产报表软件改良得差不多了,像帆软的FineReport更是打出了“低代码”。我这边就不讲具体实操了,大家网上一搜一大堆。这里想强调的一点是要学会区分报表的使用目的,根据我的经验,大致可以分为记录数据和传递信息两种。

1、记录数据

现实工作中,经常会有“中间表”的出现,这些报表可能是收集填报数据,可能是部分作业中的一部分,反正基本上不是最终产物。对待这这种“强复用”性的表,最好的方式就是尽可能让数据结构简单、清晰。毕竟,数据库里面的表基本上都是一维的,使用起来也方便。同样道理,中间表就不要追求高度完整了,大家要的本就不是最终成本,所以怎么方便用怎么来。

2、传递信息

这类用来传递信息的报表,基本上就是最终产物。对于这类报表,在一开始的时候就需要跟业务确定清楚需求,尽可能做出一张兼具内容和视觉的报表,比如驾驶舱、可视化大屏、经营分析报表等。

都到这了,我就再简单介绍下之前提到过的FineReport报表工具

FineReport通过封装功能的调用和数据库的实时更新,虽然无法从根源上解决“中国式复杂报表”难题,却可以从效率方面让程序员以更简单、更快的方式来完成报表的开发和部署。

不仅可以减少编写和调试代码的工作量,提高开发效率,还能轻松实现报表的快速制作以及标准化数据填报,让中国式复杂报表变简单。

中国式复杂报表变简单,跨组计算,数据处理工序

报表产品更多介绍: www.finereport.com

相关内容

立即体验 立即体验

在线客服

电话咨询

技术问题

投诉入口

返回顶部