欢迎使用无远工作流引擎 v2.1

v1.0+ 文档地址

  • 本教程假设您已经掌握在一般情况下,如何使用无远开发平台开发一个功能页面。如您还未掌握,请先学习《快速上手》
  • 如果您要实现的业务流程属于仅包含到三五个环节的简单流程,请参考社区文章 《没有流程设计器,如何做工作流》
  • 如果您需要实现比较复杂的网状流程,并且希望流程可以轻松随需变更,那么可以采用无远工作流引擎来辅助实现。

无远工作流引擎具备以下特点:

  1. 最简单的图元描述工作流,极易上手使用及维护流程。
  2. 搭配强大的无远开发平台,审批内容可以是任意复杂的组合窗口形式,不仅仅是一个表单,不受工作流引擎约束
  3. 可以采用无远开发平台独有的用户变量机制,实现灵活、微小的权限控制效果。
  4. 清晰的流程版本管理,从容应对各种流程定义变化,运行时流程相关人员变化。
  5. 工作流引擎可以发布给最终用户,自主修改工作流配置。

【流程设计器示例 - 信贷审批】 流程设计器

【审批详情示例 - 调薪审批】 调薪审批

本教程以【报销】流程为例,讲解一个工作流从定义到创建使用的全部过程。您可以以此举一反三,将后续表述中出现的【报销】替换成其他【流程名】依然适用。

===

常见问题解答

1. 流程定义变更对当前进行中的流程是否有影响?

无影响,每个流程实例在创建时,已锁定版本,流程变更不会影响旧实例的运行。如确实需要,可以让所有进行中的示例流程取消后,重建新实例。

2. 工作流中,人如何实现审批任务转交或委托功能?

可以通过调用工作流 API 的 WorkflowManager.setInstanceHandler - 设置实例当前处理人方法来实现,具体实现方法参考社区讨论:https://forum.wuyuan.io/plate/qa/topic/6405956195e86f700bbf7081

3. 如何实现会签功能? 即某个状态节点需要多个部门多个人同时审批通过之后才能进入下一个状态?

工作流引擎本身不支持会签功能,可以在流程图上绘制一个等待多人审批的节点,然后在上层自由编程结合工作流图来实现。具体步骤可以参考社区讨论:https://forum.wuyuan.io/plate/qa/topic/640fe20f2741aa446be18da8

4. 人员调岗或离职怎么办?

如果待审批任务的查询条件精确到人员ID,则应该在离职或者岗位变动前转交给其他用户 ID。如果待审批任务的查询条件只涉及到关系或角色依赖(比如主管,管理员)或跟组织机构挂钩,则某个人的离开不影响该任务继续执行,只要有新的角色或者相关关系人顶岗即可。因为SQL中的条件是跟角色或者关系关联的,没有跟具体员工ID关联。

5. 一个流程中审批的表单字段内容,如何实现同一份表单在不同的处理环节,对不同的人呈现不同内容?

流程设计引擎本身只规定一个完整的业务流程走向,而在这个流程中所使用的表单,属于单独的表单设计范畴。表单内每个字段对何人可见,什么条件可见,可以通过表单字段的可用条件来控制。

6. 如何设计并行处理流程,比如到达某状态(事件节点)前,需要同时满足多个状态(事件节点)的执行完成。

目前暂时不支持这种并行处理流程,可以暂时考虑在画流程图时将其串行化。后续工作会增加支持并行处理。

7. 流程中的任务状态有变化时是否可以触发消息通知给相关的人?

可以在相关动作操作【按钮事件配置】的后台 SQL 执行后脚本调用消息发送模块。> 参考文档

8. 流程图中为什么没有结束标记?

无需特别标记哪些状态是结束状态,只要找不到进一步的操作和对应的下一步状态,即可认为是终态。比如名为【已取消】、【不通过】 这样的状态,没有示意它是终态。但如果有需要,依然可以从这些状态拉出动作线比如【再次提交】等等,指向下一个状态。

9. 如何实现子流程?即流程进行中,突然发现缺少另外一个流程要办理,应该如何设计?

任何突然发生但需要处理的事情,也需要预先在流程设计中定义。流程图中没有单独的子流程标记,如有需要,创建一个状态节点,命名为XXX子流程。同时该 子流程实际上对应着另外一分完整的流程设计。具体实现工作流实例时,时通过合理的变量标记设计,实现子流程的跳转和返回。

10. 如何让用户自主开发维护流程?

如果系统的用户和开发者是同一个人,则不存在此问题,直接依照本文档重复 2、3 节步骤即可。如果不是,则分为修改流程和创建新流程两种情况:1. 如果是修改已有流程,可以让用户直接在流程管理页面中设计调整;2. 如果是创建新的流程,除了需要创建流程图之外,还需要开发用于此流程审批流转的内容页,涉及到建立新的数据表、以及针对这些数据表的相关增删改查内容。建议依然由专业开发者来做。如果你的用户具备这些能力,可以开放工作台权限给你的用户。

如果您一定需要您的用户直接在业务系统端完成新建流程,可以让用户按照文档的第 2 节,完成基本工作流的定义。然后由您为用户自行设计一种通用的表单及数据字段,利用动态表单 form-mobile-dynamic 动态查询器 enhancer-datatables 或自定义窗口等,完成相关的审批页面设计和呈现。这取决于您自身的开发能力,平台在技术能力上没有任何限制。

results matching ""

    No results matching ""