欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

一张模板替代数百Excel,这个工具让报表工作自动进行 报表大数据数据分析数据可视化商业智能

程序员文章站 2022-03-03 15:58:24
...

Excel的重度用户对这个话题肯定非常感兴趣。

因为每天重复以下事情,一天两天还好,时间长了谁都受不了。

收集数据、复制、粘贴、清洗数据、转换数据,

然后用固定的处理逻辑,

输出同样的结果

我把这些工作称为常规工作,属于必须做,做好不出彩,做不好有责任。

作为数据民工,每天要处理非常多的数据,深有体会。相比之下,我更愿意每天处理新的需求,分析异常业务情况的数据分析工作,显然这样的价值更高。

可如果大部分的时间已被常规工作占据,哪还有时间来做更有价值的事情?

把这些工作推给别同事? —— 凭什么!

拼手速、学快捷键节省时间? —— 一切不能释放你双手的办法都不是好办法。

自动化是唯一的出路!把原先需要几十分钟,几个小时甚至几天的工作内容自动化。腾出了时间,才有机会搞更有价值的东西。

一说到自动化,很多人就想到Excel宏、VBA什么的,这可是编程呀,必须VBA吗?

误会啊误会,如果是这样,我今天就不写这些文字了。

从我自己在企业的数据工作经历来看,70%的自动化都不需要VBA,VBA我只用于处理一些极个别复杂的需求。大部分常规性的报表我们都交给更专业的报表工具去开发,尤其是固定式报表,这个自动化比例能达到90%,上手难度却只是VBA的一半。

举个例子,有一份每天早上需要发布的销量报表,老板的要求是:

1)从总体,区域,产品,城市,分公司视角

2)展示当天、当月、当年的销售情况

3)还要给出利润及利润率

4)除此以外,还要展示出营业利润额的趋势。

正常不出意外的情况下,这份报表每天要花2~3个小时汇总制作。用报表工具做自动化模板后,一键刷新,整个过程不超过5分钟,只需要翘脚等待刷新完成。

一张模板替代数百Excel,这个工具让报表工作自动进行
            
    
    
        报表大数据数据分析数据可视化商业智能

 

这个报表工具就是FineReport。

罗列几个能解决大家报表制作的痛点,也是它广泛为人所用的亮点:

1、 制作报表高效低重复,自动化;

2、 数据填报,数据自动更新汇总;

3、 可视化dashboard真是酷炫;

一、高效做报表,1张模板顶替数百张Excel

为什么能如此高效,关键在于他做报表的逻辑。

1、FineReport自动化模板的做表逻辑

一张模板替代数百Excel,这个工具让报表工作自动进行
            
    
    
        报表大数据数据分析数据可视化商业智能

 

常规我们用Excel做报表,是把数据从数据库导出来,复制粘贴到一张或多张表上,然后对这个表数据做处理,每天有数据,就每天手动复制更新。

而FineReport直接是通过连接数据库,读取数据字段来设计报表模板的,和数据库实时对接。制作模板处理的对象是数据字段(区别于Excel的单元格数据)。模板中一个单元格放一个数据字段,对数据字段进行求和、求平均等各种函数公式的运算。且当这个数据字段下的数据有新增时,设置自动刷新就能一键更新报表。

其实和excel类似,excel对一个单元格做公式处理,然后下拉。这边是直接对数据字段处理,省去了下拉的过程,展示报表时,自动扩展开来,就相当于报报表结果中的每一个数据,都变成能自动计算的公式。只要你改变数据源,它将像多米诺骨牌一样,自动进行。

以下是用FineReport做报表模板时的场景,做的时候可能是仅仅一行,但预览时却是扩展出来的密密麻麻的 “风景”,这里就要谈谈它的数据是怎么展开的,即扩展原理。

一张模板替代数百Excel,这个工具让报表工作自动进行
            
    
    
        报表大数据数据分析数据可视化商业智能

 

FineReport报表中单元格的扩展是有方向的,可纵向扩展,也可横向扩展,也可以不扩展。

一张模板替代数百Excel,这个工具让报表工作自动进行
            
    
    
        报表大数据数据分析数据可视化商业智能

 

单元格的扩展是针对某一个单元格,当报表主体中绑定了多个单元格时,单元格与单元格之间依靠父子格关系跟随扩展。子格的数据会根据父格的数据进行过滤分组显示,并且还会跟随父格的扩展方向而扩展。

一张模板替代数百Excel,这个工具让报表工作自动进行
            
    
    
        报表大数据数据分析数据可视化商业智能

 

2、三大类报表设计方式,基本能解决日常所有报表需求,并且一表复用。

1)普通模板设计,此者最常用。依靠着单元格的扩展与父子格的关系来实现模板效果,可进行参数查询,填报报表,图表设计等。比如交叉报表、行式报表、分组报表等等。(以上↑)

2)聚合报表设计,针对不规则大报表。适用于一张模板中显示多个独立模块的报表,几个报表块汇总在一起的复杂报表。(以下↓)

一张模板替代数百Excel,这个工具让报表工作自动进行
            
    
    
        报表大数据数据分析数据可视化商业智能

 

