首页 > 其他分享 >Flowable在开启工作流是设置各节点审批人

Flowable在开启工作流是设置各节点审批人

时间:2024-08-14 17:50:34浏览次数:4  
标签:变量 Flowable variables 流是 节点 实例 参数 import 流程

该方式用于流程固定并且明确知道每个节点什么人审批。

步骤一:

指定参数,比如某个节点设置的审批人为${AAAAA}如图:

步骤二:

在工作流启动前向启动工作流时使用的 startProcessInstanceByKeyAndTenantId()方法中填充 variables参数,variables中是键值对的形式,其中AAAAA这个参数需要给值。

这样在工作流到对应节点找审批人时,就会从variables 中找到这个AAAAA。
注意variables的 key值 这个AAAAA两边(代码+前端配置)一定要对应上

*************************** 对startProcessInstanceByKeyAndTenantId()方法中的variables参数解释**********************************************

在Activiti(一个流行的开源工作流和业务流程管理(BPM)平台,它是基于BPMN 2.0的)或类似的流程引擎中,RuntimeService的startProcessInstanceByKey()方法用于根据流程定义的键(key)启动一个新的流程实例。这个方法的一个常见重载版本允许你传递一个变量映射(map)作为参数,这个参数允许你在流程实例启动时设置流程变量。

流程变量是在流程执行期间可以访问的数据,它们可以用于多种目的,比如条件判断、任务分配、数据持久化等。在启动流程实例时设置流程变量,可以让流程在执行之初就具备必要的上下文信息。

使用方法

startProcessInstanceByKey(String processDefinitionKey, Map<String, Object> variables)方法的variables参数是一个Map<String, Object>类型的对象,其中键(String)是变量的名称,值(Object)是变量的值。这个map中的每个键值对都会被设置为流程实例的上下文变量,可以在流程的任何地方(如用户任务、服务任务、脚本任务等)通过变量名来访问。

import org.activiti.engine.RuntimeService;  
import org.activiti.engine.runtime.ProcessInstance;  
  
import java.util.HashMap;  
import java.util.Map;  
  
// 假设runtimeService已经通过某种方式被初始化  
RuntimeService runtimeService = ...;  
  
// 创建变量映射  
Map<String, Object> variables = new HashMap<>();  
variables.put("applicantName", "John Doe");  
variables.put("applicantAge", 30);  
  
// 根据流程定义的键启动流程实例,并设置变量  
String processDefinitionKey = "myProcess";  
ProcessInstance processInstance = runtimeService.startProcessInstanceByKey(processDefinitionKey, variables);  
  
// 现在,流程实例已经启动,并且带有名为applicantName和applicantAge的变量

在这个例子中,当流程执行到需要这些变量的地方时(如服务任务中的脚本或表达式),就可以通过变量名applicantName和applicantAge来访问这些值了

标签:变量,Flowable,variables,流是,节点,实例,参数,import,流程
From: https://www.cnblogs.com/xiaop27/p/18359445

相关文章

  • 【OS_Linux】删除日志文件中某个时间节点之前的内容
    在Linux中,可以使用sed命令命令来删除日志文件中某个时间点之前的内容。假设有一个名为logfile.log的日志文件,想删除2024年8月14日15:30:00之前的所有内容。首先,需要确定日志文件的日期格式。如果日志文件中的日期格式是YYYY-MM-DDHH:MM:SS,你可以使用以下命令:sed-i'/2024-08-1......
  • Flowable常用方法
    Flowable作为Activiti的分支,其API与Activiti非常相似,但也有一些细微的差别和新增的特性。以下是一些Flowable特有的或常用的方法:流程定义管理部署流程定义:与Activiti类似,通过RepositoryService的createDeployment()方法创建DeploymentBuilder并部署流程定义。查询流程定义:使用R......
  • 学习Java的日子 Day68 jQuery操作节点,Bootstrap
    jQuery1.jQuery操作DOMDOM为文档提供了一种结构化表示方法,通过该方法可以改变文档的内容和展示形式在访问页面时,需要与页面中的元素进行交互式的操作。在操作中,元素的访问是最频繁、最常用的,主要包括对元素属性attr、内容html、值value、CSS的操作1.1操作内容获取......
  • 代码随想录训练营day20|235. 二叉搜索树的最近公共祖先,701.二叉搜索树中的插入操作,450
    二叉搜索树的最近公共祖先题目根据二叉搜索树的特性,它的公共祖先肯定是值夹在p和q之间的(满足此条件的第一个点)TreeNode*getroot(TreeNode*root,TreeNode*p,TreeNode*q){ if(rooot==NULL)returnNULL; if(root->val<p->val&&root->val<q->val){ returngetroot(r......
  • 交换相邻节点
    1classListNode{intval;ListNodenext;ListNode(intval){this.val=val;this.next=null;}}publicclassSwapNodes{//方法:交换相邻节点publicstaticListNodeswapPairs(ListNodehead){//如果链表......
  • java处理流 和节点流(在字节流和字符流中,又分为处理流和节点流)
    Java中的I/O流分为两类:字节流和字符流。字节流主要用于读写二进制数据,而字符流则主要用于读写文本数据。在字节流和字符流中,又分为处理流和节点流。节点流是直接连接到数据源或数据目的地的流,也就是说它们是直接操作文件的流,例如FileInputStream和FileOutputStream。节点流可以直......
  • ICASSP2025重要时间节点
    ICASSP2025重要时间节点征稿启事下载论文征集提交门户将于2024年8月12日(美国太平洋时间)开放。任何人都可以成为不超过九份投稿的作者团队的成员。**这50第IEEE声学、语音和信号处理国际会议(ICASSP)**将于2025年4月6日至11日在印度海得拉巴海得拉巴国际......
  • 在K8S中,K8S外部节点访问Pod有哪些方式?
    在Kubernetes(K8S)中,外部节点访问Pod的方式主要有以下几种:1.hostNetwork原理:通过将Pod配置为使用hostNetwork,Pod中的容器将直接看到并共享宿主机的网络接口。这意味着外部流量可以直接通过宿主机的IP地址和端口访问Pod内的服务。配置示例:apiVersion:v1kind:Podmeta......
  • 修改宠物俱乐部程序,把所有同名的宠物都存储在同一个节点。当用户选择查找宠物时,程序应
    /修改宠物俱乐部程序,把所有同名的宠物都存储在同一个节点。当用户选择查找宠物时,程序应咨询用户该宠物的名字,然后列出该名字的所有宠物(及其种类)/include<stdio.h>include<stdlib.h>include<string.h>typedefstructPet{charname[50];charspecies[50];structPet*......
  • 【WSN覆盖优化】基于鱼鹰优化算法OOA求解无线传感器节点2D覆盖优化问题附Matlab代码
    鱼鹰优化算法(OspreyOptimizationAlgorithm,OOA)是一种基于鱼鹰捕鱼行为的启发式优化算法,可用于解决优化问题。在无线传感器网络(WSN)中,覆盖优化是一个关键问题,涉及到最大化网络覆盖范围并减少节点数量。以下是一个简单的示例框架,展示如何基于OOA算法求解无线传感器节点的二......