当前位置: 首页 > 科技观察

有了这个低代码工具,报表开发可以告别996了

时间:2023-03-20 19:55:36 科技观察

最近很流行低代码和零代码。上网一搜,大家都在提倡自己的零代码开发平台。的确,近十年来随着IT的发展和互联网产品的推广,很多细分领域的工具都呈现出易用化、少开发化、轻量化的趋势。笔者在IT行业也做了10多年的开发。他开发了类似办公室的套件、数据平台和互联网应用程序。我个人认为目前的零代码开发平台只适用于逻辑简单的小软件,比如一些简单的数据上报和简单的数据统计功能,比如问卷、数据提交等逻辑性强、临时性小的小程序。但对于企业复杂的业务环境,如常见的ERP、OA、数据平台、银行、证券等专业、逻辑复杂的软件,充其量只能算是低代码开发。要知道软件的开发程度和功能的丰富程度是相互排斥的,业务需求的满足程度也是相互排斥的。就工具而言,无论是低代码还是零代码,都是为了解决开发效率的问题。现在很多工具都是在现有先进技术的基础上,抽象出一套可视化语言和组件。有的是做ERP的,有的是做OA的,有的是做可视化表格处理的。基本上,在某些场景下,这些低代码平台的效率提升速度是非常可观的。比如我熟悉的报表和BI领域,很多公司都有数据采集、数据处理、数据展示等一系列数据“交互”需求,比如报表、填表、数据传输、数据读取和展示。对于报表开发的需求,以前的操作或者说大部分小公司现在的做法是:业务数据在数据库里——需要数据的时候,IT通过SQL来检索——有的会进一步加工成成品数据——导出Excel到业务-然后业务处理Excel中的数据。有些公司可能会针对一些高频的报表开发进行自动化,比如用java或者Python写一个自动化脚本。但是这带来了代码开发的问题。代码有bug需要维护,需求有变化需要改代码。报表需求繁杂,每次来一个需求都需要手动改代码,相当手工。而且这样的公司报表数据存在于每个人的Excel中,存在于代码中,没有平台承载,无异于裸奔。因此,这几年各种报表平台相继诞生,一步步向操作可视化、代码可视化、运维开发相关平台化、系统化,基本发展成为稳定的低端平台。代码报表开发平台。.就像行业领导者FineReport。下面我将从功能的角度来分析一下这个低代码报表开发平台。开发操作1.SQL语句的可视化编辑开发报表的重要操作之一就是数据的读取和填写。大多数情况下,我们直接写SQL。成熟的报表开发平台呢?在操作数据库数据的时候,FineReport有一个类似Navicat的可视化数据库操作界面,链接数据库,读取数据表格……后面是一个可视化的SQL编辑页面(如下图),直接拖拽表格和字段到编辑中,直接生成SQL声明。当你写一百八十行SQL的时候,还是可以节省很多时间的。2.报表模板零代码编辑,再设计报表。报表的大部分时间花在开发报表样式上,类似Excel,可视化填充数据,处理数据,制作表格样式。FineReport作为报表模板的逻辑类似于Excel,不需要编写代码,只需要将相应的字段拖入表格中,整个过程基本就是可视化编辑。但是数据呈现的逻辑是不同的。Excel处理的对象是一条数据,FineReport处理的对象是数据库中数据表的字段名。数据字段放置在模板中的单元格中,当在网络上显示时,数据会随着字段水平或垂直扩展。3、参数查询可视化配置很多时候,报表的数据展示需要根据条件查询和过滤数据。通过设置参数绑定数据字段和过滤控件(单选框、复选框等),通过界面输入查询条件,控制报表展示的内容和形式,然后导出。关于参数设置,FineReport有一个可视化的参数界面,用于放置与查询相关的控件。你可以随意布局,拖拽设计出你想要的界面效果。4、可视化仪表盘构建在数据可视化方面,FineReport通过决策报表进行设计和展示。运营报表、图表、各种控件封装成模块,通过拖拽组件快速生成组件化报表,比传统的网格报表更美观,可以适配屏幕大小和分辨率,智能排列组件布局,交互效果更佳,非常适合搭建决策座舱。另外,通过可视化参数定义,FineReport可以实现可视化多层钻取功能的设置,同一个报表可以根据不同的字段值进行钻取。说完开发运营,再来说说平台运维。平台运维1.定时调度报表的定时调度。例如,一些报表,如日报、月报、季报等,需要定期生成和发布。为了避免定期重复,FineReport在平台上开发了现成的定时任务功能。设置后,服务器会在指定的时间自动完成设定的任务,定时生成报表,定时转换数据,定时发送邮件、短信、手机客户端信息,可以指定报表生成目录,查看报表生成结果网络。2.权限管理有平台,就有用户。在数据安全方面,一定要做好权限管理。平台策略FineReport配置可视化权限设置,细化到cell的权限粒度。通过分级权限控制功能,实现不同分公司/部门共享系统。每个分公司/部门都有自己的管理员,并为下属员工分配权限,即超级管理员控制所有权限,下级管理员只能管理其职责范围内的用户和报表模板。此外,还有集群配置、备份恢复、智能检测、云运维、平台日志、资源迁移等归档功能,也进行了平台化。开发相关的低代码平台最大的好处就是程序员可以专注于核心业务逻辑,所有外围的东西都为你预置好,可以直接调用。上面说了,软件的发达程度和功能的丰富程度是相互排斥的。大部分常用功能已经模块化集成到软件中,可以满足大部分业务需求。但是,企业环境多变,业务需求多变,性格中不尽如人意的部分必须通过发展来实现。所以FineReport也“预留”了可以开发的部分,其实就是一个开放的接口。开发者可以使用web脚本JS、API接口等方式对FineReport进行深度开发和控制。主流业务系统和数据库对接,比如需要开发公司特定的平台接口,做单点登录集成等等。最后回到低代码平台!对于开发者:低代码开发解放了开发过程中繁琐重复的编码工作,可以有效降低人力成本。提高开发效率:支持跨平台部署,同时为多个平台构建应用。对于业务人员:降低业务团队与IT部门的沟通成本。IT人员一般体会不到业务人员的实际痛点。业务人员可以通过低代码开发平台定制demo,最终交付给IT团队进行技术实现。降低出错概率,低代码开发组件化,拖拽方式减少人为失误带来的损失,发生错误时能及时发现错误源头并及时改进。低代码开发的核心价值在于大幅降低软件开发的技术门槛,大幅提升开发效率,缩短项目交付周期。因此,低代码可以广泛应用于企业信息化建设的各个环节,包括构建企业核心业务系统、实现工作流信息化、对行业软件进行定制化开发等。这已经是软件应用开发不可阻挡的趋势!