【问题标题】:Dynamics CRM 2013 - Workflow terminates with error 'systemuser wWith Id = xxx Does Not Exist'Dynamics CRM 2013 - 工作流因错误“systemuser wWith Id = xxx 不存在”而终止
【发布时间】:2017-08-08 08:25:17
【问题描述】:

我遇到了一个奇怪的问题。我有一个在创建实体时触发的工作流。它有以下步骤。

第 1 步:更新查找字段以链接到自动编号实体中的记录。

第 2 步:将记录编号字段设置为 Autonumber 实体中 Counter 字段的值。

第 3 步:使用同一实体中的 Increment By 字段的值递增 Autonumber 实体中的 counter 字段。

我使用此类工作流程作为获取自动编号的一种方式。在我决定将我的非托管解决方案导入另一个组织之前,这一直很好。在这个新组织中,此工作流在第 1 步引发以下错误。

同步工作流程“SP 电气自动编号”因错误“系统用户 ID = 1901130da-..... 不存在”而终止

这很奇怪,因为我正在创建实体,因此工作流设置为以The user who made changes to the record 运行,并且我拥有系统管理员配置文件。此外,我的 GUID 与上述 guid 不同,并且我的 guid 存在于数据库中。所以我很难理解它从哪里得到这个指南。 我在第一步中使用 (Select * from Filteredcal_autonumber) 检查了自动编号记录,但也无法在错误消息中的任何地方找到 guid!

那么它从哪里得到这个 guid 以及为什么只是这个工作流抛出这个错误。其他实体对其自动编号使用类似的工作流程,并且它们似乎工作正常。有任何想法吗?或看的地方将不胜感激。我自己对此进行了很多调查,并且只是在万不得已的情况下才在这里发布,因为我真的没有想法。

我什至删除了整个工作流程并重新创建它以查看是否可以解决问题。但它没有,我仍然收到此错误。

我已确定该 guid 属于我之前从中导入解决方案的组织的安装程序帐户。不知道为什么流程在新组织中寻找这个指南。有人吗?

【问题讨论】:

    标签: dynamics-crm dynamics-crm-2013


    【解决方案1】:

    好的,很高兴我找到了这个。这是另一个 CRM 陷阱!!!

    问题根本不在于工作流程。尽管停用了工作流程,但我仍然收到错误消息。在与工作同事讨论时,我们得出结论,插入旧组织的 GUID 的一种可能性是 Visual Studio。旧组织使用自定义插件,它们保存在 Visual Studio 中。当我将解决方案导入新组织时,我继续使用 Visual Studio 对这些插件进行更改。我继续将它们部署到新组织中。这使得 Visual Studio 将旧 guid 转移到新组织。

    我应该做的是,在 VS 中,当您连接到一个新组织时,您需要打开您将在 Deploy project 中找到的 RegisterFile.crmregister 文件并将任何 Id='[guid here]' 设置为 Id='000000-0000-0000-0000-000000000000' 以便当您从新组织部署新的新 GUID 时,系统会创建并存储这些 GUID。

    为了解决我的问题,我取消了插件的注册,然后像上面一样重置文件中的 ID,然后重新部署插件!瞧!现在一切正常!

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2015-06-16
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多