识别准确率达 95%,华能东方电厂财务机器人实践探索
摘 要:基于华能集团公司大数据与人工智能构想理念,结合东方电厂实际工作需要,财务工作要向数字化、智能化纵深推进,随着财务数字化转型和升级加速,信息化水平不断提升,以及内部信息互联互通不断加深,对工作效率和经济效益提出了更高要求,业财一体化的需求不断增加。各大集团企业纷纷建立财务共享服务中心以加强集中管控,产生大量集中处理的经济业务,RPA 机器人应用到实际财务工作中成为可能。针对重复性高、高耗时、低效率的事务性工作,由机器人代替人工处理,将极大地释放人力资源,催生财务人员职能的转变。
东方电厂以物资结算付款流程作为试点工作开展 RPA 机器人实践探索,具体从发票审核、三单匹配、发票预制、发票过账、提付款单五个环节入手,解决规则明确、重复性高、工作量大业务由机器人完成,这是东方电厂贯彻海南公司财务工作向数字化和智能化推进的一次重大实践探索。
关键词:财务机器人;自动化;实践探索
01 前言
1.1 实践背景及意义
华能东方电厂隶属中国华能集团海南分公司,是一家以发电为主的综合能源电力企业,承担着海南省20%左右的发电任务。
企业通过SAP实现业财一体化管理,由于物资采购业务量较大,在采购订单发票审核、发票、订单、合同稽核匹配、发票预制入账、以及创建付款申请等环节需要投入大量的人力资源。随着业务量逐渐提升,人力成本和管理成本越来越高。
引入财务机器人的意义主要是考虑此类工作由机器人模拟人工操作,自行判断及执行设定好的流程,从而提高财务工作效率与准确性,降低企业的人力成本和管理成本。
RPA 不仅是企业降本增效的利器,同时在优化业务流程、合规、安全性、审计和保密性等方面也起到了重要的保障和推动作用,其带来的效益是广泛和长远的。
1.2 创新点及重点解决问题
1、可能的创新之处
华能集团财务机器人目前实践案例较少,所开展此项业务的单位基本上是在现成模板基础上进行优化和改进,而此次东方电厂物资财务流程机器人完全是一次从无到有的探索实践,无论从集团、区域公司还是基层单位来说,是基于实事求是、科学论证和小步试错的基础上实现的,从结果来看已经达到当初的目标。确实是一次重大创新实践尝试,将不断拓展在不同业务、不同场景的应用。
2、需要重点解决的问题
对于此次实践而言,需要重点解决的是以何种计算机语言模仿人工按既定的流程进行操作,如何对一些特殊场景进行识别,建立一定的容错纠错机制,以及人与机器间的交互处理的问题。
对于各种非标准业务的处理,需要不断修改和优化现有流程,使得其能覆盖绝大部分业务,甚至做到全覆盖,这还需要有一个积累的过程。
02 机器人流程自动化基本内涵
RPA(Robotic Process Automation)即机器人流程自动化,又称“数字化虚拟员工”,代替人工处理许多重复性高、逻辑明确的事务性工作。
本次实践应用的 RPA 是一套软件工具,实现全天候不间断的自动化计算、数据存储和业务操作,实现财务、税务、人力资源、供应链管理等业务流程自动化。RPA 的搭建无需改动原有系统功能,可以短时间内快速搭建流程并产生效益。
03 实施思路及设计流程
从众多流程中,经多轮次的探索,选定了物资和财务验票、付款业务为切入点开展机器自动化实施工作,运用 Python 数据编程语言,通过执行反复性、判断性指令将人力劳动自动化、流程化,着重解决发票审核、三单匹配、发票预制、发票过账、提付款单五个流程自动化。
3.1 发票审核
由物资部门发起流程,出具需要查验的发票信息清单,同时财务部门从税务系统导出未认证发票明细清单,机器人通过比对两个表格获取发票查验的必要信息(例如:发票号码、开票日期、开票金额等),在国家税务总局全国增值税查验平台查询对应发票的具体内容,并将查验结果存储到 Excel表格后传输给相关业务人员。
3.2 三单匹配
3.2.1三单匹配链接关键字为采购订单号,物资采购部门需要求供应商开具发票时在备注栏备注对应的采购订单号。
3.2.2 机器人根据发票信息备注中的采购订单号,自动登录到 SAP系统中,根据采购订单号查询出对应的采购信息查询报表。
3.2.3 机器人根据采购信息查询报表的合同号,自动登录到法务系统中,根据合同号下载对应的采购合同,并解析出采购合同中指定的采购信息部分内容,临时存储到内存中。
3.2.4 机器人根据发票信息、采购订单、合同信息,进行数据并对,并将比对结果输出到 Excel表格中。三单核对信息包含:采购订单编号、物料描述、规格、单价、总价、数量。
将发票查验结果填写入表格
匹配结果进行日志存储、生成分类结果表
分类结果二次分类及合并号标记
非特殊科目自动调账后发票过账
3.3 发票预制
3.3.1 机器人根据采购订单中的项目编号,进行初步预分类,将已分类和未分类的结果发送给物资业务人员进行人工二次分类,并通过人工判定是否需要进行相同供应商、相同费用的合并订单标记,以便减少单据的审批数量;分类完成后将结果返回给机器人。
3.3.2 机器人接收到含有分类结果的信息表,按照指定规则依次录入到 SAP系统中。
3.4 发票过账
3.4.1 机器人读取发票预制结果,包含生成预制系统发票号等信息。
3.4.2 机器人使用 SAP公有账号进行登录,进行发票过账。
3.4.3 自动检查发票信息、差额信息,对无差额订单直接过账处理,对非特殊费用差值在2元以内的订单进行自动调整过账,并将差值、调账信息记录到日志表格中并通过 OA反馈给业务人员。
3.4.4 流程运行时,同步统计各费用本批次及月度汇总的过账金额,以便业务人员把控各费用资金的使用。
3.5 提付款单
3.5.1机器人根据过账日志信息,生成需求中间表,自动登录 SAP系统。
3.5.2 自动选择供应商,填写付款金额,核对银行付款信息,填写资金预算科目、PS项目编号等信息。
3.5.3 对金额在十万以下单据自动提交付款单,对十万以上单据进行拦截并做超额标记,提示业务人员上传附件,最终形成提单日志反馈给业务人员。
自动核对银行付款信息,填写资金预算科目、 PS 项目编号
04 可能遇到的问题估计及解决方案
1、在开发过程中,将已出现或可能会出现的错误都设置了容错处理,最大限度保证正确单据的审核通过。在运行过程中,若发现错误,流程将会跳过错误信息进行下一条任务,直至完成该段流程预设的所有目标任务。
2、不能通过容错机制解决的问题,流程设置将运行结果由邮件的方式通知到相关人员,在运行日志中通过红色进行标记并备注错误原因,第一时间向业务人员反馈流程的运行情况,通过人工核实错误原因,加以修正,并在下个流程任务执行时,一并执行。
05 财务机器人取得的成效
2021 年 6 月财务机器人投运以来,自动运行业务识别准确率可达 95%,财务机器人取得最大亮点在于将物资与财务之间完整的物资采购付款流程连成一体,实现了发票审核、三单匹配、发票预制、发票过账、提付款单环节自动化,达到更高的运营效率,节省时间并释放人力资源。
以物资采购订单10单一批次为例,全流程人工需要100分钟(其中人工审核40分钟,判定费用及预制30分钟,发票入账10分钟,提交付款单20分钟),机器人只需30分钟便准确地完成,工作效率提升了3倍。按全年预计物资采购订单为 2400 单计算,不考虑数据移迁及全流程业务 5%人工处理等时间,一年订单 120 小时即可完成物资采购及付款业务。
在岗位人员配置方面,在不违反内控相互制衡的前提下,物资部及财预部各配置一名操作人员即可实现财务机器人业务正常运行。
RPA 强大的业务处理能力可以有效面对未来一段时间的业务持续增长所带来的工作量陡增,也会使现有业务的调整优化变得更加顺畅,可以从容面对短期出现的工作量瓶颈。
此次成功实践为集团公司以及系统各单位在部署和上线 RPA方面积累了一定的经验和教训,这些业务流程和经验都可以快速复制到各单位中去,大大缩短上线 RPA 的时间和进程,大大加速整个集团的业务自动化以及智能化进程。
06 实施经验总结
对于规则明确、重复性高、工作量大的众多场景,可以运用机器人交互语言实现目标任务自动化和智能化。通过此次实施经验总结如下:
1、构建系统数据共享,企业内外部运行的系统众多,各系统各业务板块间的数字链接和共享需要构建,机器人可按人工设定在不同软件和平台间切换。此次财务机器人实现了国家税务总局全国增值税查验平台、SAP 系统及法务系统数据的链接共享并相互核对。
2、搭建各流程自动化,企业内部各业务部门间由于业务职能的交叉,一项业务流程在各部门间进行流转,造成交接环节的时滞,对业务流转的顺畅造成了很大程度的影响。此次财务机器人改变了物资与财务业务的交叉作业,一系列作业交由机器人按设定流程自动运行。
3、设定人机实时交互,前端原始业务非标准化,机器人识别过程中对于错误信息实时反馈。运行成功与否,机器人将每一流程运行结果以OA邮件方式,发送给对应的操作员,操作人员根据提示第一时间予以校正,直至流程正常执行结束。
07 发展展望
安永对大中华区财富 500 强企业做的RPA调研报告中指出:有78%的受访企业已开启了RPA 机器人进程,近 7成的企业表示希望扩大 RPA 机器人的应用规模。
未来财务机器人与人工智能相结合,适用更广大的领域范围,与大数据结合,进行模型预测及战略调整,形成更大的模块,通过简单的“拖拉拽”,更快速的实现简单的标准化操作流程。
随着 AI技术的快速发展,AI+RPA 将作为企业业务流程自动化的技术基础,企业完全可以借助AI+RPA技术实现财务、采购、客服等场景的自动化、智能化,从而向更高的企业整体数字化、自动化、智能化迈进,获取更大的战略效益。
推荐单位:华能海南发电股份有限公司东方电厂
本文作者:陈明春、曾慧
如有侵权,请联系删除
相关文章:

