https://blog.csdn.net/lazy_cpp/article/details/77979634

https://blog.csdn.net/shirdrn/article/details/6274744

1、嵌入子流程
子流程元素<subProcess>内嵌在主流程元素<process>之内,只能在该流程中使用该子流程,外部是无法访问到的。这种子流程一般作为局部通用逻辑处理,或者因为特定业务需要,使得比较复杂的单个主流程设计清晰直观;
2、调用子流程
首先实现一个流程,在另一个流程中可以调用该流程,通常可以定义一些通用的流程作为这种调用子流程,供其他多个流程定义复用。这种子流程使用<callActivity>元素来进行调用,间接地嵌入到主流程中,用起来比较方便。

@RestController
@RequestMapping("/subp")
@Api("subp")
public class SubProcessController {@Autowiredprivate RepositoryService repositoryService;@Autowiredprivate RuntimeService runtimeService;@Autowiredprivate TaskService taskService;@Autowiredprivate HistoryService historyService;private static String processDefindKey= "MyFourProcess";@ApiOperation("启动实例")@GetMapping("startProcess")public void startProcess(){System.out.println("启动实例");Map paramMap = new HashMap<>();paramMap.put("myname","王小宝");paramMap.put("flow","3");runtimeService.startProcessInstanceByKey(processDefindKey,paramMap);}@ApiOperation("完成任务")@GetMapping("submitTaskProcess")public void  submitTaskProcess(){System.out.println("完成任务");String taskId = "65041";taskService.complete(taskId);}@ApiOperation("查询任务")@GetMapping("queryTask")public void  queryTask(){System.out.println("查询任务");List<Task> taskList = taskService.createTaskQuery().processDefinitionKey(processDefindKey).list();for (Task task : taskList){System.out.println("taskId:"+task.getId()+" execId:"+task.getExecutionId()+" 流程实例id:"+task.getProcessInstanceId()+" 任务key:"+task.getTaskDefinitionKey());}}
}

是另一个已经发布的流程的key

嵌入子流程和调用子流程的区别:

嵌入子流程,其实还是原来的流程,通过流程定义key能查询到任务等相关信息

调用子流程:在查询子流程任务,需要用子流程的key 才能查询到

activiti 子流程相关推荐

  1. Activiti子流程学习

    Activiti提供两种子流程实现: 1.嵌入子流程 子流程元素<subProcess>内嵌在主流程元素<process>之内,只能在该流程中使用该子流程,外部是无法访问到的. ...

  2. Activiti中的关于子流程中的并发节点标记处理

    最近在研究一个轻量级的工作流引擎Activiti,就遇到了子流程中无法标记其并发节点的问题,经过几天的研究,想到了一个简单易懂的方法,总结如下,希望对你们能有所帮助,有写的不对的地方,还希望大家多提宝 ...

  3. Activiti 多个并发子流程的应用

    应用场景: 多个部门发起资金计划,最后统一到财务部审批,每个部门发起资金计划是一个子流程,财务部审批是多个部门的计划同时审批,审批完成后,再提交上级领导审批. 流程如下: 要解决以上问题,需要实现多个 ...

  4. Activiti 5.3:子流程(subProcess)

    Activiti 5.3提供了子流程的实现,包括两种基于子流程的实现: 一种是内嵌子流程:子流程元素<subProcess>内嵌在主流程元素<process>之内,只能在该流程 ...

  5. Activiti的BPMN2.0中的子流程

    Activiti的BPMN2.0中的子流程分为两种类型: 第一种:Sub-Process 第二种:Call Activities

  6. agilebpm脑图_干货基于SpringBoot2开发的Activiti引擎流程管理项目脚手架

    干货基于SpringBoot2开发的Activiti引擎流程管理项目脚手架 [干货]基于SpringBoot2开发的Activiti引擎流程管理项目脚手架 前言 在工作中,难免会遇到需要开发基于流程管 ...

  7. 获取第一个子元素_Activiti 开发案例之多实例并行子流程

    概念 Activiti 提供了两种基于子流程的实现: 一种是内嵌子流程:子流程元素<subProcess>内嵌在主流程元素<process>之内,只能在该流程中使用该子流程,外 ...

  8. 【弄nèng - Activiti6】Activiti6入门篇(二十一)—— 事务子流程

    文章目录 1. 子流程 1.1 简介 2. 事务子流程 2.1 简介 2.2 流程设计 2.3 测试类 2.4 运行 2.4.1 启动任务 源码地址 项目推荐 部分简介摘抄自官方文档 参考杨大仙的程序 ...

  9. activiti的流程事件

    1 事件分类: 事件位置分类:开始事件,结束事件,中间事件,边界事件. 事件特性分类:Catching事件和Throwing事件. 事件的定义 2 定时器事件定义: <timerEventDef ...

最新文章

  1. 马云:腾讯不是阿里要打败的对手,是同为社会创造价值的伴侣
  2. 转载:Java 内存区域和GC机制
  3. Windows Embedded Compact 7新特性
  4. hdu 2031 进制转换
  5. python 笔记:csv 读写
  6. 怎么样用vue ui来创建一个vue项目
  7. Android的Gson的使用方法,实现Json结构间相互转换
  8. 项目jetty服务器,maven项目配置Jetty服务器
  9. 谈谈 Cookie 存取和IE页面缓存的问题
  10. list排序方法python_python将list排序的方法有哪些
  11. 计蒜客NOIP模拟赛4 D2T2 跑步爱天天
  12. 最高的奖励 51Nod - 1163(贪心+并查集)
  13. PyCharm社区版支持深度学习_深度学习,大家都看哪些社区论坛?
  14. c语言未声明的标识符什么意思_C语言中%d和%f是什么意思啊?
  15. linux镜像文件包括,关于镜像文件的详细介绍
  16. 鸿蒙系统反应慢,系统优化非常的关键 鸿蒙2.0和iOS14的反应速度测试
  17. windows系统部署docker文档
  18. 上下取整函数的关系以及一些重要性质(附证明)
  19. 复现SCRDet:Towards More Robust Detection for Small, Cluttered and Rotated Objects(ICCV2019)遇到的问题及解决方案
  20. TCP原理,Socket与网络编程入门

热门文章

  1. 电工结业试卷_电工学期末考试试卷201403答案
  2. 阿里云高新技术企业认定介绍及常见问题
  3. 【手撕代码】HDB3编解码
  4. Android看天气预报,Android开源天气预报app - 清新小天气
  5. 【建模日记】建模二三事笔记
  6. 一文读懂关于开源的7大理念
  7. HTML布局之左右布局
  8. 电力系统机组组合优化(附代码)
  9. 教师资格证计算机科目有哪些内容,中学教师资格证的具体考试科目都有哪些?...
  10. accept中限制文件类型pdf、doc、docx、 jpg、 png、xls 、xlsx等格式