# 启动子流程

在流程设计中,子流程是一种常见的需求,用于将复杂的业务流程拆分为多个独立的子流程。本文将详细介绍如何配置子流程,并说明子流程与主流程之间的数据传递和执行模式。

# 1. 子流程的基本概念

# 1.1 什么是子流程?

  • 定义:子流程是一个独立的流程,可以在主流程中被调用和执行。
  • 适用场景:将复杂的业务流程拆分为多个独立的子流程,便于管理和维护。

# 1.2 子流程的特点

  • 独立性:子流程可以独立运行,拥有自己的流程逻辑和数据。
  • 数据传递:主流程和子流程之间可以通过参数传递数据。
  • 执行模式:子流程可以是同步(等待子流程完成)或异步(发射后不管)。

# 2. 配置子流程的步骤

# 2.1 添加子流程节点

  1. 添加任务节点
    • 在流程设计器中,拖拽一个任务节点到画布中。
    • 将任务节点类型改为 调用子流程

添加任务节点 ▲ 添加任务节点

  1. 选择子流程
    • 在节点属性中,选择要调用的子流程。

选择子流程 ▲ 选择子流程

# 2.2 传递数据到子流程

  1. 进入呼叫子流程页签
    • 在节点属性中,进入 呼叫子流程 页签。
  2. 连线表单数据
    • 将主流程的表单数据与子流程的参数连线。

传递数据到子流程 ▲ 传递数据到子流程

# 2.3 指定子流程发起人

  1. 进入子流程发起人页签
    • 在节点属性中,进入 子流程发起人 页签。
  2. 设置发起人
    • 选择表单内的账号或角色(如采购专员)作为子流程的发起人。

指定子流程发起人 ▲ 指定子流程发起人

# 2.4 记录子流程 ID

  1. 进入子流程创建页签
    • 在节点属性中,进入 子流程创建 页签。
  2. 连线子流程 ID
    • 将子流程的 ID 连线到主流程的表单字段上。

记录子流程 ID ▲ 记录子流程 ID

# 2.5 回填子流程数据

  1. 进入子流程结束页签
    • 在节点属性中,进入 子流程结束 页签。
  2. 连线子流程数据
    • 将子流程的表单数据连线到主流程的表单字段上。

回填子流程数据 ▲ 回填子流程数据

# 2.6 设置执行模式

  1. 进入常规页签
    • 在节点属性中,进入 常规 页签。
  2. 选择同步/异步
    • 勾选 同步:主流程等待子流程完成后再继续。
    • 不勾选 同步:主流程和子流程各自独立运行。

设置执行模式 ▲ 设置执行模式 -

# 2.7 发起多个子流程

  1. 进入子流程发起人页签
    • 在节点属性中,进入 子流程发起人 页签。
  2. 设置多个发起人
    • 选择包含多个人的角色(例如“保安巡检组”)。
    • 选择 为列表中的所有人发起流程

发起多个子流程 ▲ 发起多个子流程

# 3. 子流程的总结

# 3.1 数据传递的三个阶段

  1. 发起时:主流程向子流程传递数据。
  2. 发起后:子流程立即向主流程传递数据(例如子流程 ID)。
  3. 审结时:子流程向主流程回填数据(例如签核意见)。

# 3.2 执行模式

  • 同步:主流程等待子流程完成后再继续。
  • 异步:主流程和子流程各自独立运行。

# 3.3 发起多个子流程

  • 通过设置多个发起人或包含多个人的角色,可以一次发起多个子流程。

# 4. 示例场景

# 场景 1:同步子流程

  • 需求:主流程需要等待子流程完成后才能继续。
  • 设置
    1. 在子流程节点的 常规 页签中,勾选 同步
    2. 配置数据传递和回填。

# 场景 2:异步子流程

  • 需求:主流程和子流程各自独立运行。
  • 设置
    1. 在子流程节点的 常规 页签中,不勾选 同步
    2. 配置数据传递和回填。

# 场景 3:发起多个子流程

  • 需求:一次发起多个子流程。
  • 设置
    1. 在子流程节点的 子流程发起人 页签中,选择包含多个人的角色。
    2. 选择 为列表中的所有人发起流程

# 5. 总结

  • 子流程:用于将复杂的业务流程拆分为多个独立的子流程。
  • 数据传递:主流程和子流程之间可以通过参数传递数据。
  • 执行模式:子流程可以是同步或异步。
  • 发起多个子流程:通过设置多个发起人或角色,可以一次发起多个子流程。

通过熟练掌握子流程的配置方法,可以灵活设计流程,满足复杂的业务需求。