试图了解如何在我的应用程序中使用BPMN / CMMN模型。
有几个带有表单的CMMN用户任务作为我的应用程序BPMN流程的一部分。 我使用Embedded User Task Forms
我的表单提交的数据存储在任务变量中,并使用所有变量映射传递给父进程。
要继续进程,用户需要[声明任务],填写表单然后完成(通过REST调用)。 完成表单的用户任务后,将从/ task REST端点(以及管理UI)中的可用任务列表中消失。
但是,如果我想在完成任务之后向用户显示他们在完成任务之前提交给他们的任务的变量,该怎么办?
首先,我想使用Get Tasks (Historic) (POST)。 从某种意义上说,我可以看到用户之前完成的任务的元数据。 但是,如何才能看到变量以及实际完成任务时使用的HTML表单?也就是说,数据可以通过
获得/task/{id}/variables
/task/{id}/form
在任务完成之前?
/ history / task的响应既不包含变量也不包含表单键。
尝试按其ID访问已完成的任务,例如{{camunda}}/task/46386/form
或{{camunda}}/task/46386/variables
结果
{
"type": "RestException",
"message": "Cannot get form for task 46386"
}
or
{
"type": "NullValueException",
"message": "task 46386 doesn't exist: task is null"
}
分别
我认为我错过了一些基本的东西。 这可能是BPMN引擎的原理。任务完成后,它们被认为是永远消失的,以后无法再访问其数据(基本审计日志详细信息除外)?
另一个侧面问题是授权中设置的任务访问权限是否适用于/ history / task端点返回的结果?
更新
找到了访问历史变量的方法:Get Variable Instances但不是历史任务表单键。