context.InitiatingUserId 和 context.UserId 的区别

在插件和工作流当中会使用到context.InitiatingUserId 和 context.UserId ,经常会搞不懂他们之间的区别,为了记录一下自己的理解,特写此笔记。

 context.UserId :

插件和工作流代码都有个执行者身份的设置,插件对应的是CallingUser,而工作流则是工作流的负责人。

也就是说插件代码执行者是指定的CallingUser,工作流代码执行者是指定的工作流的负责人。

因此,插件上下文的context.UserId 是CallingUser,而工作流上下文的context.UserId是工作流的负责人。

 context.InitiatingUserId: 

InitiatingUserId是指最初触发(或叫启动)插件或工作流的用户ID,比如说终端用户A保存了一个SR会触发插件,这时的InitiatingUserId 就是用户A的ID,如果插件不指定callingUser,则默认情况下,context.InitiatingUserID=context.UserId。

对于工作流的负责人只能指定固定的用户,那么context.InitiatingUserID大部分情况下不等同于context.UserId。

posted on 2019-07-02 10:28  Tencent/Tim  阅读(330)  评论(0编辑  收藏  举报

导航