3)决策报表设计,就是表单,也是dashboard,用于弥补普通报表分页预览不能展示控件的问题。同时表单可以进行*拖拽设计,自适应页面大小显示,*制作驾驶舱可以更好的在各种大小类型的屏幕上展示,包括移动端、大屏。

一张模板替代数百Excel,这个工具让报表工作自动进行
            
    
    
        报表大数据数据分析数据可视化商业智能

 

以下举例一些常见的报表格式。

交叉表

一张模板替代数百Excel,这个工具让报表工作自动进行
            
    
    
        报表大数据数据分析数据可视化商业智能

 

行式报表

一张模板替代数百Excel,这个工具让报表工作自动进行
            
    
    
        报表大数据数据分析数据可视化商业智能

 

分组报表

一张模板替代数百Excel,这个工具让报表工作自动进行
            
    
    
        报表大数据数据分析数据可视化商业智能

 

*报表

一张模板替代数百Excel,这个工具让报表工作自动进行
            
    
    
        报表大数据数据分析数据可视化商业智能

 

3、参数实现数据查询和过滤

在很多情况下,我们需要根据条件查询数据,过滤。在FineReport中,通过设置参数绑定数据字段和过滤的控件(单选框复选框等等),参数可用JS编辑更多复杂的情况,通过界面输入查询条件来控制报表显示的内容及形式,而后导出打印。

一张模板替代数百Excel,这个工具让报表工作自动进行
            
    
    
        报表大数据数据分析数据可视化商业智能

 

二、数据填报自动更新汇总

做报表的另外一个难题是有关数据源的提交,审批,更新,汇总。试想你有没有经历过每天守着点等大家发邮件送Excel,挨个保存、打开、汇总数据的麻木操作。回头数据出错,还要打回重新沟通,数据采集总是最难的。

填报就是向数据库中录入数据,用于固定格式固定条件的数据收集。就好比你注册头条时提交的邮箱、收集、用户名、密码,都会按照格式存放到数据库中。

填报也需要一个模板,类似于一个可写入的操作模式,操作流程如下:

一张模板替代数百Excel,这个工具让报表工作自动进行
            
    
    
        报表大数据数据分析数据可视化商业智能

 

填报模板由控件组成,文本控件、数字控件、密码控件、单复选框、网页、文件等等。控件对应着数据字段。有了填报,就可以收集数据,并且允许用户实现对数据库的增删改。出于数据质量和数据安全的考虑,还可以对填报进入的数据做校验操作。

一张模板替代数百Excel,这个工具让报表工作自动进行
            
    
    
        报表大数据数据分析数据可视化商业智能

 

三、可视化dashboard及分析

酷炫的dashboard都需要通过FineReport的表单(决策报表)来设计展现。通过拖拽报表块、图表块和各类控件初步设计界面。

不同于普通报表,普通报表是一个整体,无法实现局部刷新。表单是由各个组件组成,可以实现组件内刷新,即局部刷新。像动态大屏都是全局或者局部刷新的,所以需要用决策报表制作实现。

一张模板替代数百Excel,这个工具让报表工作自动进行
            
    
    
        报表大数据数据分析数据可视化商业智能

 

决策报表制作过程

新建表单:FineReport支持新建工作薄,即普通报表模板,还支持新建表单,两种设计模式;

拖入组件:FineReport表单支持多种不同的组件类型,包括报表块、tab块、绝对画布块、参数、图表和控件等等;

定义数据集:定义各个组件数据来源,图表组件数据即可来源于数据集,也可来源于单元格;

设置表单样式:即设置表单的显示样式。

一张模板替代数百Excel,这个工具让报表工作自动进行
            
    
    
        报表大数据数据分析数据可视化商业智能

 

一张模板替代数百Excel,这个工具让报表工作自动进行
            
    
    
        报表大数据数据分析数据可视化商业智能

 

2、数据可视化与交互

大家看到上述的可视化会好奇,这是什么图表制作的。其实大多由FineReport自带的H5图表。此前有提到FineReport良好的开放性,可让IT同事写代码开发,所以在制作时,也可接入Echarts等第三方控件来制作图表。

一张模板替代数百Excel,这个工具让报表工作自动进行
            
    
    
        报表大数据数据分析数据可视化商业智能

 

最后

以上便是FineReport一部分功能,篇幅有限,很多细节无法展开。

要说效率,最大的好处就是从数据库中读出数据自动产生报表,且一类报表做成一个固定样式的模板,每次只要同步一下,自动生产周期性的报表,如日报、周报、月报、季报等。 每次按照条件查询,Excel批量导出/打印,少了人力去一个一个用Excel统计汇总。

而且操作上,大多数功能FineReport都封装成模块了,包括写SQL取数,汇总筛选过滤等,基本上都有对应的功能键。像著名的资产负债表,如果按照以往写代码或者写复杂的SQL语句,就有点摧残生命了,而且那天书般的SQL语句要是出点错谁来查,如果数据来自多个源,那就彻底无法解脱了。

最后,对于新手,刚开始尝试这么做时,会遇到非常多的阻力。原因有两个:

  • 做表的思维方式完全不一样,需要适应
  • 上手finereport自动化模板需要学习新的技能

你需要不断的尝试和练习。但是,当你拥有这种思维方式,掌握相应的技能后,你将深深体会到它的威力,不过切记低调、低调。