Q:禁止重复提交审批如何实现?
业务场景:某「项目」下只能同时存在一条审批中的「付款申请」
解决方案:依据「付款申请」的“审批撤销”设置,细分为两个场景,具体如下:
1. 场景一:审批流程不允许撤销
![]() |
|---|
1)「付款申请」表单拖入「单行文本」组件 ,设置数据联动 ,联动本表单 ,联动条件设置如下:
![]() |
|---|
2)「提交校验」设置 ,通过检验字段的是否联动出值来(是否为空),判断是否存在审批中的相同项目的「付款申请」
![]() |
|---|
若校验字段有值则不允许提交
2. 场景二:审批过程中允许撤销
![]() |
|---|
1)「付款申请」表单拖入「开关」组件 ,默认值设置为“开”
![]() |
|---|
2)「付款申请」拖入「单行文本」组件 ,设置数据联动 ,联动本表单 ,联通条件设置如下,增加了上面的「开关」组件 ,用于撤销后重新发起时重新触发该数据联动
![]() |
|---|
3)「提交校验」设置
通过检验字段的是否联动出值来(是否为空),判断是否存在审批中的相同项目的「付款申请」
通过开关组件为开的校验条件,限制撤销后重新提交时,需要重新选择开关组件为开,因而重新触发数据联动,进而重新进行校验。
![]() |
|---|
4)「业务规则」设置
用于流程撤销时,将「重复校验开关」组件置为“关”,从而在重新发起时通过打开该开关(提交校验中设置了该开关必须打开),进而触发数据联动触发重复校验。
![]() |
|---|
具体执行动作如下:
![]() |
|---|








