Skip to content

流程设计器 ​

流程设计器是一个仿钉钉风格的可视化设计工具,在流程模型列表中点某一行的「设计」打开。设计器分为「表单设计」和「流程设计」两个页签,本页详细说明每种节点和配置项。

流程设计器

表单设计 ​

表单定义了申请人在发起申请中要填写的内容,字段的值同时作为流程变量,可以在条件分支中引用(例如按「请假天数」决定是否需要上级审批)。

表单设计

左侧为字段编辑区,右侧为实时预览。点「添加字段」新增一个字段,每个字段包括:

配置说明
名称必填,最多 32 个字符,如「采购金额」,显示为表单标签
标识必填,英文标识,如「days」。以字母开头,只能包含字母、数字、下划线,最多 32 位,不能重复;不能使用系统保留字(initiator、assignee、loopCounter、execution、task,以及以 nrOf、wf 开头的名称)
类型单行文本、多行文本、数字、日期、下拉选择
输入提示选填,最多 64 个字符,显示为输入框的占位文字
选项仅下拉选择:输入选项后回车(也可用逗号分隔),如「年假、事假」,至少一个选项
必填勾选后提交时必须填写
上移 / 下移 / 删除调整字段顺序或删除字段

一个表单最多 50 个字段。流程也可以没有表单(例如业务单据的流程,数据由业务单据提供)。

注意

条件分支按字段标识引用表单字段。修改或删除已被条件引用的字段后,保存时会提示「「分支名称」引用了表单中不存在的字段」。

流程设计概览 ​

流程从顶部的「发起人」节点开始,到底部的「流程结束」结束,中间按从上到下的顺序执行。

  • 「发起人」节点显示「所有人可发起」,不能删除、不需要配置。
  • 节点之间的蓝色「+」按钮用于在该位置插入节点。
  • 点击审批人、抄送人节点卡片,或点击条件分支卡片,右侧打开配置面板;改完点「确定」生效,点「取消」放弃本次修改。
  • 节点卡片右上角的「×」删除节点(分支节点连同其中的所有节点一起删除)。
  • 右上角的「-」「+」缩放画布(50%-150%),点击百分比数字恢复 100%。
  • 业务单据的流程,画布上方显示提示「该流程由「业务名称」业务单据提交审批,不在「发起申请」中显示。条件分支可以使用业务变量:……」,列出可用的业务变量。

添加节点 ​

点「+」弹出节点菜单:

添加节点

节点作用
审批人需要指定人员审批(同意 / 拒绝)
抄送人把流程抄送给指定人员知会,不需要审批,流程自动继续
条件分支按条件选择一条分支执行
并行分支多条分支同时执行,全部完成后汇合

添加审批人、抄送人节点后会自动打开配置面板。在某个节点后插入条件分支或并行分支时,原来的后续节点会接在分支汇合之后。

审批人节点 ​

新建的审批人节点默认名称「审批人」,默认审批人类型「指定成员」、多人审批方式「或签」、审批人为空时「自动通过」。

配置项 ​

配置说明
节点名称必填,最多 32 个字符,如「部门主管审批」。显示在待办列表的「当前节点」和审批记录中
审批人指定成员、指定角色、部门主管、发起人自己,见下表
多人审批方式依次审批、会签、或签。审批人类型为「部门主管」「发起人自己」时只有一个人,不显示此项
审批人为空时自动通过、转交超级管理员

审批人类型 ​

类型配置方式实际审批人
指定成员点「选择成员」从人员列表中选择一个或多个人,可点标签上的「×」移除选中的人员
指定角色在「选择角色」中选择一个或多个角色拥有任一所选角色的所有启用用户(提示「拥有该角色的所有启用用户」)
部门主管选择「主管级别」:直属主管(发起人所在部门)、第 2 级主管 …… 第 10 级主管从发起人所在部门(第 1 级)向上数到第 N 级部门,取该部门的负责人;该部门没有负责人或负责人就是发起人自己时,继续向上一级查找;一直找不到时按「审批人为空时」处理
发起人自己无需配置,面板提示「由发起人自己审批(常用于确认、补充信息)」发起人

部门主管

指定角色与多人审批方式

部门负责人在「部门管理」中设置;角色成员在「用户管理」中分配。停用的用户不会成为审批人。

多人审批方式 ​

当审批人有多人时(多个成员,或一个角色下有多人):

方式说明
依次审批按顺序依次审批:前一人同意后,下一人才收到待办
会签所有审批人同时收到待办,需所有审批人同意
或签所有审批人同时收到待办,一名审批人同意即可,其他人的待办自动取消

任何方式下,只要有一人拒绝,整个流程立即结束,状态为「已拒绝」。

审批人为空时 ​

按配置计算不出审批人(例如部门没有负责人、角色下没有启用用户)时:

选项效果
自动通过跳过该节点,直接进入下一个节点
转交超级管理员由拥有超级管理员角色的用户审批

节点卡片显示 ​

卡片正文显示审批人摘要,例如「直属主管」「第 2 级主管」「角色:总经理(或签)」「张三、李四(会签)」,多于 3 人时显示「张三、李四、王五 等 N 人」。未设置审批人时显示「请设置审批人」。

