Camunda快速入门(三):设计一个人工任务流程并配置表单

接上一篇文章:Camunda快速入门(二):设计并执行第一个BPMN流程

在本节中,您将学习如何使用 BPMN 2.0 用户任务让人类参与到您的流程中。

1、添加用户任务活动节点

我们想修改我们的流程,以便我们可以让人类参与进来。

为此,请在 Camunda Modeler流程建模工具中打开该过程。

选择创建/删除空间工具 (<||>),并使用它来在“开始事件”和“Charge Credit Card从信用卡中扣款)”服务任务之间创建空间(单击并将光标拖动到右侧)。

接下来,从建模器的左侧菜单中,选择活动形状(圆角矩形),并将其拖动到“开始事件”和“从信用卡中扣款”服务任务之间的位置。将其命名为Approve Payment批准付款”。

通过单击活动类型并使用扳手按钮菜单将活动类型更改为“用户任务”。

2、配置用户任务处理人

接下来,打开属性视图。如果属性视图尚不可见,请单击 Modeler 画布右侧的“属性面板”标签。

在画布上选择“用户任务”。这将更新属性视图中的选择。滚动到名为 Assignee的属性。键入 demo 以在进程运行后自动将任务分配给演示用户。

3、在用户任务中配置表单

此步骤也将在属性面板中进行。如果面板尚不可见,请单击 Modeler 画布右侧的“属性面板”标签。

在画布上选择“用户任务”,单击属性面板中的Forms选项卡。

本指南使用Camunda Forms将表单添加到流程中。我们将创建一个名为payment.form的表单。设置以下字段以将此过程链接到您将要创建的表单:

  1. Type: Embedded or External Task Forms
  2. Form Key: camunda-forms:deployment:payment.form

4、通过表单设计器设计表单

现在,通过单击“文件”>“新建文件”>“表单”创建新表单Form_Payment

您可以通过从左侧的表单组件中拖放元素来添加表单字段。添加以下三个表单字段:

字段 1:

  1. Type: Number
  2. Key: amount
  3. Field Label: Amount

字段 2:

  1. Type: Text Field
  2. Key: item
  3. Field Label: Item

字段 3:

  1. Type: Checkbox
  2. Key: approved
  3. Label: Approved?

最后,将表单另存为 payment.form

5、部署流程和表单

  1. 切换回流程图
  2. 单击 Camunda Modeler 中的 Deploy 按钮
  3. 在部署面板中,选择“包括其他文件”下的文件payment.form
  4. 单击“部署”

6、发起流程验证

