当前位置: 首页 > news >正文

织梦dedeeims网站打不开如何在google上免费推广

织梦dedeeims网站打不开,如何在google上免费推广,无锡网站建设wuxi8878,响应式网站设计开发本章将分享的是camunda流程设计器--Camunda Modeler的基本使用#xff08;对应camunda版本是7.19#xff09;#xff0c;包括bpmn流程图画法#xff0c;各种控件使用以及一些日常业务场景的流程图的实现 参考资料#xff1a; Camunda BPMN 基础组件-CSDN博客 Camunda: Exe…本章将分享的是camunda流程设计器--Camunda Modeler的基本使用对应camunda版本是7.19包括bpmn流程图画法各种控件使用以及一些日常业务场景的流程图的实现 参考资料 Camunda BPMN 基础组件-CSDN博客 Camunda: ExecutionListener执行监听器和TaskListener任务监听器-CSDN博客 snail-camunda: Camunda二次封装以及相关功能使用介绍。 中国式工作流解决方案。 文章目录 一、常用控件1.事件Event2.任务Task3.网关Gateway 二、流程设计器使用1.新建模型2.命名流程图3.拖拽控件画图4.监听器配置5.网关配置6.子流程1.内部子流程2.外部子流程活动调用 三、实战演示 一、常用控件 1.事件Event 事件是BPMN2.0中一个非常重要的概念是流程运行过程中发生的事情而这些事情的发生会影响到流程的流转。对每个事件而言一般会包含两个要素分别是触发这个事件的原因以及由此导致的结果。 以下是一些常用的事件类型 空白开始事件 如下图所示开始事件是流程图里必须要有的元素同时一个流程图只能有且仅有一个空白开始事件 结束事件 标志流程的一个实例或一个分支走向结束在一个流程图里可以存在多个结束事件节点结束事件不会影响其他并行路径的执行只是结束它所在的特定路径。 终止事件 终止事件是 BPMN 2.0 引入的一种特殊类型的结束事件。它会导致整个流程包括所有并行路径立即终止。 流程立即终止终止事件会导致整个流程立即终止无论是否有其他并行路径正在执行。 单一实例一个流程中只能有一个终止事件。如果有多个终止事件流程引擎将不知道该执行哪个。 影响所有路径终止事件会影响整个流程的所有并行路径不仅仅是一个分支。 计时器事件 计时器事件可以用作启动事件、中间事件或边界事件。边界事件可以中断也可以不中断。 下图里的是边界中断事件表示的是10秒后还在该节点则判定超时会中断流程走向下面的路线 错误事件 错误事件分为 错误启动事件 和 错误边界事件 错误启动事件 如下图错误结束节点后会触发下面的事件子流程由事件子流程中的错误启动事件进行处理 只能用于触发事件子流程而不能用于启动流程实例。错误启动事件始终处于中断状态 注意选择相同的错误定义这样才能被捕获错误边界事件 边界事件可以捕获中间错误中断流程并重新控制流程走向如下图所示由于系统任务执行主动抛出了BpmnError异常然后就被错误边界事件捕获处理了。 2.任务Task 任务表示流程中的工作单位需要人工或系统执行特定的动作。 系统任务 即不需要人工处理而是由系统自动处理的任务。通常调用外部服务或脚本。可以配置 Java 类、表达式或外部任务来实现任务逻辑。 由于项目中我用到系统任务的不多这里只展示配置java类的方式。 如下图type选择java class然后配置java类的全路径 java类如下实现JavaDelegate接口 execution对象里可以获取到流程实例的各种信息也可以对流程实例进行操作如下面的设置流程变量等 public class TestCalculateErrorDelegate implements JavaDelegate {Overridepublic void execute(DelegateExecution execution) throws Exception {Integer numerator 0;Integer denominator 0;try {int result numerator / denominator;execution.setVariable(result, result);} catch (Exception e) {execution.setVariable(calculateErrorCode, 4098);execution.setVariable(calculateErrorMsg, 除数不能为0);throw new BpmnError(4098, 除数不能为0);}} }用户任务 用户任务即需要人工参与者完成的任务。当流程执行到用户任务节点时将会给这个节点分配的用户创建待办任务。 如下图所示分配该用户任务节点给了admin 这里的assignee在真实业务场景中一般会设置成流程变量进行动态的赋值如下图 ${assignee}代表这里取值是取流程实例中的assignee变量这样就可以结合具体业务动态地给这个地方赋值了 多实例用户任务 一个用户任务节点也可以是多个参与者同时又分为 并行 和 串行 2种类型 如下图通过点击修改属性按钮可以看到右上角有两个类型选项第一个是并行第二个串行 并行 并行又分为或签一个人通过即通过、比例签通过人数达到总人数XX比例即通过还有会签需要全部人都通过才通过 如下图是或签配置与单实例任务有所不同 第一行是固定写法同理的还有 //比例签需要满足0.3比例通过 ${nrOfCompletedInstances/nrOfInstances 0.3 } //会签需要全部通过 ${nrOfCompletedInstances nrOfInstances}串行 串行即多个人依次审批待办任务也是只有当到自己审批的时候才会创建。配置逻辑和并行的基本同理。 3.网关Gateway 在流程中需要根据条件分叉或合并路线的时候就需要用到网关。 排他网关 会依次判断所有的路径然后走符合条件的第一条路径 如下图所示 并行网关 允许同时走多个分叉路径都走完后合并后再走后面的节点 并行网关是没有条件限制的 如下图所示 包含网关 与并行网关类似区别在于可以设置条件限制满足条件的路径就会走 如下图所示的请假流程当请假天数大于3天既会走经理审批同时也会走老板审批两个都审批好后再汇集走下个节点 二、流程设计器使用 这里我们以camunda7.19为例讲解流程设计器的基本使用 1.新建模型 如下图所示新建的时候选择camunda 7版本并且左下角再选择小版本号为7.19 2.命名流程图 创建新文件后默认会有一个开始节点然后我们需要先点击下空白处然后在右边的窗口里输入流程的名字和流程的ID(流程定义key) Name可以在后面作为流程名称(流程类型)来使用而流程定义key(表里是PROC_DEF_KEY_ ) 则是该流程图的唯一标识 区别于流程定义id即表里的PROC_INST_ID_ 每次修改了图重新部署都会变对应的是这个图的某个版本流程定义key则图修改重新部署后不会变 3.拖拽控件画图 从左边的控件栏选择后拖拽到画板即可这里常用的控件上面已经介绍过。 4.监听器配置 在流程中我们经常要在节点前或节点后去做一些操作这时候我们就可以使用监听器来实现。 执行监听器 ExecutionListener触发事件有start、end、take 其中节点有start、end两种事件而连线则有take事件。 任务监听器TaskListener触发事件有create, assignment, update, complete, delete or timeout。 执行监听器 ExecutionListener 如下图就是在开始节点配置了执行监听器start时触发 监听器类型是java类即会执行下面的java方法 这里的java类实现ExecutionListener接口如下所示 public class ProcessStartExecutionListener implements ExecutionListener {Overridepublic void notify(DelegateExecution execution) throws Exception {//初始化状态为审批中execution.setVariable(approveState, 0);log.info(初始化状态为审批中---------------approveState0);}}监听器除了用java类常用的还有脚本片段如下图所示 注意 脚本使用的是groovy语言需要先在springboot项目中引入groovy依赖否则会报错找不到引擎 dependencygroupIdorg.codehaus.groovy/groupIdartifactIdgroovy-jsr223/artifactIdversion3.0.15/versionscoperuntime/scope /dependency任务监听器 TaskListener 如下图任务节点create的时候会执行监听器逻辑同样可以配置java类或脚本片段 java类参考下面实现TaskListener接口 public class ProcessReturnTaskListener implements TaskListener {Overridepublic void notify(DelegateTask delegateTask) {// 设置变量variable1值为1delegateTask.setVariable(variable1, 1);log.info(流程退回变量初始化值为1成功, taskId:{}, variableName:{}, delegateTask.getId(), variableName);}} }监听器执行顺序 下图为例 执行顺序1. 开始节点start -》 end2. 连线take3. 任务节点ExecutionListener start4. 任务节点TaskListenercreate -》 assignment -》 complete5. 任务节点ExecutionListener end6. 连线take7. 结束节点start - 》 end5.网关配置 当我们的业务需要根据条件来判断不同走向的时候就需要配置网关 如下图实现的是流程变量t0等于1则走向admin审批t0等于0时则直接走向结束 需要在网关后的两条连线配置条件如下 也可以使用groovy脚本如下 6.子流程 有的时候某个节点需要走一套流程来实现业务例如某个多实例并行节点在节点中有需要有自己的审批、退回等操作这个时候就可以用到子流程来实现。子流程又分为 内部子流程和外部子流程活动调用 1.内部子流程 如下图所示 要注意的是图里子流程的t1变量是针对整个(父)流程的也就是如果其中一个子流程赋值了t1变量其他子流程里的t1变量也会受影响在真实业务中需要注意这点。 2.外部子流程活动调用 如下图所示 外部子流程即触发另一个流程图的流程在数据表里也是会新增另一个流程定义key的数据内部子流程不会还是只是父流程定义key的数据 下图右边栏里的called element配置的就是子流程图的定义key 父流程 子流程 采用外部子流程则子流程里的变量是针对子流程实例的所以不同子流程的变量不会互相影响 三、实战演示 关于流程图的示例可以学习 snail-camunda: Camunda二次封装以及相关功能使用介绍。 中国式工作流解决方案。
http://www.hkea.cn/news/14547138/

