Skip to content

工作流触发方式

工作流提供了多种触发方式,每种触发方式都对应特定的使用场景,当满足触发规则后,工作流就会被执行

1.表单事件

当发生了新增记录编辑记录删除记录查看记录表单事件时,触发对应的工作流程

注意

本平台提供灵活的前触发方式,即:执行操作前触发对应工作流

1.1 新增记录前触发

创建表单记录前触发对应工作流(此时表单记录还未保存到表单中)。常用于对提交记录进行数据检查等,当流程执行中断时记录不会被保存

场景说明

新增客户表记录前,需要校验新增的客户是否已存在于系统中(为了演示说明,没有使用唯一字段

工作流配置如下

效果示例

1.2 新增记录后触发

表单记录创建之后触发对应工作流,此时表单记录已存在于表单中。常用于提交审批申请等,需要对审批单据进行留底

点击查看新增记录后触发示例

1.3 编辑记录前触发

编辑表单记录前触发对应工作流(此时表单记录还未被更改) 。如果需要对编辑操作进行审批,最好使用此方式,流程执行完成后才会更改记录

场景说明

修改客户表的客户信息前,必须要审批通过以后才能修改

注意

如果表单中包含了子表字段,则触发节点中的子表字段将被拆分为4部分

  • 全量:包含了子表的全部记录(如有修改,则是修改后的全部记录)
  • 新增:包含子表新增的记录
  • 编辑:包含子表编辑的记录
  • 删除:包含子表删除的记录

1.4 编辑记录后触发

编辑表单记录后触发对应工作流(此时表单记录已被更改) 。常用于修改记录后同步修改其他表单的数据记录

场景说明

修改客户表的客户信息后,需要将修改后的客户信息同步到其他关联表单中

注意

如果表单中包含了子表字段,则触发节点中的子表字段将被拆分为4部分

  • 全量:包含了子表的全部记录(如有修改,则是修改后的全部记录)
  • 新增:包含子表新增的记录
  • 编辑:包含子表编辑的记录
  • 删除:包含子表删除的记录

1.5 删除记录前触发

删除表单记录前触发对应工作流(此时表单记录还未被删除)

1.6 删除记录后触发

删除表单记录后触发对应工作流(此时表单记录已被删除)

1.7 查看记录后触发

用户点击并查看了记录的详细信息后,触发对应工作流

2.按钮点击

按钮点击工作流不能直接创建,当创建表单功能按钮后会自动创建一条按钮对应的工作流。点击按钮后触发按钮对应的工作流

2.1 对视图启用

对视图启用的按钮,选择记录并执行按钮后,触发节点会包含选择记录的数据以供后续节点使用

注意

当按钮设置了二次弹窗,并修改了字段数据后,以修改后的字段数据作为触发节点参数

注意

如果表单中包含了子表字段,则触发节点中的子表字段将被拆分为4部分

  • 全量:包含了子表的全部记录(如有修改,则是修改后的全部记录)
  • 新增:包含子表新增的记录
  • 编辑:包含子表编辑的记录
  • 删除:包含子表删除的记录

2.2 对表单启用

对视图启用的按钮因为不会选择记录,所以不会包含记录的数据。但如果设置了二次弹窗,则会包含二次弹窗设置的字段数据

场景说明

此类工作流,常用于对表单数据批量化处理。例如:修复表单的某个字段数据

3.日期字段

选择表单中的某个日期类型字段,当到达此日期时,触发对应工作流

注意

记录中日期字段的值被修改后,达到修改后的日期时,流程也会执行

目前暂不支持设置子表中的日期字段


3.1 开始执行时间

除了可以设置到达时间时执行,还支持到达时间前到达时间后执行

3.2 触发节点数据

后续节点可以选择到日期字段所在记录的字段数据

4.循环定时

设置循环间隔时间后,将按照间隔时间循环执行工作流程

4.1 循环类型

系统提供了以下循环类型

  • 按分钟循环每n分钟执行,例:每10分钟执行
  • 按小时循环每n小时执行,例:每1小时执行
  • 按天循环每n天的y时间执行,例:每2天的12:00执行
  • 按星期循环每n周,在周y的z时间执行,例:每1周,在周1的8:00执行
  • 按月循环在n月,的y号的z时间执行,例:在6、12月,的1号的8:00执行

4.2 开始/结束执行时间

选择工作流开始/结束执行的时间,如果结束执行时间不存在则会无限执行下去

注意

如果执行间隔时间较短,并且工作流单次执行时间很长,则会给系统带来巨大的压力

可以通过工作流日志查看单次执行耗时

4.3 测试/正式环境启用

系统允许此工作流单独在 测试 / 正式 中启用

5.Webhook触发

每一个Webhook触发工作流都会自动生成对应的链接地址,其他系统可以通过调用此链接地址触发工作流,并获取返回值

5.1 Webhook地址

系统自动生成Webhook链接地址,其中正式环境测试环境的链接地址不同,调用后会触发不同环境下的工作流

5.2 安全设置

为了保证请求及数据安全,本平台提供了以下安全设置

启用IP白名单

仅白名单内的IP允许访问

启用签名校验

请求方使用秘钥构建签名,然后携带签名进行接口请求,本平台收到请求后进行签名校验,校验通过后执行工作流

5.3 参数模板

Webhook链接仅支持使用json格式的参数,导入json模板可以自动生成节点参数

设置了参数模板后,后续节点则可以使用此参数

5.4 数据返回节点

Webhook触发方式的工作流,可以增加数据返回节点用于返回数据给调用方

注意

当需要返回原始数据时,需要设置数据返回节点参数名为:ORIGINAL_VALUE,并勾选使用参数名作为字段名

配置示例

返回示例

6.成员事件

当组织下的成员发生:加入组织移除成员等成员事件后,触发对应的工作流程

后续节点能够选择到成员事件触发节点的参数

7.业务流程

业务流程接受调用方传入的“输入参数”,然后在中间过程处理业务逻辑,并在流程结束时返回“输出参数”给调用方

提示

业务流程可以看做是一个数据工厂

“输入参数”是工厂的原料,工厂内部对“输入参数”进行加工处理,最后返回处理结果“输出参数” 。所以可以将一些通用的处理流程封装起来,需要使用时只需要调用这些流程就行了

以下为业务流程的使用场景

  • 表单控件调用:表单的流程调用控件调用,可以实现复杂逻辑处理
  • 页面组件调用页面统计组件设置数据来源为业务流程,可以实现复杂业务场景下的报表统计
  • 其他流程调用:工作流的业务流程组件调用,可以实现程中调用其他流程

7.1 输入参数

业务流程作为统一的业务处理流程,可以被多个调用方使用。不同的调用方需要按输入参数模板传入对应的数据后,调用并执行业务流程

可以选择任意类型的字段作为输入参数

需要传递多个记录时,使用子表字段

可以设置参数字段为必填

设置为“必填”的字段,则调用业务流程时必须传递对应字段的值

7.2 输出参数

业务流程中可以添加数据返回节点,用于向调用方返回处理结果