Microsoft Azure 数据工厂模板帮助您将采用双重写入的以下现有数据升级到当事方和全球通讯薄模型:客户、联系人和供应商表中的数据,以及邮政和电子地址。
提供了以下三个数据工厂模板。 它们有助于协调财务和运营应用和 Customer Engagement 应用中的数据。
- 当事方模板(将数据升级到双重写入的当事方 GAB 架构/arm_template.json)- 此模板有助于升级与客户、联系人和供应商数据关联的当事方和联系人数据。
- 当事方邮政地址模板(将数据升级到双重写入的当事方 GAB 架构/升级到当事方邮政地址 - GAB/arm_template.json)- 此模板有助于升级与客户、联系人和供应商数据关联的邮政地址。
- 当事方电子地址模板(将数据升级到双重写入的当事方 GAB 架构/升级到当事方电子地址 - GAB/arm_template.json)- 此模板有助于升级与客户、联系人和供应商数据关联的电子地址。
在流程结束时,将生成以下逗号分隔值 (.csv) 文件。
| 文件名 | 目的 | 
|---|---|
| FONewParty.csv | 此文件有助于在财务和运营应用内创建新当事方记录。 | 
| ImportFONewPostalAddressLocation.csv | 此文件有助于在财务和运营应用中创建新的邮政地址位置记录。 | 
| ImportFONewPartyPostalAddress.csv | 此文件有助于在财务和运营应用中创建新的当事方邮政地址记录。 | 
| ImportFONewPostalAddress.csv | 此文件有助于在财务和运营应用中创建新的邮政地址记录。 | 
| ImportFONewElectronicAddress.csv | 此文件有助于在财务和运营应用中创建新的电子地址记录。 | 
本文说明如何使用数据工厂模板和升级数据。 如果没有任何自定义项,可以按原样使用模板。 但是,如果您有客户、联系人和供应商数据的自定义项,则必须按照本文中的描述修改模板。
重要
有关于运行当事方邮政地址和当事方电子地址模板的特殊说明。 您必须先运行当事方模板,然后运行当事方邮政地址模板,再运行当事方电子地址模板。 每个模板都旨在在单独的数据工厂中导入。
先决条件
在升级到当事方和全球通讯簿模型之前,必须满足以下先决条件:
准备升级
升级需要满足以下先决条件:
- 完全同步:对于帐户(客户)、联系人和供应商表,Finance and Operations 环境和 Customer Engagement 环境都处于完全同步状态。
- 集成密钥:Customer Engagement 应用中的帐户(客户)、联系人和供应商表使用现成的集成密钥。 如果已自定义集成密钥,必须自定义模板。
- 当事方编号:将升级的所有帐户(客户)、联系人和供应商记录都具有当事方编号。 将忽略没有当事方编号的记录。 如果要升级这些记录,请在开始升级流程之前,向其添加当事方编号。
- 系统中断:在升级流程期间,您必须使 Finance and Operations 环境和 Customer Engagement 环境脱机。
- 快照:拍摄财务和运营应用和 Customer Engagement 应用的快照。 如果必须,则可以使用快照还原以前的状态。
部署
- 登录 Azure 门户。 
- 创建资源组。 
- 在创建的资源组中创建存储帐户。 
- 在创建的资源组中创建数据工厂。 
- 打开数据工厂,然后选择创作和监视磁贴。 
- 在管理选项卡上,选择 ARM 模板。 
- 选择导入 ARM 模板以导入当事方模板。 
- 将模板导入到数据工厂中。 为项目详细信息和实例详细信息输入以下值。 - 字段 - 值 - 预订 - Azure 预订 - 资源组 - 提供在其下创建存储帐户的相同资源。 - 区域 - 区域 - 工厂名称 - 工厂名称 - FO Linked Service_service Principal Key - 应用程序的密钥 - Azure Blob Storage_connection String - Azure Blob 存储连接字符串 - Dynamics Crm Linked Service_password - 您指定为用户名的用户帐户的密码 - FO Linked Service_properties_type Properties_url - https://sampledynamics.sandbox-operationsdynamics.com/data- FO Linked Service_properties_type Properties_tenant - 关于您的应用程序所在租户的信息(域名或租户 ID) - FO Linked Service_properties_type Properties_aad Resource Id - https://sampledynamics.sandboxoperationsdynamics.com- FO Linked Service_properties_type Properties_service Principal Id - 应用程序的客户端 ID - Dynamics Crm Linked Service_properties_type Properties_username - 用于连接到 Dynamics 365 的用户名 - 有关详细信息,请参阅以下主题: 
- 部署后,验证数据工厂的数据集、数据流和链接服务。   
- 转到管理。 在连接下,选择链接服务。 然后选择 DynamicsCrmLinkedService。 在编辑链接服务 (Dynamics CRM) 对话框中,输入以下值。 - 字段 - 值 - Name - DynamicsCrmLinkedService - 说明 - 要与 CRM 实例连接以提取实体数据的链接服务 - 通过集成运行时连接 - AutoResolvelntegrationRuntime - 部署类型 - 联机 - 服务 URI - https://<organization-name>.crm[x].dynamics.com- 身份验证类型 - Office365 - 用户名 - 密码或 Azure 密钥保管库 - 密码 - 密码 
准备运行数据工厂模板
本节描述运行当事方邮政地址和当事方电子地址数据工厂模板之前所需进行的设置。
设置以运行当事方邮政地址模板
- 登录到 Customer Engagement 应用,然后转到设置>个性化设置。 然后,在常规选项卡上为系统管理员帐户配置时区设置。 时区必须采用协调世界时 (UTC) 格式,才能更新财务和运营应用中邮政地址的“生效日期”和“失效日期”。   
- 在“数据工厂中管理选项卡上的全局参数下面,创建以下全局参数。 - 编号 - Name - 类型 - 值 - 1 - PostalAddressIdPrefix - 字符串 - 此参数将序列号作为前缀追加到新创建的邮寄地址。 请务必提供与财务和运营应用和 Customer Engagement 应用中的邮政地址不冲突的字符串。 例如,使用 ADF-PAD-。   
- 当您完成时,选择全部发布。   
设置以运行当事方电子地址模板
- 在“数据工厂中管理选项卡上的全局参数下面,创建以下全局参数。 - 编号 - Name - 类型 - 值 - 1 - IsFOSource - 布尔型 - 此参数确定在发生冲突时将替换哪些主要系统地址。 如果值为 true,则财务和运营应用中的主要地址将替换 Customer Engagement 应用中的主要地址。 如果值为 false,则 Customer Engagement 应用中的主要地址将替换财务和运营应用中的主要地址。 - 2 - ElectronicAddressIdPrefix - 字符串 - 此参数将序列号作为前缀追加到新创建的电子地址。 请务必提供与财务和运营应用和 Customer Engagement 应用中的电子地址不冲突的字符串。 例如,使用 ADF-EAD-。   
- 当您完成时,选择全部发布。 
运行模板
- 停止以下使用财务和运营应用的当事方、客户、联系人和供应商双重写入映射。 - CDS 当事方 (msdyn_parties)
- 客户 V3 (accounts)
- 客户 V3(联系人)
- CDS 联系人 V2(联系人)
- CDS 联系人 V2(联系人)
- 供应商 V2 (msdyn_vendor)
- 联系人 V2 (msdyn_contactforparties)
- CDS 当事方邮寄地址位置 (msdyn_partypostaladdresses)
- CDS 邮寄地址历史记录 V2 (msdyn_postaladdresses)
- CDS 邮寄地址位置 (msdyn_postaladdresscollections)
- 当事方联系人 V3 (msdyn_partyelectronicaddresses)
 