相关文章:

  • 物流公司网站建设方案邢台网站设计
  • 平台网站制作公司网龙网络公司校园招聘
  • 住房和城乡建设部网站安全分会wordpress地产主题
  • 番禺人才网站wordpress数字交易主题
  • 国外做免费的视频网站有哪些广州机械加工
  • 长沙设计网站公司网站建设要购买服务器吗
  • 网站空间被攻击建工网校app下载
  • 怎样做网站底部导航crm管理系统怎么用
  • 安康网站建设公司价格西数网站管理助手
  • 山东省住房城乡建设厅查询网站首页个人网页设计尺寸
  • 专注赣州网站建设seo网上课程
  • 营销网站大全做视频投稿赚钱的网站
  • 极简资讯网站开发服务类网站建设策划书
  • 龙岗企业网站设计公司旅游企业公司网站建设
  • 如何做网站截流盐城做网站公司
  • 设计工作室网站网站建设是属于软件开发费吗
  • 政务网站系统唐山制作手机网站
  • 学网站开发多久网站标题改动
  • 什么网站可以做引文分析南京网站工作室
  • 免费网站转app网站更换服务器教程
  • 海外访问国内网站 dns网站建设和服务器运营
  • 校园网上零售网站建设方案如何开网店无货源不需要投资
  • 网站建设西安郑州艾特网站建设
  • 网站设计就业培训内蒙古优途国际旅行社
  • 网站开发用户注册重庆专业的网站建设公司
  • 手机网站建设软件下载广州市花都区建设局网站
  • 合肥网站建设渠道wordpress 枚举用户
  • 做网站加一个定位功能要多少钱网站建设设计公司 知乎
  • 帮客户做网站的公司做app需要什么软件
  • 如何制作家具网站咸阳今天的新消息