如何在任务脚本中获取用户名?



我在工作流中有一个任务,该任务调用后端服务,该服务与从任务发送的其他数据一起等待执行该任务的用户的名称。

如何在用Groovy编写的任务脚本中获取用户或用户名?

你是指用户任务之后的脚本任务吗?假设您想要访问从脚本中完成前一个用户任务的用户的名称,您可以在完成时将用户名存储在流程数据中,如下所示:https://github.com/rob2universe/bpmrun-add-to-dockerimg/blob/e2dd62122b7d006a8a719be96b0a3d043efc9851/configuration/resources/groovyprocess.bpmn L23

然后你可以像这样访问groovy脚本任务中的进程数据:https://github.com/rob2universe/bpmrun-add-to-dockerimg/blob/e2dd62122b7d006a8a719be96b0a3d043efc9851/configuration/resources/groovyprocess.bpmn就是

您可以像@rob2universe中提到的那样获得任务分配,或者使用execution对象,它总是可以从脚本访问(参见Camunda文档),如下所示:

user = execution.getProcessEngineServices().getIdentityService().getCurrentAuthentication().getUserId()

看到IdentityService。

用户名可以保存到一个过程变量:

execution.setVariable('username', user)

和访问:

username = execution.getVariable('username')

最新更新