- 确保从 Dataverse 的 msdy_dualwriteruntimeconfig 表中删除地图。 
- 从 AppSource 中安装双重写入当事方和全球通讯簿解决方案。 
- 在财务和运营应用中,如果以下表包含数据,则针对它们运行初始同步。 - 称呼
- 人员特点类型
- 结束语
- 联系人职务
- 决策角色
- 忠诚度级别
 
- 在 Customer Engagement 应用中,禁用以下插件步骤: - 帐户更新 - Microsoft.Dynamics.GABExtended.Plugins.UpdatePartyAttributesFromAccountEntity:帐户的更新
- Microsoft.Dynamics.FinanceExtended.Plugins.TriggerNotesForCustomerTypeCodes:帐户的更新
 
- 联系人更新 - Microsoft.Dynamics.GABExtended.Plugins.UpdatePartyAttributesFromContactEntity:联系人的更新
- Microsoft.Dynamics.FinanceExtended.Plugins.TriggerNotesForSellableContact:联系人的更新
 
- msdyn_party 更新 - Microsoft.Dynamics.GABExtended.Plugins.UpdatePartyAttributesFromPartyEntity:msdyn_party 的更新
 
- msdyn_vendor 更新 - Microsoft.Dynamics.GABExtended.Plugins.UpdatePartyAttributesFromVendorEntity:msdyn_vendor 的更新
 
