将这些值存储到执行变量中,您应该可以在所有任务中访问它们。
您可以使用任务侦听器来读取表单值并将它们存储到如下所示的执行变量中。
execution.setVariable('exam_result',task.getVariable('exam_result'));
execution.setVariable('exam_grade',task.getVariable('exam_grade'));
execution.setVariable('remarks',task.getVariable('remarks'));
如果你想访问他们在另一个任务听众,
var examResult = execution.getVariable('exam_result');
var examgrade = execution.getVariable('exam_grade');
var remarks= execution.getVariable('remarks');
这是代表们的一面,你可以像下面访问它们。
int examResult = (int) executionVariables.get("exam_result");
int examGrade = (int) executionVariables.get("exam_grade");
string remarks = (string) executionVariables.get("remarks");
希望这可以帮助你。
请让我知道,如果它不清楚给你。
嗨@Muralidharan我试着在用户任务符号(事件'完成')下使用任务监听器,并添加了一个表达式,但它没有奏效。 我把这个片段放在表达式文本框中: execution.setVariable('exam_result',task.getVariable('examresult')); 它仍然没有将examresult的文本值传递给exam_result脚本变量。 –
你能分享bpmn文件吗? –
嗨@Muralidharan,我设法改变方法,因为我发现即时通讯使用文本控件而不是数字控件,为什么逻辑表达式小于等于等等没有显示在下拉列表中。感谢您的努力和帮助 –