抄送人节点 ​

新建的抄送人节点默认名称「抄送人」。

抄送人设置

配置说明
节点名称必填,如「抄送会计」,显示在「抄送我的」的「抄送节点」列
抄送人指定成员、指定角色、部门主管、发起人自己,规则同审批人;选「发起人自己」时提示「抄送给发起人自己」

抄送人节点没有多人审批方式和审批人为空的设置。流程到达抄送节点时立即抄送并自动继续,抄送人在抄送我的中查看;抄送人为空时直接跳过。

条件分支 ​

条件分支用于按申请内容走不同的审批路线,例如「金额 ≥ 5 万元时增加总经理审批」。

新建的条件分支包含两个分支:「条件1」和默认分支「其他情况」。

  • 点分支节点上方的「添加条件」新增一个条件分支,新分支总是插在「其他情况」之前。
  • 每个分支卡片显示名称、优先级(从左到右为 1、2、3……)和条件摘要;未设置条件时显示「请设置条件」。
  • 分支卡片底部的左右箭头调整优先级(「其他情况」固定在最后,不能移动)。
  • 每个分支下方的「+」在该分支内添加节点;分支可以为空,表示满足该条件时不需要额外审批。
  • 删除分支时,如果分支内有节点会要求确认;剩余分支不足 2 个时会删除整个条件分支节点。

执行规则 ​

流程到达条件分支时,按优先级从高到低(从左到右)依次判断,进入第一个满足条件的分支;都不满足时进入「其他情况」。各分支执行完后汇合,继续执行条件分支节点之后的节点。

设置条件 ​

点击分支卡片(「其他情况」除外)打开「条件设置」面板:

条件设置

配置说明
分支名称必填,如「金额 ≥ 5 万元」
条件由一个或多个条件组组成:组内的条件需同时满足(且),条件组之间满足任意一组即可(或)

每条条件由三部分组成:

  1. 字段:表单字段,以及业务单据的流程变量(显示为「名称(业务)」)。表单中没有字段且不是业务流程时,可以直接输入流程变量名。
  2. 运算符:可选的运算符随字段类型变化,见下表。
  3. 值:下拉选择字段选择选项;日期字段选择日期;其他直接输入,「属于」运算符时多个值用逗号分隔。

按钮:「添加条件(且)」在组内增加条件;「添加条件组(或)」增加一个条件组;条件右侧的减号删除条件;「删除条件组」删除整组。

运算符 ​

运算符含义可用于
等于值相等全部类型
不等于值不相等;字段未填写时也成立全部类型
大于、大于等于、小于、小于等于比较大小数字、日期
属于等于其中任意一个值,多个值用逗号(中英文均可)分隔数字、下拉选择、单行文本
包含文本中包含该内容单行文本、多行文本

比较规则:两边都是数字时按数值比较(例如 100 大于 20),否则按文字比较;日期按「年-月-日」比较先后。字段没有填写时,只有「不等于」成立,其他运算符都不成立。

业务变量的类型:金额、数量、天数等为数字;单号、编码为单行文本;字典或固定选项(如请假类型、处置方式)为下拉选择,可选值显示为选项名称(随界面语言显示中文或英文)。

并行分支 ​

并行分支用于多个部门同时审批,例如财务和法务同时审核合同。

  • 新建的并行分支包含「分支1」「分支2」,点「添加分支」增加分支。
  • 分支卡片显示「无需设置条件,同时执行」,点击可修改分支名称。
  • 流程到达并行分支时,所有分支同时开始执行;全部分支执行完后汇合,继续后续节点。
  • 任一分支上的审批人拒绝,整个流程立即结束,其他分支的待办同时取消。

保存与校验 ​

点「保存」或「保存并发布」时会检查以下问题(设计图上对应节点标红并显示感叹号):

提示原因
流程至少需要一个审批人节点流程中没有任何审批人节点
存在未填写名称的节点 / 分支节点或分支名称为空
「节点」未设置审批人 / 抄送人未选择审批人类型
「节点」未选择成员 / 角色选择了指定成员 / 指定角色但没有选人
「节点」至少需要 2 个分支条件分支或并行分支少于 2 个分支
「节点」必须有且只有一个「其他情况」分支条件分支缺少默认分支
「分支」的条件未填写完整条件的字段、运算符或值为空
「分支」引用了表单中不存在的字段引用的字段已被删除或改了标识
表单相关提示字段未填写名称、标识不合法或重复、使用了系统保留字、下拉选择没有选项

一个流程最多 200 个节点。

设计示例:采购订单审批 ​

内置的「采购订单审批」流程(如本页截图):

  1. 「部门主管审批」:审批人为部门主管(直属主管),审批人为空时转交超级管理员。
  2. 条件分支:「金额 ≥ 5 万元」(订单金额(业务)大于等于 50000)进入「总经理审批」(角色:总经理,或签);「其他情况」不需要额外审批。
  3. 「抄送会计」:抄送给会计角色。

发布后,采购订单点「审核」即提交此流程审批,通过后订单变为已审核。

基于 Apache-2.0 协议开源