- Customeraddress - 创建 - Microsoft.Dynamics.GABExtended.Plugins.CreatePartyAddress:创建 customeraddress
 
- 更新 - Microsoft.Dynamics.GABExtended.Plugins.CreatePartyAddress:更新 customeraddress
 
- 删除 - Microsoft.Dynamics.GABExtended.Plugins.DeleteCustomerAddress:删除 customeraddress
 
 
- msdyn_partypostaladdress - 创建 - Microsoft.Dynamics.GABExtended.Plugins.CreateCustomerAddress:创建 msdyn_partypostaladdress
- Microsoft.Dynamics.GABExtended.Plugins.PartyPostalAddress:创建 msdyn_partypostaladdress
 
- 更新 - Microsoft.Dynamics.GABExtended.Plugins.CreateCustomerAddress:更新 msdyn_partypostaladdress
- Microsoft.Dynamics.GABExtended.Plugins.PartyPostalAddress:更新 msdyn_partypostaladdress
 
 
- msdyn_postaladdress - 创建 - Microsoft.Dynamics.GABExtended.Plugins.PostalAddress:创建 msdyn_postaladdress
- Microsoft.Dynamics.GABExtended.Plugins.PostalAddressPostCreate:创建 msdyn_postaladdress
- Microsoft.Dynamics.GABExtended.Plugins.UpdateCustomerAddress:创建 msdyn_postaladdress
 
- 更新 - Microsoft.Dynamics.GABExtended.Plugins.PostalAddressUpdate:更新 msdyn_postaladdress
- Microsoft.Dynamics.GABExtended.Plugins.UpdateCustomerAddress:更新 msdyn_postaladdress
 
 
- msdyn_partyelectronicaddress - 创建 - Microsoft.Dynamics.GABExtended.Plugins.PartyElectronicAddressSync:创建 msdyn_partyelectronicaddress
 
- 更新 - Microsoft.Dynamics.GABExtended.Plugins.PartyElectronicAddressSync:更新 msdyn_partyelectronicaddress
 
- 删除 - Microsoft.Dynamics.GABExtended.Plugins.DeletePartyElectronicAddressSync:删除 msdyn_partyelectronicaddress
 
 
 
- 在 Customer Engagement 应用中,禁用以下工作流: - 在“客户”表中创建供应商
- 在“客户”表中创建供应商
- 在“联系人”表中创建个人类型的供应商
- 在“供应商”表中创建“个人”类型的供应商
- 在“客户”表中更新供应商
- 在“供应商”表中更新供应商
- 在“联系人”表中更新“个人”类型的供应商
- 在“供应商”表中更新“个人”类型的供应商
 
- 在数据工厂中,通过选择立即触发运行模板,如下图所示。 根据数据量,此流程可能需要几个小时才能完成。   - 注释 - 如果您有客户、联系人和供应商的自定义,则必须修改模板。 
- 将新当事方记录导入到财务和运营应用中。 - 从 Azure Blob 存储中下载 FONewParty.csv 文件。 路径为 partybootstrapping/output/FONewParty.csv。
- 将 FONewParty.csv 文件转换为 Excel 文件并将 Excel 文件导入到财务和运营应用中。 或者,如果 CSV 导入适合您,您可以直接导入 .csv 文件。 根据数据量,此步骤可能需要几个小时才能完成。 有关详细信息,请参阅数据导入和导出作业概述。
   
- 在数据工厂中,一个接一个地运行当事方电子地址和当事方邮政地址模板。 - 当事方邮政地址模板将更新 Customer Engagement 应用中的所有邮政地址记录,并将它们与相应的客户、联系人和供应商记录相关联。 它还生成三个 .csv 文件:ImportFONewPostalAddressLocation.csv、ImportFONewPartyPostalAddress.csv 和 ImportFONewPostalAddress.csv。
- 当事方电子地址模板将更新 Customer Engagement 应用中的所有电子地址,并将它们与相应的客户、联系人和供应商记录相关联。 它还生成一个 .csv 文件:ImportFONewElectronicAddress.csv。
   
