Skip to main content

让数据双向流动

学习目标

完成本单元后,您将能够:

  • 设置 Salesforce 更改数据捕获 (CDC) 和事件,以自动将 Salesforce 数据发送到 AppFlow。
  • 设置一个流,将数据从 Amazon Simple Storage Service (Amazon S3) 发送到 Salesforce。

要让 Salesforce 自动将数据发送到 AWS,您需要在流创建过程中启用 Salesforce 中的更改数据捕获 (CDC) 和 AppFlow 中的平台事件。只需点击几下即可完成。首先,前往您的 Salesforce 组织。

在 Salesforce 中启用更改数据捕获

  1. 在 Salesforce 中,单击 设置 并选择设置
  2. 在快速查找中输入 change data capture(更改数据捕获),单击更改数据捕获
  3. 选择要为其生成更改事件通知的一个或多个对象,然后将它们移动到“选定实体”列中。
  4. 然后单击保存

更改数据捕获页面,“选定实体”列下包含客户、用户、个案、联系人和潜在客户

前半部分已经完成。现在转到 Amazon AppFlow。

在 AppFlow 中设置事件触发器

  1. 从 AWS 管理控制台中,在“查找服务”字段中输入 AppFlow
  2. 单击 Amazon AppFlow
  3. 之后,单击 Create flow(创建流)

按照第二单元中描述的步骤创建一个新流。回想一下,当您选择源时,您必须选择 Salesforce 事件,然后从下拉列表中选中 Salesforce Event Name(Salesforce 事件名称)。当您进入流触发器页面时,有多个选项(按需运行、按计划运行或根据事件运行流)。当您使用 CDC 在发生更改时将对象数据发送到 AWS 时,请选择 Run flow on event(根据事件运行流)

启用 CDC 和事件触发器后,Salesforce 会在您执行以下操作时向 AWS 发送新数据:

  • 创建一个新记录。
  • 更改字段数据。

您可以在 Amazon AppFlow 中的 Run history(运行历史)选项卡下监控这些事件。

请注意,由于您还在流创建过程中映射了字段,因此 Salesforce 仅在触发事件时发送这些特定字段的数据。

将数据从 AWS 传输到 Salesforce

现在,让我们看看数据以另一种方向流动—从 AWS 到 Salesforce。您可以选择各种来源,包括不同的 Salesforce 实例,或者选择 Amazon S3。您需要做几件事来进行准备。

  1. 您要做的第一件事就是创建一个 S3 存储桶
  2. 然后在这个存储桶中创建一个文件夹
  3. 接下来,创建一个映射到您要更新的 Salesforce 对象的 CSV 文件,并将其上传到 S3

从 Amazon S3 创建 CSV

创建 CSV 时要遵循的最佳实践:

  • CSV 文件必须包含一个标题行,其中的字段名称映射到 Salesforce 中的字段。例如,假设您要在 Salesforce 中插入新的联系人记录或更新现有的联系人记录。创建一个 CSV 文件,使标题包括联系人 ID、联系人姓名、联系人电子邮件以及您要在 Salesforce 中插入或更新的其他字段。
  • 标题后的每一行都应包含要插入或更新的记录 ID。在以下示例中,第一行包含标题并包括以下字段名称:UniqueID(唯一 ID)、Last Name(姓氏)、First Name(名字)、Company(公司)、Title(职称)、Email(电子邮件)、Owner ID(所有人 ID)和 AccountID(客户 ID)。第二行包含用于更新 Salesforce 中 ID 为 0036g00000l3laiAAA 的现有联系人记录的值。对于新记录,UniqueID 应为空。

CSV 文件显示两行,第 1 行包括唯一 ID 的字段名称,以及第 2 行的单个记录数据

创建以 Amazon S3 作为源的流

  1. 从 AWS 管理控制台中,在“查找服务”字段中输入 AppFlow,然后单击 Amazon AppFlow。 
  2. 之后,单击 Create flow(创建流)。进入“配置流”页面后,您按照之前在本模块中创建流的类似步骤进行操作。
  3. 为流命名并输入描述,然后单击 Next(下一步)
  4. 在下拉列表中选择 Amazon S3 作为源,然后选择您刚刚创建的存储桶。
  5. 在 Enter bucket prefix(输入存储桶前缀)字段中输入您创建的文件夹的名称。
  6. 选择 Salesforce 作为目标。系统会提示您使用 Salesforce 凭据登录。成功登录后,您将被重定向到 AppFlow。
  7. 选择要更新的 Salesforce 对象,然后单击 Next(下一步)

您可以通过三个选项来更新 Salesforce。

  • 插入新记录。当您选择此设置时,Amazon AppFlow 会将您的 CSV 数据作为新记录插入到所选的 Salesforce 对象中。这是默认选项。
  • 更新现有记录。当您选择此设置时,Amazon AppFlow 使用您的源数据来更新 Salesforce 中的现有记录。对于每个源记录,Amazon AppFlow 会根据您的条件在 Salesforce 中查找匹配的记录。您可以在 Map data(映射数据)字段页面上指定匹配条件。找到匹配的记录后,Amazon AppFlow 会更新 Salesforce 中的记录。如果未找到匹配的记录,Amazon AppFlow 将根据您选择的错误处理选项忽略该记录或使流失败。您可以在配置流页面指定您的错误处理首选项。
  • 更新插入记录。当您选择此设置时,Amazon AppFlow 会在 Salesforce 中执行更新插入操作。对于每个源记录,Amazon AppFlow 会根据您的条件在 Salesforce 中查找匹配的记录。找到匹配的记录后,Amazon AppFlow 会更新 Salesforce 中的记录。如果未找到匹配的记录,Amazon AppFlow 会将数据作为新记录插入。

在下面的例子中,选择了 Update existing records(更新现有记录)。从 CSV 中选择了 UniqueID(唯一 ID) 并映射到 Salesforce 中的 Contact Id(联系人 ID)

选择了“更新现有记录”并将唯一 ID 映射到联系人 ID 的目标记录首选项部分

然后,您可以在 Source to destination field mapping(源到目标字段映射)界面中将剩余字段从源映射到目标。

源到目标字段映射页面,其中包含将数据从 Amazon S3 上的 CSV 映射到 Salesforce 字段的选项

以此类推。如果出错,您可以选择删除映射并进行调整。然后,照常设置流的其余部分,并根据您的 Amazon S3 数据观察 Salesforce 更新。

总结

在本模块中,您了解了 Amazon AppFlow 如何保护您的数据以及如何设置简单和自动化的流。无论您是在 Salesforce 还是在 AWS 中,您现在都离获得客户的统一视图又近了一步!

在 Salesforce 帮助中分享 Trailhead 反馈

我们很想听听您使用 Trailhead 的经验——您现在可以随时从 Salesforce 帮助网站访问新的反馈表单。

了解更多 继续分享反馈