一、简介
审批事件是指那些与审批流程存在本质关联的业务触发点,它们紧密嵌入在审批过程的状态变迁之中。具体而言,当审批流程历经不同阶段并发生关键状态转换时,系统自动激发预设的相应事件机制。这一设计确保了流程的每个重要节点都能够触发相应的通知、操作或后续流程,从而实现了审批流程的自动化响应与高效管理,增强了业务流程的敏捷性和可控性。
二、交互流程
创建一个审批事件,配置它的名称、存储位置,关联审批及时机;
可以在事件页面中构建相应的执行函数,即事件触发后做什么,并控制事件开启生效。
事件执行记录展示当前事件被触发后,相应的执行动作留痕,包括触发来源、时间、执行反馈等。
三、触发时机
在一个完整的事件构成中,最重要的两项就是触发时机和执行动作,先来说下时机。
目前针对审批事件,我们只支持审批状态事件,即当审批实例数据发生变化时触发。而审批实例包含了四种状态:
审批中,审批正常发起后尚未结束时,审批实例都会处于“审批中”状态;
已通过,当审批正常完结时,即所有审批节点已审批处理完毕,审批流转至结束节点;
已拒绝,当审批被某一个审批节点的审批人拒绝后,审批实例提前关闭;
手动结束,当发起人确认审批有误使用“结束流程”功能关闭流程后,审批实例中止;
总的来说,当审批实例发起后或因不同原因结束时均会触发此事件。
四、执行函数
在事件中最重要的是对具体执行动作的实现,也就是执行函数的构建。
在这里我们可以选择两种,一种为全局函数,选择任意一个服务函数,另一种是直接在内部函数中实现调用。至于内部函数编辑也是通过函数设计模块实现,参见 《函数设计》模块。
需要说明的是,在模型事件中,会将事件订阅输出参数作为函数的入参,该参数包含了具体的审批实例状态、审批表单行数据的记录。
五、代码实现
在代码编辑器模式下,可以看到每个事件分为两个文件,event.json、inner.py。
这两个文件分别对事件本身进行属性记录和对事件的执行函数实现。
下面是event.json原文,定义或记录了相关参数,如应用名、扩展类型、操作类型、返回类型等。
{
"funcType": "Inner",
"title": "合同申请后库存锁定",
"sender": "workflows.OrderContractApproval",
"operate": "Process"
}
对于inner.py,则主要体现了执行函数本身,其中eventOutData为事件订阅输出参数。
六、使用场景示例
监听审批事件通常应用于需要自动化处理工作流程或需要实时响应业务审批状态变化的场景中。
企业内部审批流程管理:在企业资源规划(ERP)系统或办公自动化(OA)系统中,当一个采购请求、请假申请、报销单或是合同审批等流程的状态发生变化时(如从“审批中”变为“已通过”或“已拒绝”),监听这些事件可以自动触发后续操作,比如通知申请人审批进度、更新库存管理系统、或是启动财务付款流程。
这些场景利用监听审批事件的技术,提高了工作效率,减少了人为干预的延迟和错误,实现了流程的自动化和智能化管理。
七、注意事项
审批事件进入“审批中”状态的时机晚于对应数据表的新增数据之后。
进一步了解极态云,体验产品? 请访问 极态云官网
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。