- 要使用此数据更新财务和运营应用,您必须将 .csv 文件转换为 Excel 工作簿,并将其导入到财务和运营应用中。 或者,如果 CSV 导入适合您,您可以直接导入 .csv 文件。 根据数据量,此步骤可能需要几个小时才能完成。   
- 在 Customer Engagement 应用中,启用以下插件步骤: - 帐户更新 - Microsoft.Dynamics.GABExtended.Plugins.UpdatePartyAttributesFromAccountEntity:帐户的更新
- Microsoft.Dynamics.FinanceExtended.Plugins.TriggerNotesForCustomerTypeCodes:帐户的更新
 
- 联系人更新 - Microsoft.Dynamics.GABExtended.Plugins.UpdatePartyAttributesFromContactEntity:联系人的更新
- Microsoft.Dynamics.FinanceExtended.Plugins.TriggerNotesForSellableContact:联系人的更新
 
- msdyn_party 更新 - Microsoft.Dynamics.GABExtended.Plugins.UpdatePartyAttributesFromPartyEntity:msdyn_party 的更新
 
- msdyn_vendor 更新 - Microsoft.Dynamics.GABExtended.Plugins.UpdatePartyAttributesFromVendorEntity:msdyn_vendor 的更新
 
- msdyn_partypostaladdress - 创建 - Microsoft.Dynamics.GABExtended.Plugins.CreateCustomerAddress:创建 msdyn_partypostaladdress
- Microsoft.Dynamics.GABExtended.Plugins.PartyPostalAddress:创建 msdyn_partypostaladdress
 
- 更新 - Microsoft.Dynamics.GABExtended.Plugins.CreateCustomerAddress:更新 msdyn_partypostaladdress
- Microsoft.Dynamics.GABExtended.Plugins.PartyPostalAddress:更新 msdyn_partypostaladdress
 
 
- msdyn_postaladdress - 创建 - Microsoft.Dynamics.GABExtended.Plugins.PostalAddress:创建 msdyn_postaladdress
- Microsoft.Dynamics.GABExtended.Plugins.PostalAddressPostCreate:创建 msdyn_postaladdress
- Microsoft.Dynamics.GABExtended.Plugins.UpdateCustomerAddress:创建 msdyn_postaladdress
 
- 更新 - Microsoft.Dynamics.GABExtended.Plugins.PostalAddressUpdate:更新 msdyn_postaladdress
- Microsoft.Dynamics.GABExtended.Plugins.UpdateCustomerAddress:更新 msdyn_postaladdress
 
 
- msdyn_partyelectronicaddress - 创建 - Microsoft.Dynamics.GABExtended.Plugins.PartyElectronicAddressSync:创建 msdyn_partyelectronicaddress
 
- 更新 - Microsoft.Dynamics.GABExtended.Plugins.PartyElectronicAddressSync:更新 msdyn_partyelectronicaddress
 
- 删除 - Microsoft.Dynamics.GABExtended.Plugins.DeletePartyElectronicAddressSync:删除 msdyn_partyelectronicaddress
 
 
 
- 在 Customer Engagement 应用中,如果以前停用了以下工作流,请激活它们: - 在“客户”表中创建供应商
- 在“客户”表中创建供应商
- 在“联系人”表中创建个人类型的供应商
- 在“供应商”表中创建“个人”类型的供应商
- 在“客户”表中更新供应商
- 在“供应商”表中更新供应商
- 在“联系人”表中更新“个人”类型的供应商
- 在“供应商”表中更新“个人”类型的供应商
 
- 运行与当事方相关的地图,如当事方和全球通讯簿中所述。 
数据工厂模板的说明
此节将指导您完成每个数据工厂模板中的步骤。
当事方模板中的步骤
- 步骤 1 到 6 标识为双重写入启用的公司并为其生成筛选器子句。 
- 步骤 7-1 到 7-9 从财务和运营应用和 Customer Engagement 应用检索数据,并暂存该数据以进行升级。 
- 步骤 8 到 9 在财务和运营应用与 Customer Engagement 应用之间比较客户、联系人和供应商记录的当事方编号。 将跳过没有当事方编号的任何记录。 
- 步骤 10 会为必须在 Customer Engagement 应用和财务和运营应用中创建的当事方记录生成两个 .csv 文件。 - FOCDSParty.csv - 该文件包含两个系统的所有当事方记录,无论是否为双重写入启用了公司。
- FONewParty.csv - 此文件包含 Dataverse 了解的当事方记录的子集(例如,目标客户类型的客户)。
 
