这个低代码报表开发平台,操作类似Excel,用好了不需要加班(低代码开发平台介绍)
现在低代码开发平台很火,能够通过零代码或少量代码就可以快速创建应用。
但是从实践结果来看,完全的零代码开发应用是不可能的,机器替代人类智慧还需要很长的路要走。但是介于两者之间的低代码模式开发应用是值得尝试的,现在很多企业级应用都是低代码,甚至很多定制场景也不需要太多高深的代码就能搞定。
就我从事的数据领域,报表开发这一项工作近十年来因为低代码平台的出现,有了很大的改观。BI报表开发中一些复杂的逻辑可能只需要几个公式或者几句JS就能轻松搞定。从产品开发上来讲,其本质就是提效。一方面是对开发人员的提效,另一方面是对使用者的提效。
以往我们IT开发报表,一开始用Excel处理,后来写PHP来开发,再者用java的一些开源组件来开发。用代码开发报表能很快的解决点对点的需求,但是作为长期工作,你要对接数据库,还要收集数据,做报表维护,到后面基本就是堆人力写代码。
当一项业务成熟之后,自然就会有将技术平民化的管理系统出现,比如报表系统。我们在零几年的时候就开始尝试使用一些国外的BI报表系统,比如水晶、BO,还尝试了一些开源的jaspereport,birt。能减少代码开发投入,自主开发报表。
随着企业的发展和数据业务庞大,数据逐渐承载企业的管理业务,很多需求比如实时风险监控,各种经营报表以及各种数据应用(体现在报表和业务分析上),也逐渐有了数据、报表权限和数据填报流程。
这个时候就要从自身管理体系出发,要求产品功能能够符合企业的管理思想,然后逐渐开始使用符合一些流程上管理的平台系统(国内做这块比较陈述),帆软报表平台FineReport。
在开发效率方面,FineReport是一个通用的报表工具,报表开发、填报、可视化展示的需求基本都能满足,涉及到一些业务的定制有接口,可以插件化的定制开发比如单点登录OA。对于使用者,报表因为有了承载的平台,使用者比如业务和管理者只要登录平台系统就可以查看分析。
具体来看:
1、可视化SQL语句编辑面板
做报表要取数,取数都是写SQL,一般视复杂程度几十到几百行不等,更重要的是需要熟悉数据库和表,不然你都不知道要取什么数。
FineReport低代码的第一点,就是有一个可视化SQL语句编辑面板,在与数据库链接成功后能看到数据库表和字段,然后拖拽数据表和字段到编辑页面就可以生成SQL语句,避免一行一行写,就像像一个内置的navicat。能减少不少工作量。
2、可视化报表模板设计器
读完库取完数之后就是作报表。
FineReport的主面板就是表格模板设计器,表格式、功能操作、函数等都类似Excel,不同点在于Excel是对单个数据操作,这里是对数据字段操作,将需要的数据字段拖到表格中,再配以各种可视化的属性设置。
设计器针对有三种报表设计模式:普通报表、聚合报表、决策报表。
普通报表模式最贴近Excel,用来做大部分报表包括基础报表、中国式复杂报表,运算上更多SHEET和跨SHEET计算,兼容EXCEL公式。
聚合报表模式用来做一些不规则的报表,像运单表,一些保险单之类的,这种报表要频繁的合并、拆分单元格,工作极其繁琐。
决策报表模式用来做可视化仪表板、驾驶舱、管理看板等,就像一个空白画布,把各种可视化图表拖拽到界面搭建仪表板。
3、参数查询可视化设置
企业报表应用,除了最简单的展示类报表外,查询报表往往用的最多,各部门各业务团队都要查数据查报表的需求,这就会用到查询报表。之前代码开发往往是赋一个参数去对应数据表或字段,这就有个问题,参数多了不好管理,换一个人来迭代报表就要重新熟悉。
FineReport有可视化的参数设置界面,能够零代码定义参数,绑定查询控件,直接定义出查询界面,使用者就通过界面输入查询条件,来显示报表内容。
控件类似Excel甚至更丰富,有文本、文本域、数字、密码、按钮复选框、复选框组、单选按钮组、日期下拉框、下拉复选框、时间、多文件上传列表、网页框、下拉树、表格树和视图树等多种控件类型,支持预定义控件、自定义控件等。
4、驾驶舱可视化构建
上文提过决策报表模式下可以做可视化仪表板、驾驶舱、管理看板。原理也是通过组件拖拽操作来快速制作组件式报表。这在以往代码开发上,都是需要写JS来调用前端可视化库,后端链接数据。FineReport直接可视化操作,可以直接适应屏幕大小和分辨率,设计布局和交互,方便许多。
5、移动决策平台编码生成
移动端是企业报表应用的一大趋势,以往的开发需要PC端和移动端分别开发,为了适配公司APP的报表展示,我们还特地找了一个移动开发同事,移动端还分为安卓系统和IOS系统,需要配三套不同的人马。后来这个平台能直接适配,零代码操作,界面化配置、自动打包,还可以实现自我版本管控集成方式。
另外还有一些其他低代码开发报表的功能这里就不多赘述了。
可以看到,低代码开发对于效率的提升,能力的解放是很明显的,起码在我熟知的数据领域,比如还有数据需求管理平台,指标管理平台,数据治理平台等。
一套优秀的软件离不开两个核心要素:编程能力和业务知识,这就要求优秀的技术团队深刻理解业务或业务人员熟悉技术边界。
世界上不存在完全相同的管理模式,即使是范畴很小的数据报表每个企业都有其独特的需求,集中体现在几个问题上:
1、需求难以确定,始终有新需求提出,不断修改从而面目全非。
2、客观条件的不确定性,报表开发是一个不断的过程,期间人员流动、资源调整等种种变化都会加大这个项目的成本,减低效率
所以平台就需要满足以下几个需求:
1、灵活,不拘泥于业务(不同项目、业务领域)必须全部通吃。
2、快速,极快的功能实现速度。
3、稳定,不挑食但要能全部消化。
我初觉这样的系统似乎遥不可及,但我举例的FineReport就是一个典型范例。
天下武功唯快不破,实现开发快、变动快、维护快才能解决现有软件开发的困境。
不过,使用低代码/无代码平台也许需要的开发者更少了,但是对于人的要求却更高了:一方面要对业务非常了解,一方面又要对数据和开发非常通透,最后要能把从需求到开发串联起来。这对于我们这一行也是一种进度,IT需要更熟悉业务,需要更明确数据价值。
想获得低代码工具,看评论。