关于bpmn.io流程设计器
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
关于bpmn.io流程设计器
一、概要说明
例子分为两部分:视频例子和代码例子。
视频文件直观的展示了如何使用bpmn.io流程设计器绘制流程图。代码文件验证了使用bpmn.io绘制的流程图可以被activitiAPI正确解析。
视频文件名与代码文件名相对应。代码bpmn和svg文件都以my前缀开头。
经试验,bpmn.io流程设计器不支持(代码不能解析)直接指定Assignee,也不支持在usertask图元上使用流程变量指定Assignee。(实际上项目中也不会使用以上两种方法指定Assignee,因为是写死在xml中属于硬编码)
二、bpmn.io设计器使用
注意:bpmn.io设计器在画图的时候与eclipse不同的地方在与经常会使用【设置】按钮对选中的图元进行设置,包括类别的选择等。
三、根据activiti技术要点绘图
见视频文件
四、小结
1、activiti工作流中,如果一个任务完成后,存在多条连线,应该如何处理?
在连线中,使用流程变量。
当一个任务完成后,根据这几天连线的条件设置流程变量,例如${流程变量的名称==”流程变量的值”},{}符号是boolean类型,在完成任务的时候,设置流程变量,activiti引擎判断走哪条线。
2、activiti工作流中,排他网关和并行网关都能执行什么功能?
排他网关:分支,通过连线设置流程变量,activiti引擎判断执行哪条线,如果条件不符合,会执行默认的连线离开,注意:排他网关只能执行其中的一个流程。(排除其他流程)
并行网关:可以同时执行多个流程,直到总流程的结束。可以对流程进行分支和聚合,注意:流程实例和执行对象是不一样的。一个流程实例只有一个,但是执行对象可以存在多个。如果是单例流程(没
有分支和聚合),那么流程实例ID和执行对象ID是相同的。
执行对象(Execution)的含义就是一个流程对象(ProcessInstance)具体要执行的过程对象。
3、分配个人任务的三种方式
直接给值,在流程设计器中指定Assignee。bpmn.io不支持
使用流程变量${变量的名称==”变量的值”}。bpmn.io不支持
使用类,使用监听类(实现activiti接口),指定任务的办理人(setAssignee())。bpmn.io支持五、工作流思想
工作流的主要作用是分离了业务逻辑和过程逻辑,让业务开发人员专注于核心的业务开发,过程逻辑
的处理交给工作流引擎,且过程逻辑的变化对于核心业务逻辑不影响或者影响很少。