- 步骤 11 将在 Customer Engagement 应用中创建当事方。 
- 步骤 12 将从 Customer Engagement 应用中检索当事方的全局唯一标识符 (GUID),并暂存它们,以便它们在后续步骤中能够与客户、联系人和供应商记录关联。 
- 步骤 13 将客户、联系人和 供应商记录与当事方 GUID 关联。 
- 步骤 14-1 到 14-3 使用当事方 GUID 更新 Customer Engagement 中的客户、联系人和供应商记录。 
- 步骤 15-1 到 15-3 针对客户、联系人和供应商记录准备当事方的联系人记录。 
- 步骤 16-1 到 16-7 检索参考数据,如称呼和人员特点类型,并将其与当事方的联系人记录关联。 
- 步骤 17 针对客户、联系人和供应商记录合并当事方的联系人记录。 
- 步骤 18 将当事方的联系人记录导入到 Customer Engagement 应用中。 
当事方邮政地址模板中的步骤
- 步骤 1-1 到 1-10 从财务和运营应用和 Customer Engagement 应用检索数据,并暂存该数据以进行升级。 
- 步骤 2 通过加入邮政地址和当事方邮政地址,在财务和运营应用中使邮政地址数据非规范化。 
- 步骤 3 删除 Customer Engagement 应用中客户、联系人和供应商地址数据重复项,并合并客户、联系人和供应商地址数据。 
- 步骤 4 为财务和运营应用创建 .csv 文件,以创建基于客户、联系人和供应商地址的新地址数据。 
- 步骤 5-1 为 Customer Engagement 应用创建 .csv 文件,以根据财务和运营应用和 Customer Engagement 应用创建所有地址数据。 
- 步骤 5-2 将 .csv 文件转换为财务和运营导入格式以手动导入。 - ImportFONewPostalAddressLocation.csv
- ImportFONewPartyPostalAddress.csv
- ImportFONewPostalAddress.csv
 
- 步骤 6 将邮寄地址集合数据导入到 Customer Engagement 应用中。 
- 步骤 7 从 Customer Engagement 应用中检索邮寄地址集合数据。 
- 步骤 8 创建客户地址数据并关联邮政地址集合 ID。 
- 步骤 9-1 到 9-2 将当事方和邮政地址集合 ID 与邮政地址和当事方邮政地址关联。 
- 步骤 10-1 到 10-3 将客户地址、邮政地址和当事方邮政地址导入到 Customer Engagement 应用中。 
当事方电子地址模板中的步骤
- 步骤 1-1 到 1-5 从财务和运营应用和 Customer Engagement 应用检索数据,并暂存该数据以进行升级。 
- 步骤 2 在 Customer Engagement 应用中合并客户、联系人和供应商实体的电子地址。 
- 步骤 3 合并 Customer Engagement 应用和财务和运营应用中的主要电子地址数据。 
- 步骤 4 创建 .csv 文件。 - 根据客户、联系人和供应商地址针对财务和运营应用创建新电子地址数据。
- 根据财务和运营应用中的电子地址、客户、联系人和供应商地址,针对 Customer Engagement 应用创建新电子地址数据。
 
- 步骤 5-1 将电子地址导入到 Customer Engagement 应用中。 
- 步骤 5-2 创建 .csv 文件以在 Customer Engagement 应用更新客户和联系人的主要地址。 
- 步骤 6-1 到 6-2 将客户和联系人主要地址导入到 Customer Engagement 应用中。 
疑难解答
- 如果流程失败,请重新运行数据工厂。 从失败的活动开始。 
- 数据工厂生成的一些文件可用于数据验证。 
- 数据工厂基于 .csv 文件运行。 因此,如果任何字段值中包含逗号,则可能会干扰结果。 必须从字段值中删除所有逗号。 
- 监视选项卡提供有关所有步骤和已处理的数据的信息。 选择特定步骤以对其进行调试。   
了解有关模板的详细信息
有关模板的详细信息,请参阅 Azure 数据工厂模板自述文件注释。