工作流的全局配置


在全局配置下,可以进行个性化的全局配置。主要分为三大类:流程的基础配置、人工节点的配置和流程参数的配置。

image.png

一、流程的基础配置

1、运行方式

同一个工作流,可能有多条记录同时触发。例如,有个工作流(仅新增记录时触发),通过Excel导入新增100条数据时,会瞬间触发100个流程,那这100个流程可以根据实际业务需要选择并行(同时)执行还是串行(逐条依次)执行。

注意:“仅新增记录触发”,“删除记录触发”和“自定义动作触发”这3类触发的流程才可以选择执行方式,其他触发方式都是并行执行,且不允许修改。

  • 仅新增记录触发

    常见的是通过Excel导入新增数据瞬间触发N次流程。

  • 自定义动作触发的流程

    常见的是勾选多条记录,然后点击按钮批量触发。

1)并行示例

此方式下流程运行速度快,适合运行实例间互不影响的流程。

例如:在Bug管理应用中,有19个Bug已经修复更新,需要通知ug的创建人进行验证。那么可以批量勾选19个Bug,然后点击“通知验证”按钮执行通知工作流。这19个记录/流程之间不需要先后顺序,互不影响,可以同时执行,这种场景就选择“并行”的方式。

并行执行时的排序是怎样的: 是无序的。

2)串行示例

此方式执行速度慢,适合需要严格按照执行次序逐条进行、运行实例会互相影响的流程。

例如:在《领用申请》表中,新增一条领用记录后,工作流需要从库存中查询空闲设备并领用。如果在同一时间多人提交申请并领用同一个物料的话,就涉及到库存余量的问题。例如,笔记本库存10本,有3个人领用,每人5本,如果他们都是在同一个时间提交记录,则查到库存都10,都可以领用,这样显然是有问题的,不能并行执行,需要有先后顺序,这种情况就需要串行。三个人提交记录后触发的3个流程依次执行,第1个人的申请流程执行是库存是10,领5剩5,第2个人的申请流程执行时库存是5,领5剩0,第3个人的申请流程执行时库存不够就中止了。

串行执行时的排序是怎样的:

  • 如果是手动逐条勾选,点击按钮批量触发流程,则按勾选顺序执行

  • 如果是全选记录,点击按钮批量触发流程,则按当前页面的排序从上到下逐条执行。

  • 如果是新增记录触发流程,则按新记录的创建顺序执行。

前一条流程在什么情况下开始执行下一条流程

  • 流程正常完成后

  • 当前流程异常中止后

  • 进入人工节点后(由于审批/填写节点等待时间不定因此到这一步后就直接开始下一条)

  • 一旦进入子流程,整个流程耗时将不确定,因此,如果流程设置了等待子流程执行完毕后再执行后续节点,则批量流程排队执行时就不会等待某个流程的子流程处理完了,一旦进入子流程这一刻,直接进入下一条流程。 如果没有勾选,则当前流程正常执行完,开始一条流程。

2、流程的系统错误通知

当工作流发生错误的时候,可以通知给指定的人,默认选择为流程的创建人。

如果一段时间内,相同错误信息不需要通知,则可以设置XX时间内不接收相同错误信息。

image.png

系统错误一般包含:

  • 动作节点执行失败

  • 短信邮件没有账号

通知效果如下:

image.png

3、触发其他工作流

当前工作流中,如果有更新记录、新增记录、删除记录等节点,这些节点执行后,可能触发其他工作流。

例如: 流程A的节点中,通过新增记录节点向表1新增一行记录。另一条流程B的触发器设置为:当表1有新增记录时触发流程,那么流程A在执行中向表1新增了记录,是符合流程B的触发条件的,到底要不要触发流程B,我们可以通过配置来决定。

image.png

  • 允许触发

    即允许触发其他工作流,但是, 如果本流程和其他流程的触发器选择的是同一张表,那么其他流程的触发器中必须指定了触发字段,才能触发。

    如下图, 被触发的流程中,必须要指定触发字段才能被触发。在上例中,流程B触发时必须指定触发的字段。

    如果流程A是按钮触发的,则流程B不需要指定字段。 流程A是自动触发的,流程B才需要指定字段。

  • 只能触发指定工作流

    当前流程的操作,例如修改了其他表的记录数据,会触发相关的N个流程,那么在这N个流程可以选择几个特定的流程才可触发,其他流程不能触发。

    这些流程不一定是本应用下的,也可以是其他应用下的。

  • 不允许触发

    即,凡是此工作流自动处理的数据,都不触发其他工作流,即使对数据的更改满足了其他工作流的触发条件也不触发。

二、人工(审批、通知)的配置。

1、工作流撤回

工作流触发后,支持触发流程的人员进行撤回的操作。

同时支持指定当某个节点通过后,流程不允许撤回。

image.png

用户如何撤回流程

依次进入【我的流程】 》 【我发起的】流程列表,打开流程后,如果符合撤回条件,则会出现撤回按钮。

管理员如何查看工作流是否被撤回 管理员可以通过历史触发的流程中看到状态。

image.png

[!TIP]流程被撤回后,已经执行的节点操作不会撤销。
例如流程A的配置:触发节点 》 更新节点》 审批节点 流程触发后,自动执行了更新节点,将字段的值由a修改b, 然后进行审批节点,等待审批,此时如果流程触发者撤回了,则不再继续审批, 且b不会改回a

2、审批自动通过的配置

这个功能是针对【审批】节点的。此配置适用此流程中所有的审批节点。

image.png

  • 1)工作流触发者自动通过

如果触发流程的触发人员和当前审批节点的审批人是同一个人的话,如果勾选,那么此节点自动通过。如果不勾选,则需要触发者再审批一次。

  • 2)审批人为空时自动通过

当审批节点没有设置审批人或者审批人无效时,勾选后,本次审批自动通过。

  • 3)已经审批过该对象的审批人自动通过

流程中有多个审批节点,例如,审批节点1》审批节点2》审批节点3》审批节点4.

如果审批节点1和审批节点4,审批的对象记录是同一个记录,且审批人是同一个人,那么审批节点3审批通过后,到审批节点4 这一步就可以自动通过审批了,因为他在第一步已经通过了。

3、通知节点

是否向流程触发者发送通知。此配置适用此流程中所有的审批节点。

image.png

操作者触发了工作流,流程中有通知节点,会有以下两种情况

  • 节点通知人只有操作者本人, 此节点直接跳过。
  • 节点通知人还包括有其他人,则正常执行,但不会向本人发通知。

如果您在使用时,发现通知节点不执行,或者收到通知消息,可以看下这里的配置。

三、流程参数

在流程中定义一个参数对象,就像一个临时的工作流字段一样,可以存放某个字段值,或计算结果,或接收其他流程中传过来的值,然后被其他节点引用。 流程运行结束后,参数值会被清空重置。

  • 参数类型
    目前支持:文本、数值(金额)、日期时间、成员、部门几种类型。

  • 参数名称
    名称必须以字母开头,可以包含数字和下划线。

如何给参数赋值

  • 通过 “更新流程参数” 为本流程参数赋值

  • 在“子流程节点”为子流程的参数赋值

    [!TIP]必须先进入子流程,把子流程的参数配置好,这里才能给子流程的参数赋值,在子流程执行时参数就自动有了初始值。

results matching ""

    No results matching ""