【问题标题】:Dynamics CRM 2011 - Transfer Security Roles when changing User Business UnitDynamics CRM 2011 - 更改用户业务部门时转移安全角色
【发布时间】:2015-08-19 18:48:24
【问题描述】:

我正在尝试消除在 CRM 2011 中更改用户的业务部门时安全角色被删除的问题。我采取了几种不同程度的成功方法,但没有一种方法能提供无缝的解决方案。到目前为止,插件的组合似乎是最好的方法。

挑战是这样的: 安全角色在预验证阶段之后但在预操作阶段之前被删除。如果我执行更新而不是更改业务部门,则当我在预验证阶段注册我的插件时,我能够在原始业务部门中捕获用户的安全角色,但预验证插件在运行时不会被触发更改业务单位更新(发生的第一个阶段是运营前)。我需要在更新用户的业务部门时执行预验证插件。获得安全角色的名称后,我可以将其存储在 PluginExecutionContext 共享变量中,然后在我的后期事件插件中,我可以使用与我的新业务部门关联的正确名称查询新的安全角色(那部分代码正在工作)。

有没有人知道如何:

a) 将用户的安全角色从原始 BU 转移到新的 BU(使用或不使用插件)

b) 触发在预验证阶段为更改用户的业务部门操作注册的插件

【问题讨论】:

    标签: c# dynamics-crm-2011 dynamics-crm


    【解决方案1】:

    由于我无法在这个问题上得到答案,我将发布我的解决方案(虽然我不喜欢,但它确实比必须返回并重新进行的通常过程更有效地完成工作- 手动添加角色)。

    这是一个 2 步流程,而不是我一直在寻找的更优雅的 1 步流程。 我在用户记录上添加了 2 个新字段,一个位字段和一个字符串字段。

    第 1 步)我设置了一个按需工作流,它只将位字段设置为是(不在任何表单上)。插件在该字段更改时触发,查询 securityRoles 表并获取与该用户关联的所有记录,将角色名称复制到管道分隔的字符串中,并将该字符串保存到新的字符串字段。
    步骤2)当用户更换BU时,该字符串字段作为新角色列表结合新BU查询。然后,只需循环遍历所有新角色并将其与用户相关联即可。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2013-10-18
      • 2014-09-06
      • 1970-01-01
      • 1970-01-01
      • 2011-12-30
      • 1970-01-01
      • 2014-01-11
      • 2021-05-11
      相关资源
      最近更新 更多