【问题标题】:Scribe Insight: Migrate Principal Object Access table data from CRM 4.0 to CRM 2016Scribe Insight:将 Principal Object Access 表数据从 CRM 4.0 迁移到 CRM 2016
【发布时间】:2016-11-11 06:16:18
【问题描述】:

我正在使用 scribe 将主体对象访问数据从 CRM 4.0 迁移到 CRM 2016 DB。 源适配器是一个 SQL 数据适配器,它从 4.0 中的 POA 表中读取数据。 目标适配器是 CRM 适配器,我有一个插入步骤将数据插入 CRM 2016。 在目标适配器中,Scribe 不允许我将数据链接添加到源中的 PrincipalId 和 ObjectId 字段。 据我所知,创建主体访问对象需要这两个字段。但是,由于我无法创建数据链接,我不知道如何将这些数据复制到 CRM 2016。 有没有人尝试过使用 scribe 迁移 Principal Object Access 表并且有什么建议让我尝试一下? 任何帮助将不胜感激。

【问题讨论】:

    标签: dynamics-crm data-migration dynamics-crm-4 dynamics-crm-2016 scribe-workbench


    【解决方案1】:

    我从您的屏幕截图中注意到的几件事可能会对您有所帮助:

    1. 您试图在插入时设置 principalobjectaccessid。我认为这是一个禁忌,因为您正在创建 crm 记录并希望在那时分配一个新的 guid。
    2. 您正在查找类型代码,而不是查找 objectid 和主体 ID 的外键。您需要参考这些内容(可能通过名称或外部参照表,因为 guid 在导入后会有所不同)才能实现共享。
    3. 为了查找这些对象和主体,您需要在之前的步骤中将它们输入到 CRM2016。

    我要补充的一个警告是,基于我对您的有限了解,您试图将涉及共享的 4.0 思维过程转移到 CRM 2016,这很好可能是个坏主意。虽然仍然支持共享,并且肯定是应用程序的一部分,但广泛共享会带来性能问题,老实说,与使用团队合作是一件更复杂的事情。我相信你现在已经注意到了。

    【讨论】:

    • 感谢您的回复。 1. 在插入时,我们试图映射 id 以使 id 与 CRM 4.0 中的相同。我已经为帐户、联系人和其他自定义实体完成了此操作,并且它正确复制了 ID。我将尝试删除到 id 的映射并插入新的 id,看看是否有帮助。 3. 我已经从 CRM 4.0 迁移了对象和主体,它们具有与 4.0 中相同的 guid。
    • 关于第2点。我不明白。我可以设置查找,但这并不能真正解决问题。它仍然不允许我设置数据链接以将 principalId 和 ObjectId 复制到对象。你能详细说明一下吗?让我试试上面提到的建议,我会告诉你进展如何。
    • 好的,我会等着听到这方面的回复。您是否在 Scribe 的知识库中搜索过您收到的错误消息? openmind.scribesoft.com
    • 我最终编写了一个控制台应用程序来从 4.0 POA 表中获取数据,然后在新的 CRM 环境中调用 SDK 的 Grant Access 方法。
    【解决方案2】:

    POA 表是 CRM 内部的,不应直接写入,即使通过 API 也是如此。

    它存储了记录(由 objectid 确定)如何共享给用户/团队(由 principalid 确定)的详细信息。

    听起来您想将您的共享从 CRM 4.0 迁移到 2016。Scribe 有一种机制来执行此操作,即使用虚拟字段。查看“Adapter for Microsoft Dynamics CRM”的帮助并搜索“Granting Access”。这解释了如何使用虚拟字段。

    【讨论】:

    • 我尝试从源设置虚拟字段,但没有奏效。它似乎只适用于创建。如果对象在 POA 表中有多行,则更新步骤不会将值写入新的 CRM 环境。
    猜你喜欢
    • 2017-03-14
    • 1970-01-01
    • 2012-05-21
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-09-08
    相关资源
    最近更新 更多