识别准确率达 95%,华能东方电厂财务机器人实践探索
摘 要:基于华能集团公司大数据与人工智能构想理念,结合东方电厂实际工作需要,财务工作要向数字化、智能化纵深推进,随着财务数字化转型和升级加速,信息化水平不断提升,以及内部信息互联互通不断加深&#x…...
代码随想录算法训练营 单调栈part03
一、柱状图中最大的矩形 84. 柱状图中最大的矩形 - 力扣(LeetCode) 单调栈很重要的性质,就是单调栈里的顺序,是从小到大还是从大到小。 栈顶和栈顶的下一个元素以及要入栈的三个元素组成了我们要求最大面积的高度和宽度&#x…...
使用 MyBatisPlus 的注解方式进行 SQL 查询,它结合了条件构造器(Wrapper)和自定义 SQL 片段来构建查询语句。
MyBatis-Plus 是一个基于 MyBatis 的增强工具,它提供了一套方便的注解方式来进行 SQL 查询。其中,它结合了条件构造器(Wrapper)和自定义 SQL 片段来构建查询语句。 官网:条件构造器 | MyBatis-Plus 1、使用 Wrapper …...

Python中统计单词出现的次数,包含(PySpark方法)
思路: 定义一个函数,使用open函数,将文本内容打开。 定义一个空字典和空列表,进行循环及条件判断操作def count_word(file_path):dict_data {} #定义一个空字典f open(file_path,"r",encoding"UTF-8")lis…...

