flowable 根据实例id 查找运行参数
时间: 2023-11-12 07:06:06 浏览: 43
您可以通过以下代码使用 Flowable API 根据实例 ID 查找运行参数:
```java
RuntimeService runtimeService = processEngine.getRuntimeService();
Map<String, Object> variables = runtimeService.getVariables(instanceId);
```
其中,`processEngine` 是一个已经初始化的 `ProcessEngine` 对象,`instanceId` 是您想要查找参数的流程实例的 ID。`getVariables` 方法将返回一个 Map,其中包含流程实例的所有运行参数及其值。您可以根据需要对此 Map 进行进一步处理。
相关问题
flowable 根据流程实例id 查询参数nrOfCompletedInstances
可以通过调用 Flowable 的 API 来根据流程实例 ID 查询参数 nrOfCompletedInstances。具体的代码示例可以参考下面的 Java 代码:
```
RuntimeService runtimeService = processEngine.getRuntimeService();
ProcessInstance processInstance = runtimeService.createProcessInstanceQuery()
.processInstanceId(processInstanceId)
.singleResult();
if (processInstance != null) {
int nrOfCompletedInstances = runtimeService.getVariable(processInstance.getId(), "nrOfCompletedInstances");
// 处理 nrOfCompletedInstances 的值
} else {
// 流程实例不存在的处理逻辑
}
```
其中,processInstanceId 是要查询的流程实例 ID,nrOfCompletedInstances 是要查询的参数名称。如果流程实例不存在,则会返回 null。
flowable 根据流程实例id查找流程定义id
可以使用 Flowable 的 `RepositoryService` 接口中的 `getProcessDefinitionIdByProcesInstanceId(String processInstanceId)` 方法来根据流程实例 ID 查找流程定义 ID。示例代码如下:
```
RepositoryService repositoryService = processEngine.getRepositoryService();
String processInstanceId = "12345";
String processDefinitionId = repositoryService.getProcessDefinitionIdByProcesInstanceId(processInstanceId);
```
需要注意的是,需要先创建 `ProcessEngine` 对象并获取 `RepositoryService` 对象,才能调用该方法。同时,需要替换 `processInstanceId` 的值为实际的流程实例 ID。