转到任务列表 (http://localhost:8080/camunda/app/tasklist/) 并使用用户“demo / demo”登录。点击启动流程按钮启动流程实例。这将打开一个对话框,您可以在其中从列表中选择Payment Retrieval 流程。现在,您可以使用表单为流程实例设置变量了。

单击“ Add a variable(添加变量)”按钮以创建新行,填写表单完成后,单击“Start(开始)”启动一个流程。

提示:

如果在任务列表中看不到任何任务,则可能需要一个筛选器。通过单击左侧的添加简单过滤器来添加一个过滤器。

现在,您应该会在任务列表中看到“ Approve Payment(批准付款”任务。选择任务,然后单击“图表”选项卡。这将显示流程图,突出显示等待处理的用户任务。

若要处理该任务,请选择“Form 窗体”选项卡。由于我们在 Camunda Modeler 的“Form 表单”选项卡中定义了变量,因此“任务列表”已为我们自动生成表单字段。

7、源码和文档

在线体验系统:http://www.yunchengxc.com

源代码下载:https://github.com/camunda/camunda-get-started-quickstart/archive/Step-3.zip

官方文档地址:Add a User Task to the Process (4/6) | docs.camunda.org

接下来,让我们看一下如何将网关添加到流程让流程变得更加动态,通过网关执行控制不同的流程走向

Camunda快速入门(四):设计一个带网关的流程

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/691067.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

使用SiteScan合理信息收集

一、介绍 作者&#xff1a;kracer 定位&#xff1a;专注一站式解决渗透测试的信息收集任务。 语言&#xff1a;python3开发 功能&#xff1a;包括域名ip历史解析、nmap常见端口爆破、子域名信息收集、旁站信息收集、whois信息收集、网站架构分析、cms解析、备案号信息收集、…

小迪安全2023最新版笔记集合--续更

小迪安全2023最新版笔记集合–续更 小迪安全2023最新笔记集合 章节一 ---- 基础入门&#xff1a; 知识点集合&#xff1a; 应用架构&#xff1a;Web/APP/云应用/三方服务/负载均衡等 安全产品&#xff1a;CDN/WAF/IDS/IPS/蜜罐/防火墙/杀毒等 渗透命令&#xff1a;文件上传下…

RK3568平台 有线以太网接口之MAC芯片与PHY芯片

一.平台网络网络通路 平台有线以太网通路&#xff1a;有线以太网一般插入的是RJ45 座要与 PHY 芯片&#xff08;RTL8306M&#xff09;连接在一起&#xff0c;但是中间需要一个网络变压器&#xff0c;网络变压器经过模数转换后到达网卡(RTL8111)转换为帧数据后到达SOC。 二.网络…

业务型 编辑器组件的封装(复制即可使用)

使用需要安装 wangeditor npm i --save wangeditor import React from react; import E from wangeditor; import ./index.lessclass EditorElem extends React.Component {constructor(props) {super(props);this.isChange false;this.state {}}componentDidMount() {con…

MySQL学习Day18——逻辑架构

一、逻辑架构剖析: 1.服务器处理客户端请求: 首先 MySQL 是典型的C/S架构&#xff0c;即client/Server架构&#xff0c;服务器端程序使用的mysqld。不论客户端进程和服务器进程是采用哪种方式进行通信&#xff0c;最后实现的效果都是:客户端进程向服务器进程发送段文本(SQL语…

在script标签写export为什么会抛错|type module import ES5 ES6 预处理 指令序言 JavaScript JS

今天我们进入到语法部分的学习。在讲解具体的语法结构之前&#xff0c;这一堂课我首先要给你介绍一下 JavaScript 语法的一些基本规则。 脚本和模块 首先&#xff0c;JavaScript 有两种源文件&#xff0c;一种叫做脚本&#xff0c;一种叫做模块。这个区分是在 ES6 引入了模块…

如何防止被恶意刷接口?

在面试时&#xff0c;经常会被问一个问题&#xff1a;如何防止别人恶意刷接口&#xff1f; 这是一个非常有意思的问题&#xff0c;防范措施挺多的。今天这篇文章专门跟大家一起聊聊&#xff0c;希望对你会有所帮助。 1 防火墙 防火墙是网络安全中最基本的安全设备之一&#x…

2023年全球软件开发大会(QCon北京站2023)2月:核心内容与学习收获(附大会核心PPT下载)

本次峰会是一个汇集了最新技术趋势、最佳实践和创新思维的盛会。对于从事软件开发和相关领域的专业人士来说&#xff0c;参加这样的大会将有助于他们了解行业动态、提升技能水平、拓展职业视野&#xff0c;并与同行建立联系和合作。 本次峰会包含&#xff1a;AI基础架构、DevO…

用户空间与内核通信(一)

在Linux中&#xff0c;内核空间与用户空间是操作系统中的两个主要部分&#xff0c;它们有着明显的区别和不同的功能。 内核空间&#xff1a; 内核空间是操作系统内核运行的区域&#xff0c;它包括了操作系统内核代码、数据结构和设备驱动程序等。内核空间位于虚拟地址空间的最…

Linux程序性能分析60秒+

Linux性能分析大师Brendan Gregg有一篇非常著名的博客&#xff0c;介绍在性能分析开始的60秒内&#xff0c;利用标准的Linux命令行工具&#xff0c;执行一次充分的性能检查&#xff0c;获得系统资源利用率和进程运行情况的整体概念&#xff0c;查看是否存在异常、评估饱和度。本…

安全架构设计理论与实践

一、考点分布 安全架构概述&#xff08;※※&#xff09;安全模型&#xff08;※※※&#xff09;信息安全整体架构设计网络安全体系架构设计区块链技术&#xff08;※※&#xff09; 二、安全架构概述 被动攻击&#xff1a;收集信息为主&#xff0c;破坏保密性 主动攻击&#…

Electron实战之菜单与托盘

菜单、托盘是桌面端应用必备的功能之一&#xff0c;我们通常会在菜单上配置应用常用的&#xff1a;偏好设置、显示隐藏、打开文件等功能&#xff0c;在托盘内设置&#xff1a;退出、重启、帮助等辅助性功能&#xff0c;帮助用户方便快捷地控制应用的一些系统功能。系统托盘实际…

SQL Developer 小贴士:显示RAC配置

前提&#xff1a; 已建立2节点RAC已在SQL Developer中建立了2个连接&#xff0c;分别到RAC的两个节点 然后单击菜单View>DBA&#xff0c;分别连接RAC节点1和节点2&#xff0c;并组织成目录&#xff08;不必须&#xff0c;但建议&#xff09;。 在两处可以体现为RAC配置。第…

代码随想录算法训练营|二叉树总结

二叉树的定义&#xff1a; struct TreeNode {int val;TreeNode* left;TreeNode* right;TreeNode():val(0),left(nullptr),right(nullptr){}TreeNode(int val):val(val),left(nullptr),right(nullptr){}TreeNode(int val,TreeNode* left,TreeNode* right):val(val),left(left),…

智能家居中可自行收集能量的无电池的无线设备

此图片来源于网络 1、背景 ZigBee是一种基于IEEE 802.15.4标准的低速短距离无线通信技术&#xff0c;用于创建个人区域网络。其名称来源于蜜蜂的八字舞&#xff0c;因为蜜蜂通过这种舞蹈来与同伴传递花粉的所在方位信息&#xff0c;从而构成了群体中的通信网络。ZigBee技术具…

白话微机:6.解释RTOS以及一些考研面试问题

一. 前言&#xff08;总结世界观&#xff09; 很久很久以前&#xff0c;有这样一个世界&#xff0c;这个世界有着现实世界一样的元素&#xff1a;那里的人又有一个别的名字叫做“数据”&#xff0c;人有0有1&#xff1b;人们也有住房&#xff0c;这些住房在这个世界叫做“存储器…

6-酮-前列环素F1α(6-keto-PGF1α) ELISA检测试剂盒

高灵敏ELISA试剂盒&#xff0c;3小时内可检测低至1.40 pg/ml 6-酮前列腺素F1α 6-酮-前列环素F1α&#xff08;6-keto-PGF1α&#xff09;是前列环素&#xff08;PGI2&#xff09;的稳定水解产物。由于前列环素在缓冲液中的半衰期很短&#xff08;2-3分钟&#xff09;&#xff…

第四篇【传奇开心果系列】Python文本和语音相互转换库技术点案例示例:pyttsx3自动化脚本经典案例

传奇开心果短博文系列 系列短博文目录Python文本和语音相互转换库技术点案例示例系列 短博文目录前言一、雏形示例代码二、扩展思路介绍三、批量处理文本示例代码四、自定义语音设置示例代码五、结合其他库和API示例代码六、语音交互系统示例代码七、多语言支持示例代码八、添加…

JavaSE——面向对象基础(1/4)-面向对象编程、程序中的对象、对象的产生、对象的执行原理、类和对象的一些注意事项

目录 面向对象编程 程序中的对象 对象的产生 对象的执行原理 类和对象的一些注意事项 面向对象编程 开发一个一个的对象&#xff0c;把数据交给对象&#xff0c;再调用对象的方法来完成对数据的处理。 例如设计一个学生的对象&#xff0c;其中有姓名和成绩等&#xff0c…

【DDD】学习笔记-应用服务

Eric Evans 为运用领域驱动设计的系统架构划定了层次&#xff0c;在领域层和展现层之间引入了应用层&#xff08;Application Layer&#xff09;&#xff1a;“应用层要尽量简单&#xff0c;不包含业务规则或者知识&#xff0c;而只为下一层&#xff08;指领域层&#xff09;中…