探讨基于IEC61499 的分布式 ISA Batch 控制系统
ISA SP88 是批次过程控制的标准,对应的IEC标准是IEC 61512。该标准中一个重要的部分是配方管理(Recipe Management)。 所谓配方,是根据批量产品的要求,材料设定加工工艺,加工流程和参数。类似于传统制造业的…...
图论16(Leetcode863.二叉树中所有距离为K的结点)
答案: /*** Definition for a binary tree node.* public class TreeNode {* int val;* TreeNode left;* TreeNode right;* TreeNode(int x) { val x; }* }*/ class Solution {public List<Integer> distanceK(TreeNode root, TreeNode tar…...

【小沐学C++】C++ MFC中嵌入64位ActiveX控件(VS2017)
文章目录 1、简介1.1 MFC1.2 ActiveX 2、VS2017添加ActiveX控件结语 1、简介 1.1 MFC Microsoft 基础类 (MFC) 库针对大部分 Win32 和 COM API 提供面向对象的包装器。 虽然此包装器可用于创建极为简单的桌面应用程序,但当你需要开发具有多个控件的更复杂的用户界…...

Linux常用命令—find命令大全
文章目录 一、find命令常用功能1、find命令的基本信息如下。2、按照文件名搜索3、按照文件大小搜索4、按照修改时间搜索5、按照权限搜索举例:6、按照所有者和所属组搜索7、按照文件类型搜索8、逻辑运算符 一、find命令常用功能 1、find命令的基本信息如下。 命令名…...
form组件的封装(element ui ) 简单版本
当你使用Vue.js构建Web应用时,封装可复用组件是提高开发效率和代码可维护性的关键之一。在这篇文章中,我们将探讨如何使用Vue.js来创建一个通用的表单组件,以及如何将它封装成一个可配置的组件。 实现思路 拿下表单模板一个个的改造&#x…...
树形DP杂题
引 对老师布置的题目稍微记录一下吧 也算对树形 D P DP DP 的巩固 T1 Ostap and Tree 题目传送门 由于有 距离 k 距离k 距离k 的限制,设计二维 d p dp dp 设计状态: f i , j : i 的子树内,离 i 最近的染色点与 i 距离为 j 且若 j <…...

Webpack使用plugin插件自动在打包目录生成html文件
我们使用html-webpack-plugin插件可以自动在打包代码目录生成html文件 使用步骤: 一、安装依赖 在控制台中输入如下代码: npm i -D html-webpack-plugin 二、在webpack.config.js中配置插件 const HTMLPlugin require("html-webpack-plugin&q…...
图像处理与计算机视觉--第一章-计算机视觉简介-10问
第一章-计算机视觉简介-10问 1.CV与AI的关系是什么? CV(Computer Vision)是Al的子领域,它致力于使计算机能够理解和解释图像和数据,CV借助AI技术,比如深度学习/机器学习,实现目标识别,分析和处理任务。AI提供了CV所需要的算法…...
LeetCode 80. 删除有序数组中的重复项 II
文章目录 一、题目二、Java 题解 一、题目 给你一个有序数组 nums,请你 原地 删除重复出现的元素,使得出现次数超过两次的元素只出现两次 ,返回删除后数组的新长度。 不要使用额外的数组空间,你必须在 原地 修改输入数组 并在使用…...

【前端面试题】浏览器面试题
文章目录 前言一、浏览器面试问题1.cookie sessionStorage localStorage 区别2.如何写一个会过期的localStorage,说说想法2.如何定时删除localstorage数据2.localStorage 能跨域吗2.memory cache 如何开启2.localstorage的限制2.浏览器输入URL发生了什么2.浏览器如何…...
PHP 生成 PDF文件
参考官网 Example 009 : Image() TCPDF laravel 可以使用 composer 安装 tecnickcom/tcpdf 进行使用 //require_once("../app/Extend/tcpdf/tcpdf.php"); $pdf new TCPDF();// 设置文档信息$pdf->SetCreator(懒人开发网);$pdf->SetAuthor(懒人开发网);$…...

讲讲项目里的仪表盘编辑器(一)
需求 要做一个仪表盘系统,要求有: ① 设计功能(包括布局、大小、排列) ② 预览功能 ③ 运行功能 布局选择 做编辑器,肯定要先选择布局。 前端有几种常用布局。 静态布局 也叫文档布局。默认的网页形式…...

解决方案 | 如何构建市政综合管廊安全运行监测系统?
如何构建市政综合管廊安全运行监测系统?WITBEE万宾城市生命线智能监测仪器,5年免维护设计,集成10多项结构与气体健康监测指标,毫秒级快速响应,时刻感知综合管廊运行态势...

JCEF中js与java交互、js与java相互调用
jcef中js与java相互调用,java与js相互调用,chrome与java相互调用,java与chrome相互调用、jcef与java相互调用 前提:https://blog.csdn.net/weixin_44480167/article/details/133170970(java内嵌浏览器CEF-JAVA、jcef、…...
9.20 校招 实习 内推 面经
绿泡*泡: neituijunsir 交流裙 ,内推/实习/校招汇总表格 1、校招丨智行者2024年校园招聘正式启动啦 校招丨智行者2024年校园招聘正式启动啦 2、校招 | 乐动机器人2024校园招聘 校招 | 乐动机器人2024校园招聘 3、校招丨小天才2024届秋季校园招聘 …...

基于JAVA+SpringBoot+Vue+协同过滤算法+爬虫的前后端分离的租房系统
✌全网粉丝20W,csdn特邀作者、博客专家、CSDN新星计划导师、java领域优质创作者,博客之星、掘金/华为云/阿里云/InfoQ等平台优质作者、专注于Java技术领域和毕业项目实战✌ 🍅文末获取项目下载方式🍅 一、项目背景介绍: 随着城市化进程的加快…...

SpringBoot-17-MyBatis动态SQL标签之常用标签
文章目录 1 代码1.1 实体User.java1.2 接口UserMapper.java1.3 映射UserMapper.xml1.3.1 标签if1.3.2 标签if和where1.3.3 标签choose和when和otherwise1.4 UserController.java2 常用动态SQL标签2.1 标签set2.1.1 UserMapper.java2.1.2 UserMapper.xml2.1.3 UserController.ja…...

未来机器人的大脑:如何用神经网络模拟器实现更智能的决策?
编辑:陈萍萍的公主一点人工一点智能 未来机器人的大脑:如何用神经网络模拟器实现更智能的决策?RWM通过双自回归机制有效解决了复合误差、部分可观测性和随机动力学等关键挑战,在不依赖领域特定归纳偏见的条件下实现了卓越的预测准…...

如何在看板中体现优先级变化
在看板中有效体现优先级变化的关键措施包括:采用颜色或标签标识优先级、设置任务排序规则、使用独立的优先级列或泳道、结合自动化规则同步优先级变化、建立定期的优先级审查流程。其中,设置任务排序规则尤其重要,因为它让看板视觉上直观地体…...
django filter 统计数量 按属性去重
在Django中,如果你想要根据某个属性对查询集进行去重并统计数量,你可以使用values()方法配合annotate()方法来实现。这里有两种常见的方法来完成这个需求: 方法1:使用annotate()和Count 假设你有一个模型Item,并且你想…...

C# 类和继承(抽象类)
抽象类 抽象类是指设计为被继承的类。抽象类只能被用作其他类的基类。 不能创建抽象类的实例。抽象类使用abstract修饰符声明。 抽象类可以包含抽象成员或普通的非抽象成员。抽象类的成员可以是抽象成员和普通带 实现的成员的任意组合。抽象类自己可以派生自另一个抽象类。例…...

Unity | AmplifyShaderEditor插件基础(第七集:平面波动shader)
目录 一、👋🏻前言 二、😈sinx波动的基本原理 三、😈波动起来 1.sinx节点介绍 2.vertexPosition 3.集成Vector3 a.节点Append b.连起来 4.波动起来 a.波动的原理 b.时间节点 c.sinx的处理 四、🌊波动优化…...
现有的 Redis 分布式锁库(如 Redisson)提供了哪些便利?
现有的 Redis 分布式锁库(如 Redisson)相比于开发者自己基于 Redis 命令(如 SETNX, EXPIRE, DEL)手动实现分布式锁,提供了巨大的便利性和健壮性。主要体现在以下几个方面: 原子性保证 (Atomicity)ÿ…...

Selenium常用函数介绍
目录 一,元素定位 1.1 cssSeector 1.2 xpath 二,操作测试对象 三,窗口 3.1 案例 3.2 窗口切换 3.3 窗口大小 3.4 屏幕截图 3.5 关闭窗口 四,弹窗 五,等待 六,导航 七,文件上传 …...
【学习笔记】erase 删除顺序迭代器后迭代器失效的解决方案
目录 使用 erase 返回值继续迭代使用索引进行遍历 我们知道类似 vector 的顺序迭代器被删除后,迭代器会失效,因为顺序迭代器在内存中是连续存储的,元素删除后,后续元素会前移。 但一些场景中,我们又需要在执行删除操作…...

给网站添加live2d看板娘
给网站添加live2d看板娘 参考文献: stevenjoezhang/live2d-widget: 把萌萌哒的看板娘抱回家 (ノ≧∇≦)ノ | Live2D widget for web platformEikanya/Live2d-model: Live2d model collectionzenghongtu/live2d-model-assets 前言 网站环境如下,文章也主…...