Appearance
startProcessInstanceById
Flowable 7.1.0 摘要:在使用给定ID的过程定义的精确指定版本中启动一个新的流程实例。
方法签名与说明
ProcessInstance startProcessInstanceById ( String processDefinitionId)
在使用给定ID的过程定义的精确指定版本中启动一个新的流程实例。 Parameters:
- ProcessDefinitionID-过程定义的ID不能为null。
Throws:
- FlowableObjectNotFoundException-当没有使用给定键部署过程定义时。
ProcessInstance startProcessInstanceById ( String processDefinitionId, String businessKey)
在使用给定ID的过程定义的精确指定版本中启动一个新的流程实例。可以提供业务密钥,以将流程实例与具有明确业务含义的特定标识符相关联。例如,在订单过程中,业务密钥可能是订单 ID。然后可以使用此业务密钥来轻松查找该过程实例,请参阅ProcessInstanceQuery.ProcessInstanceBusinessKey(String)。提供这样的业务密钥绝对是 最佳实践。 Parameters:
- ProcessDefinitionID-过程定义的ID不能为null。
- BusinessKey-识别流程实例的密钥,可用于以后通过查询API检索过程实例。
Throws:
- FlowableObjectNotFoundException-当没有使用给定键部署过程定义时。
ProcessInstance startProcessInstanceById ( String processDefinitionId, Map < String , Object > variables)
在使用给定ID的过程定义的精确指定版本中启动一个新的流程实例。 Parameters:
- ProcessDefinitionID-过程定义的ID不能为null。
- 变量 - 要通过的变量可以为null
Throws:
- FlowableObjectNotFoundException-当没有使用给定键部署过程定义时。
ProcessInstance startProcessInstanceById ( String processDefinitionId, String businessKey, Map < String , Object > variables)
在使用给定ID的过程定义的精确指定版本中启动一个新的流程实例。可以提供业务密钥,以将流程实例与具有明确业务含义的特定标识符相关联。例如,在订单过程中,业务密钥可能是订单 ID。然后可以使用此业务密钥来轻松查找该过程实例,请参阅ProcessInstanceQuery.ProcessInstanceBusinessKey(String)。提供这样的业务密钥绝对是 最佳实践。 Parameters:
- ProcessDefinitionID-过程定义的ID不能为null。
- 变量 - 要通过的变量可以为null
Throws:
- FlowableObjectNotFoundException-当没有使用给定键部署过程定义时。
常见使用场景
- 创建新的流程实例,驱动业务工单生命周期。
- 结合业务键、租户信息构建多租场景。
- 官方摘要:在使用给定ID的过程定义的精确指定版本中启动一个新的流程实例。
Kotlin 调用示例
kotlin
val processDefinitionId = "PROCESSDEFINITIONID"
runtimeService.startProcessInstanceById(processDefinitionId)注意事项
- 启动流程前确认模型已部署且可用。
- 建议传入业务键,方便后续查询定位。
- 调用前请确认当前用户具备相应的任务/流程操作权限。
- 本文基于 Flowable 7.1.0 Javadoc。
相关 API
- startProcessInstanceByKey
- startProcessInstanceById
- startProcessInstanceByMessage