使用数据流将 Excel 数据源与 Dataverse 同步

将数据集成到 Dataverse 时发生的常见方案之一是将其与源保持同步。 使用标准数据流,可以将数据加载到 Dataverse 中。 本文介绍如何使数据与源系统保持同步。

键列的重要性

如果使用关系数据基础系统作为源,通常表中有键列,并且数据的格式正确,可加载到 Dataverse 中。 但是,Excel 文件中的数据并不总是那么干净。 您通常会有一个 Excel 文件,其中包含数据工作表,但没有任何关键列。 在 标准数据流的字段映射注意事项中,可以看到,如果源中有键列,可以轻松将其用作数据流字段映射中的备用键。

备用密钥配置。

具有键列对于 Dataverse 中的表很重要。 键列是行标识符;此列在每个行中包含唯一值。 使用键列有助于避免重复行,它还有助于将数据与源系统同步。 如果从源系统中删除一行,拥有一个键列有助于查找并将其从 Dataverse 中删除。

创建键列

如果数据源中没有键列(Excel、文本文件或任何其他源),则可以使用以下方法生成一个:

  1. 清理数据。

    创建键列的第一步是删除所有不必要的行、清理数据、删除空行以及删除任何可能的重复项。

    清理数据。

  2. 添加索引列。

    清理数据后,下一步是向其分配键列。 为此,可以在“添加列”选项卡中使用添加索引列功能。

    添加索引列。

添加索引列时,可以使用某些选项来自定义索引列,例如,对起始编号进行自定义或每次跳转的值数。 默认起始值为零,每次递增一个值。

将键列用作备用键

有了键列后,可以将数据流的字段映射分配给备用键。

设置备用键字段。

设置很简单,只需设置备用键即可。 但是,如果你有多个文件或表,则还有一个步骤需要考虑。

如果有多个文件

如果只有一个 Excel 文件(或工作表或表格),则上一过程中的步骤足以设置备用键。 但是,如果你有多个具有相同结构(但具有不同数据)的文件(或工作表或表),则可以将它们追加到一起。

如果要从多个 Excel 文件获取数据,Power Query 的 “合并文件 ”选项将自动追加所有数据,并且输出将如下图所示。

显示追加在一起的多个文件的图像。

如上图所示,除了追加结果外,Power Query 还会引入包含文件名的 Source.Name 列。 每个文件中的索引值可能是唯一的,但它在多个文件中并不唯一。 但是,索引列和 Source.Name 列的组合是唯一的组合。 为此方案选择复合备用键。

组合键。

删除查询输出中不再存在的行

最后一步是选择 已不在查询结果中的删除行。 此选项将 Dataverse 表中的数据与基于备用键(可能是复合键)的源中的数据进行比较,并删除不再存在的行。 因此,Dataverse 中的数据将始终与数据源同步。

删除行不再存在。