运行数据导入

 

发布日期: 2017年1月

适用于: Dynamics 365 (online),Dynamics 365 (on-premises),Dynamics CRM 2016,Dynamics CRM Online

数据导入直接在 Microsoft Dynamics 365 服务器上运行。 若要运行数据导入,请设置要在后台运行的异步作业,这些作业将按此处列出的顺序执行以下操作:

  • 分析导入文件中包含的源数据。

  • 使用数据映射转换已分析数据。

  • 将转换的数据上载到 Microsoft Dynamics 365。

拥有适当权限的所有 Microsoft Dynamics 365 用户都可以运行数据导入。

本主题内容

分析源数据

转换已分析数据

将转化的资料上传之目标服务器

记录失败

导入审计数据

分析源数据

分析源数据的过程包括分析与特定导入(数据导入)关联的所有导入文件。

已分析数据存储在为每个导入的文件创建的临时解析表中。 解析表的名称存储在 ImportFile.ParsedTableName 属性中。 源文件列标题在 ImportFile.HeaderRow 属性中指定。 如果源文件的第一行中不包含列标题,则此属性指定系统生成的默认列标题。

使用 ParseImportRequest 消息可将已分析数据保存在解析表中。 使用 GetDistinctValuesImportFileRequest 消息和 RetrieveParsedDataImportFileRequest 消息可从解析表中检索数据。

下表列出分析导入文件并从解析表检索已分析数据时可使用的消息。

消息

说明

ParseImportRequest

提交一个异步作业,该作业分析与指定导入(数据导入)相关联的所有导入文件。 在此请求的 ImportId 属性中传递关联导入(数据导入)的 ID。 在后台运行并执行数据分析的异步作业的 ID 返回到消息响应的 AsyncOperationId 属性中。

GetDistinctValuesImportFileRequest

返回源文件中包含列表值的列中的明确值。 在此请求的 ImportFileId 属性中传递关联导入文件的 ID。 明确值在消息响应的 Values 属性中以字符串数组的形式返回。 仅当使用 ParseImportRequest 消息创建解析表之后,才使用此消息。

重要

请勿在使用 ImportRecordsImportRequest 消息之后使用此消息。 在 ImportRecordsImportRequest 消息提交的导入作业完成运行之后,将无法访问解析表。

RetrieveParsedDataImportFileRequest

从解析表中检索数据。 在此请求的 ImportFileId 属性中传递关联导入文件的 ID。 已分析数据在消息响应的 Values 属性中以二维字符串数组的形式返回。 返回数据时的列顺序与源文件中的列顺序相同。 仅当使用 ParseImportRequest 消息创建解析表之后,才使用此消息。

重要

请勿在使用 ImportRecordsImportRequest 消息之后使用此消息。 在 ImportRecordsMessage 消息提交的导入作业完成运行之后,将无法访问解析表。

转换已分析数据

转换过程中,将与特定导入(数据导入)相关联的所有可用数据映射和转换应用于数据,从而更改已分析数据。

使用 TransformImportRequest 消息提交异步作业以转换已分析数据。 在请求的 Import.ImportId 属性中传递关联导入(数据导入)的唯一标识符。 在后台运行并执行转换的异步作业的唯一标识符返回到消息响应的 AsyncOperationId 属性中。

将转化的资料上传之目标服务器

在成功完成转换之后,可以将数据上载到 Microsoft Dynamics 365 服务器。

使用 ImportRecordsImportRequest 消息提交异步作业以将转换的数据上载到 Microsoft Dynamics 365。 必须在请求的 ImportId 属性中指定关联导入(数据导入)的唯一标识符。 在后台运行并将数据上载到 Microsoft Dynamics 365 的异步作业的唯一标识符返回到消息响应的 AsyncOperationId 属性中。 会导入与指定导入(数据导入)关联的所有导入文件。

每个导入作业都具有一个唯一序列号,导入作业将序列号存储在它创建的记录的 ImportSequenceNumber 属性中。Organization.CurrentImportSequenceNumber 属性包含在系统中运行的上一导入作业的唯一序列号。 可以使用这些唯一序列号跟踪属于某个导入作业的记录。

记录失败

在分析、转换或上载数据期间,可能会出现无法导入记录的情况。 导入日志 (ImportLog) 实体可捕获有关无法导入的记录的失败原因和其他详细信息。

若要确定无法导入的记录数,请检索记录的 ImportFile.FailureCount 属性。 若要确认导入过程中多少记录出现部分失败,请检索 ImportData.HasError 属性。 如果 HasError 属性为 true,则表示出现部分失败,如果为 false,则表示已成功导入记录。

导入审计数据

Microsoft Dynamics 365 实体具有四个默认属性,可用于跟踪创建和上次修改记录的日期和时间,以及创建和修改记录的人员。

createdon 属性指定创建记录的日期和时间。 若要将数据导入 createdon 属性,请将包含此数据的源列映射到 overriddencreatedon 属性。 在导入过程中,会使用映射到 createdon 属性的值更新记录的 overriddencreatedon 属性,并且 overriddencreatedon 属性设置为导入数据的日期和时间。 如果无源值映射到 overriddencreatedon 属性,则 createdon 属性设置为导入数据的日期和时间,并且 overriddencreatedon 属性不设置为任何值。

备注

若要在导入期间覆盖 createdon 属性中的值,您需要拥有 prvOverrideCreatedOnCreatedBy 权限。 请注意,该权限名称意味着您还可以在导入期间覆盖 createdby 属性。 但是,当前不支持此功能。

不能将数据导入 modifiedoncreatedbymodifiedby 属性。 如果必须存储与数据创建者、数据修改者和数据修改时间相关的数据,可以在 Microsoft Dynamics 365 中创建自定义属性,然后将源列映射到新的自定义属性。

另请参阅

导入数据
配置数据导入
博客文章:如何以编程方式导入附件
数据导入实体

Microsoft Dynamics 365

© 2017 Microsoft。 保留所有权利。 版权