我试图建立一个审计跟踪和打印信息的用户路径到任务完成+一些数据是用变量编写的。
camunda中有一些历史端点可以提供任务通过的每个“节点”。
但是,在流程实例变量中有一些我需要的额外信息,但是当我试图从已经完成的流程实例中获取变量时,API会回答为“没有id:xxxx找到的流程实例”。
是否有办法读取已完成任务的变量中的信息?
提前谢谢你
发布于 2022-02-09 10:20:55
流程实例完成后,其数据将从运行时表中删除,运行时表将由用于运行实例的端点访问。所有有关已完成流程实例的信息都需要使用历史端点获取(底层API访问历史表)。https://docs.camunda.org/manual/7.16/reference/rest/history/
使用查询参数processInstanceId的端点将返回已完成实例的数据:https://docs.camunda.org/manual/7.16/reference/rest/history/variable-instance/get-variable-instance-query/
示例请求:
curl -X GET "http://localhost:8080/engine-rest/history/variable-instance?processInstanceId=5487fe88-72d2-11ec-b607-0242ac110002" -H "accept: application/json"答复示例:
[
{
"type": "String",
"value": "GPFE-23232323",
"valueInfo": {},
"id": "54890ff9-72d2-11ec-b607-0242ac110002",
"name": "invoiceNumber",
"processDefinitionKey": "invoice",
"processDefinitionId": "invoice:1:53c23d7a-72d2-11ec-b607-0242ac110002",
"processInstanceId": "5487fe88-72d2-11ec-b607-0242ac110002",
"executionId": "5487fe88-72d2-11ec-b607-0242ac110002",
"activityInstanceId": "5487fe88-72d2-11ec-b607-0242ac110002",
"caseDefinitionKey": null,
"caseDefinitionId": null,
"caseInstanceId": null,
"caseExecutionId": null,
"taskId": null,
"errorMessage": null,
"tenantId": null,
"state": "CREATED",
"createTime": "2022-01-11T11:33:42.862+0000",
"removalTime": null,
"rootProcessInstanceId": "5487fe88-72d2-11ec-b607-0242ac110002"
},
{
"type": "String",
"value": "Travel Expenses",
"valueInfo": {},
"id": "5489ac44-72d2-11ec-b607-0242ac110002",
"name": "invoiceCategory",
"processDefinitionKey": "invoice",
"processDefinitionId": "invoice:1:53c23d7a-72d2-11ec-b607-0242ac110002",
"processInstanceId": "5487fe88-72d2-11ec-b607-0242ac110002",
"executionId": "5487fe88-72d2-11ec-b607-0242ac110002",
"activityInstanceId": "5487fe88-72d2-11ec-b607-0242ac110002",
"caseDefinitionKey": null,
"caseDefinitionId": null,
"caseInstanceId": null,
"caseExecutionId": null,
"taskId": null,
"errorMessage": null,
"tenantId": null,
"state": "CREATED",
"createTime": "2022-01-11T11:33:42.865+0000",
"removalTime": null,
"rootProcessInstanceId": "5487fe88-72d2-11ec-b607-0242ac110002"
},
{
"type": "Object",
"value": [
"accounting",
"sales"
],
"valueInfo": {
"objectTypeName": "java.util.ArrayList",
"serializationDataFormat": "application/x-java-serialized-object"
},
"id": "54a6aa32-72d2-11ec-b607-0242ac110002",
"name": "approverGroups",
"processDefinitionKey": "invoice",
"processDefinitionId": "invoice:1:53c23d7a-72d2-11ec-b607-0242ac110002",
"processInstanceId": "5487fe88-72d2-11ec-b607-0242ac110002",
"executionId": "5487fe88-72d2-11ec-b607-0242ac110002",
"activityInstanceId": "5487fe88-72d2-11ec-b607-0242ac110002",
"caseDefinitionKey": null,
"caseDefinitionId": null,
"caseInstanceId": null,
"caseExecutionId": null,
"taskId": null,
"errorMessage": null,
"tenantId": null,
"state": "CREATED",
"createTime": "2022-01-11T11:33:43.055+0000",
"removalTime": null,
"rootProcessInstanceId": "5487fe88-72d2-11ec-b607-0242ac110002"
}
]https://stackoverflow.com/questions/71039335
复制相似问题