Activiti6工作流引擎:Form表单

2023-11-12 02:15

本文主要是介绍Activiti6工作流引擎:Form表单,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

表单约等于流程变量。StartEvent 有一个Form属性,用于关联流程中涉及到的业务数据。

一:内置表单

在这里插入图片描述
每个节点都可以有不同的表单属性。
在这里插入图片描述

1.1 获取开始节点对应的表单

@Autowired
private FormService formService;@Test
void delopyProcess() {ProcessEngine processEngine = ProcessEngines.getDefaultProcessEngine();Deployment deploy = processEngine.getRepositoryService().createDeployment().addClasspathResource("processes/LeaveProcess.bpmn").name("表单请假流程").deploy();
}@Test
void getStartFormData() {String processDefinitionId = "LeaveProcess:1:7504";StartFormData startFormData = formService.getStartFormData(processDefinitionId);List<FormProperty> formProperties = startFormData.getFormProperties();for (FormProperty formProperty : formProperties) {System.out.println(formProperty.getId() + ":" + formProperty.getType() + " "+ formProperty.getName() + ":" + formProperty.getValue());}
}

在这里插入图片描述

1.2 启动流程实例

@Test
void startProcess() {// 传统方式Map<String, Object> variables = new HashMap<>();variables.put("startTime", "2023-11-11 09:00:00");variables.put("endTime", "2024-11-11 09:00:00");variables.put("reason", "世界那么大,我想去看看");runtimeService.startProcessInstanceByKey("LeaveProcess", variables);
}@Test
void startProcess2() {// 表单方式,都是保存到ACT_RU_VARIABLE,不同的是对于对变量的数据类型的处理。// form表单对应的变量都是String类型,并且日期会作为long类型存储。Map<String, String> variables = new HashMap<>();variables.put("startTime", "2022-11-11 09:00:00");variables.put("endTime", "2023-11-10 09:00:00");variables.put("reason", "活着不是为了工作,工作是为了活得更有意义");formService.submitStartFormData("LeaveProcess:1:7504", variables);
}

在这里插入图片描述

在这里插入图片描述

二:外部表单

这篇关于Activiti6工作流引擎:Form表单的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!


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

相关文章

Go 语言中的select语句详解及工作原理

《Go语言中的select语句详解及工作原理》在Go语言中,select语句是用于处理多个通道(channel)操作的一种控制结构,它类似于switch语句,本文给大家介绍Go语言中的select语... 目录Go 语言中的 select 是做什么的基本功能语法工作原理示例示例 1:监听多个通道示例 2:带

Python实现自动化表单填写功能

《Python实现自动化表单填写功能》在Python中,自动化表单填写可以通过多种库和工具实现,本文将详细介绍常用的自动化表单处理工具,并对它们进行横向比较,可根据需求选择合适的工具,感兴趣的小伙伴跟... 目录1. Selenium简介适用场景示例代码优点缺点2. Playwright简介适用场景示例代码

最新Spring Security实战教程之表单登录定制到处理逻辑的深度改造(最新推荐)

《最新SpringSecurity实战教程之表单登录定制到处理逻辑的深度改造(最新推荐)》本章节介绍了如何通过SpringSecurity实现从配置自定义登录页面、表单登录处理逻辑的配置,并简单模拟... 目录前言改造准备开始登录页改造自定义用户名密码登陆成功失败跳转问题自定义登出前后端分离适配方案结语前言

kotlin中的模块化结构组件及工作原理

《kotlin中的模块化结构组件及工作原理》本文介绍了Kotlin中模块化结构组件,包括ViewModel、LiveData、Room和Navigation的工作原理和基础使用,本文通过实例代码给大家... 目录ViewModel 工作原理LiveData 工作原理Room 工作原理Navigation 工

MySQL常见的存储引擎和区别说明

《MySQL常见的存储引擎和区别说明》MySQL支持多种存储引擎,如InnoDB、MyISAM、MEMORY、Archive、CSV和Blackhole,每种引擎有其特点和适用场景,选择存储引擎时需根... 目录mysql常见的存储引擎和区别说明1. InnoDB2. MyISAM3. MEMORY4. A

MySQL InnoDB引擎ibdata文件损坏/删除后使用frm和ibd文件恢复数据

《MySQLInnoDB引擎ibdata文件损坏/删除后使用frm和ibd文件恢复数据》mysql的ibdata文件被误删、被恶意修改,没有从库和备份数据的情况下的数据恢复,不能保证数据库所有表数据... 参考:mysql Innodb表空间卸载、迁移、装载的使用方法注意!此方法只适用于innodb_fi

Gin框架中的GET和POST表单处理的实现

《Gin框架中的GET和POST表单处理的实现》Gin框架提供了简单而强大的机制来处理GET和POST表单提交的数据,通过c.Query、c.PostForm、c.Bind和c.Request.For... 目录一、GET表单处理二、POST表单处理1. 使用c.PostForm获取表单字段:2. 绑定到结

javaScript在表单提交时获取表单数据的示例代码

《javaScript在表单提交时获取表单数据的示例代码》本文介绍了五种在JavaScript中获取表单数据的方法:使用FormData对象、手动提取表单数据、使用querySelector获取单个字... 方法 1:使用 FormData 对象FormData 是一个方便的内置对象,用于获取表单中的键值

C#提取PDF表单数据的实现流程

《C#提取PDF表单数据的实现流程》PDF表单是一种常见的数据收集工具,广泛应用于调查问卷、业务合同等场景,凭借出色的跨平台兼容性和标准化特点,PDF表单在各行各业中得到了广泛应用,本文将探讨如何使用... 目录引言使用工具C# 提取多个PDF表单域的数据C# 提取特定PDF表单域的数据引言PDF表单是一

SSID究竟是什么? WiFi网络名称及工作方式解析

《SSID究竟是什么?WiFi网络名称及工作方式解析》SID可以看作是无线网络的名称,类似于有线网络中的网络名称或者路由器的名称,在无线网络中,设备通过SSID来识别和连接到特定的无线网络... 当提到 Wi-Fi 网络时,就避不开「SSID」这个术语。简单来说,SSID 就是 Wi-Fi 网络的名称。比如