---
schema_version: "1"
id: 999261bf89700024c59fc52c2da71a207e87028085824244083e7d931b2f2988
title: 集成外部操作
collection: tableau
version: current
locale: zh-cn
portal_url: https://docs.salesforce.com/tableau/current/zh-cn/public/desktop/external_actions.md
canonical_url: https://help.tableau.com/current/public/desktop/zh-cn/external_actions.htm
source_site: help.tableau.com
content_type: documentation
content_hash: f2aad1a8800219e4b7f99af5626bfe24444c8fa5680da7708e5158f3e1254b5e
description: Integrate external actions to trigger Salesforce Flow workflows from Tableau dashboards.
---
[跳转到主要内容](#main-content)

# 集成 外部操作

**注意：**Tableau 中的外部操作依赖于 Salesforce Flow 提供的功能。该功能将您选择的数据发送到在单独的 Salesforce 基础设施上运行的 Salesforce Flow。Salesforce Flow 和其他 Salesforce 产品和服务的使用受您与 Salesforce 的协议约束。

在查看并了解 Tableau 中的数据后，下一步是什么？通常，从数据洞察中采取行动涉及从一个应用程序转向另一个应用程序，通常会复制和粘贴数据并在此过程中丢失上下文。借助 Tableau 外部操作 功能，您可以直接从 Tableau 仪表板创建数据驱动的工作流并与之交互，并使用 Salesforce Flow 自动执行后续步骤。

## 关于 Salesforce Flow

如果您不熟悉 [Salesforce Flow](https://help.salesforce.com/s/articleView?language=en_US&id=sf.flow_concepts.htm&type=5)，它是一种无代码工具，可提供省时的流程自动化。流程是 Salesforce Flow 的组件，用于收集数据并在您的 Salesforce 组织中执行操作。[Salesforce Flow 中有几种可用的流程类型](https://help.salesforce.com/s/articleView?id=sf.flow_concepts_type.htm&type=5)，但是 Tableau 中的 外部操作 工作流仅与自动启动的流程兼容。

**注意：**若要了解有关流程的详细信息，请查看在 Trailhead 上的 [使用 Flow Builder 构建流程](https://trailhead.salesforce.com/en/content/learn/trails/build-flows-with-flow-builder)。

## 外部操作 的工作方式

![带有已选中标记的仪表板和处于可用状态的工作流按钮，箭头指示将数据传输到 Salesforce Flow](/tableau/current/zh-cn/public/desktop/zh-cn/Img/workflow_overview_callouts.png)

针对 Tableau 仪表板上的可视化项配置 外部操作 工作流时，一个自定义按钮将出现在相应的可视化项上，处于不可用（灰显）状态。当您在可视化项 (1) 上选择相关标记时，该按钮变为可用。然后，当您单击按钮 (2) 时，所选标记中的数据将直接发送到在 [Salesforce Flow](https://help.salesforce.com/s/articleView?language=en_US&id=sf.flow_concepts.htm&type=5) (3) 中构建和配置的流程。

作为 外部操作 工作流的作者，您确定：

- 数据发送到哪个流程
- 数据来自哪个仪表板
- 触发工作流的仪表板按钮的文本和外观

**注意：**您可以将多个 外部操作 工作流添加到仪表板，但每个相应的流程必须部署在同一个 Salesforce 组织。

## 为何使用 外部操作 工作流

有很多种方法使用 外部操作 工作流以自动完成组织中的现有流程。例如，想象一下，让会计团队成员直接从他们用来跟踪未付订单的同一个仪表板发送客户发票的工作流节省了工作量。或者，也许您正在寻找简化支持团队案例管理的方法。允许支持团队成员直接从他们用来跟踪案例的仪表板升级案例的工作流可以显著节省时间。外部操作 工作流有助于将用户留工作流中，并使您的组织能够从提高的效率中受益。

创建 外部操作 工作流时，您实际上是在构建一座桥梁，将Tableau 中的任何类型的数据源与 Salesforce 中的流程连接起来。您的数据源不需要连接到 Salesforce 数据库，因为工作流本身会创建连接。当有多个组使用单独的数据源来完成同一流程的不同步骤时，这尤其有用。

例如，想一想当客户在电子商务网站下订单时涉及的不同的团队和工具。电子商务销售代表可能使用 Salesforce 来跟踪销售，而供应链经理则使用供应链管理工具来从整体产品库存中扣除购买的商品。帮助客户解决收到产品时出现的任何问题的支持团队可能会登录到 Salesforce 或在 Tableau 仪表板中进行分析。通过 外部操作 工作流，您可以连接来自每个团队的所有数据，以简化流程，甚至自动执行一些现有步骤。

## 外部操作 工作流作者的最佳实践

**重要信息：**使用 外部操作 功能将仪表板数据与 Salesforce Flow 中构建的流程连接的仪表板作者应与创建流程的 Salesforce 管理员和架构师密切合作。

Salesforce Flow 中内置的流程是复杂的业务自动化程序。尽管您的组织可以从这些自动化中获益良多，但在部署使用它们的 外部操作 工作流之前，了解流程如何工作是很重要的。确保完成 [Trailhead 上的 Salesforce Flow 培训](#https://trailhead.salesforce.com/content/learn/modules/business_process_automation)，并查看[流程文档](https://help.salesforce.com/s/articleView?id=sf.flow.htm)。在设计中考虑[流程最佳实践](https://help.salesforce.com/s/articleView?id=sf.flow_prep_bestpractices.htm&type=5&language=en_US)，并牢记[流程限制和注意事项](https://help.salesforce.com/s/articleView?id=sf.flow_considerations.htm&type=5)。

**注意：**Salesforce Flow 中有几种可用的[流程类型](https://help.salesforce.com/s/articleView?id=sf.flow_concepts_type.htm&type=5)，但是外部操作工作流仅与自动启动的流程兼容。

必须仔细实施 外部操作 工作流，以符合 Salesforce Flow 内置流程的架构约束。流程是强大的，但它们也可能是资源密集型和复杂的。需要考虑潜在的许可、执行限制和并发性问题，并且必须评估和测试数据库读/写限制。

还有一些与流程相关的重要安全注意事项。具有“管理流程”权限的用户可以查看和更改相应 Salesforce 组织中的所有数据和资源。具有“运行流程”权限的用户几乎可以运行 Salesforce 组织中的任何活动流程。若要将访问权限仅限于需要它的用户（例如仪表板作者和工作流用户），您的 Salesforce 管理员可以为流程启用覆盖默认行为设置。有关详细信息，请参见[流程安全性如何工作？](https://help.salesforce.com/s/articleView?id=sf.flow_distribute_security.htm&type=5)

创建 外部操作 工作流的仪表板作者应在实施工作流之前与其 Salesforce 管理员沟通，以防止出现意外结果。

## 创建工作流

在创建 外部操作 工作流之前，仪表板作者应与其 Salesforce 管理员协作，以找到或创建满足其需求的流程。例如，您的目标可能是帮助您的会计团队直接从未付款订单仪表板发送发票。为实现此目标，您需要一个可以从仪表板检索客户联系信息和订单详细信息并填充发票的流程。

在您决定使用哪个流程之后，下一步是确定要连接到哪个仪表板。很可能您的用户已经在与一个运行良好的现有仪表板进行交互了。但是，如有必要，您可以[创建新仪表板](https://help.tableau.com/current/pro/desktop/zh-cn/dashboards_create.htm)。

有了正确的流程和正确的仪表板，就该考虑仪表板中的数据类型与流程的必需输入字段（称为变量）的兼容性了。例如，您的未付款订单仪表板必须包含一个可视化项，其中包含发送客户发票所需的所有相关订单详细信息。这些详细信息可能包括订单日期、客户姓名和联系信息、项目描述和金额以及到期付款金额等信息。

当您的仪表板包含所有必需的组件时，添加工作流对象：

1. 在 Tableau 工作簿中，打开现有仪表板或[创建新仪表板](https://help.tableau.com/current/pro/desktop/zh-cn/dashboards_create.htm)。
2. 从“仪表板”窗格的“对象”部分，将“工作流”拖到仪表板中的可视化项。  
    ![仪表板窗格的“对象”部分，在“工作流”对象上带有一个聚光灯，向右箭头指示将对象拖至仪表板 ](/tableau/current/zh-cn/public/desktop/zh-cn/Img/workflow_object_arrow_spotlight_sm.png)
3. 出现提示时，输入与您的流程相关联的 Salesforce 组织的登录凭据。  
    
    **注意：**当用户访问您设置工作流的仪表板时，他们必须输入自己的 Salesforce 凭据。如果他们的 Salesforce 凭据在查看控制面板时过期，系统会提示他们重新进行身份验证。
4. 单击“配置工作流”。
5. 在“添加工作流”对话框中，按流程名称或流程作者搜索流程。
6. 选择一个流程以查看其详细信息，包括它需要来自可视化项的所需输入（Salesforce 变量）。单击“上一步”选择其他流程，或单击“下一步”继续。
7. 从“选择工作表”下拉列表中，选择包含用户将选择并发送到流程的标记的工作表（工作表、仪表板或文章）。  
    
    **注意：**请确保选择一个带有标记的工作表，这些标记带有要映射到流程的必需输入的编码字段。举例来说，如果要将流程中的 `forecast_revenue` 变量映射到 Tableau 中的 `SUM(Sales)` 字段，则必须选择带有 `Sum(Sales)` 字段编码标记的工作表。
8. 单击“下一步”。
9. 对于流程的每个必需输入（Salesforce 变量），从“选择工作表”步骤中所选的 Tableau 工作表中选取一个适当的字段。  
    
    **注意：**对于每个输入，Salesforce 变量和 Tableau 字段的数据类型必须匹配。
10. 单击“下一步”。
11. 配置用户将单击以触发 外部操作 工作流的按钮的外观。指定按钮标题、背景颜色和边框颜色。检查预览以确认按钮的外观。

**注意：**请记住，用户必须从您在“选择工作表”步骤中所选的可视化项中选取一个标记。在选择标记之前，该按钮不可用。考虑将指导文本添加到仪表板，以便用户确切地知道要与之交互的可视化项，以及单击按钮时会发生什么。

13. 单击“完成”以创建工作流并将相应的按钮添加到仪表板中的可视化项。

## 使用工作流

若要以工作流用户身份开始操作，请打开仪表板，仪表板作者已在其中添加了工作流。如果显示工作流按钮，您可以确认工作流可用。仪表板作者自定义按钮的名称和格式，并且它应该清楚地指示当您单击时触发的操作（例如“发送数据”或“更新记录”）。从仪表板的可视化项中选择一个相关标记，然后单击按钮启动工作流。

![GIF 动画，显示在 Tableau 仪表板中选择标记，然后单击工作流按钮，并以成功消息结束](/tableau/current/zh-cn/public/desktop/zh-cn/Img/workflow_dash_button_success.gif)

单击工作流按钮将触发数据传输，您选择的标记确定发送什么数据。因此，在您选择标记之前，该按钮不可用（灰显）。如果您选择了一个标记，但该按钮仍然不可用，请确认您已在工作流的有效可视化项上选择了一个标记。如果您不确定哪些可视化项有效，请咨询仪表板作者。

根据其配置，某些工作流可能是长时间运行的操作，不会立即完成。如果您无法确定您选择的工作流程是否按预期工作，请咨询仪表板作者或您的 Salesforce 管理员。

## 工作流故障排除

有关解决外部操作工作流问题的帮助，请参见以下故障排除指南。

### 访问权限问题

- **对于使用 Tableau Desktop 的仪表板作者：**如果工作流对象没有出现在“仪表板”窗格的“对象”部分，请确认您已登录到 Tableau Server 或 Tableau Cloud 站点。如果您没有登录，则无法访问工作流扩展程序。
- **对于仪表板作者：**如果工作流对象没有出现在“仪表板”窗格的“对象”部分，请咨询您的 Tableau 管理员以确保扩展程序已打开。
- **对于所有用户：**
    - 如果您的 Salesforce 管理员尚未创建已连接应用，外部操作 功能将不起作用。要求您的 Salesforce 管理员在 Salesforce 中为 Tableau Server [创建已连接应用](https://help.salesforce.com/s/articleView?id=sf.connected_app_create.htm&type=5)。
    - 如果您无法单击显示在仪表板上的工作流按钮，请确认您已经在工作流的有效可视化项上选择了一个标记。如果您不确定哪些可视化项有效，请咨询仪表板作者。

### 身份验证问题

- **对于 Tableau Cloud 或 Tableau Server 用户：**刷新浏览器中的仪表板。
- **对于所有用户：**确认您已登录到添加 外部操作 工作流的 Salesforce 组织。如有必要，请咨询您的仪表板作者以确认正确的 Salesforce 组织。

### 错误消息

| 错误消息 | 解释和解决方法 |
| --- | --- |
| 此站点上的工作流已关闭。有关详细信息，请与 Tableau 管理员联系。 | 您的 Tableau 管理员已关闭站点的工作流仪表板扩展程序，因此您无法使用它。请与您的 Tableau 管理员联系，讨论打开扩展程序访问权限的问题。 |
| Tableau Reader 不支持工作流 | 工作流仪表板扩展程序和 外部操作 功能只能用于向使用 [Tableau Cloud](https://www.tableau.com/zh-cn/products/cloud-bi)、[Tableau Desktop](https://www.tableau.com/zh-cn/products/desktop) 或 [Tableau Server](https://www.tableau.com/zh-cn/products/server) 版本 2022.3 及更高版本的流程发送数据。 |
| 流程包含一个或多个不支持的数据类型。请返回以选择不同的流程，或者联系您的 Salesforce Flow 管理员以从此流程中移除不支持的数据类型。 | 所选流程需要的数据类型输入在 Tableau 仪表板中不可用，或者与 外部操作 工作流不兼容。如果存在合适的替代流程，请选择其他流程，或咨询您的 Salesforce 管理员以了解后续步骤。 |
| 输入字段的映射中存在一个或多个数据类型不匹配。 | 映射到输入变量字段的一个或多个仪表板值的数据类型不相同。  
  
例如，流程可能需要一个数字变量来表示收入，但是来自仪表板的映射值是一个文本字符串。根据您的情况，您有两种选择来解决这个问题。您可以在 Tableau 中[更改“收入”字段的数据类型](https://help.tableau.com/current/pro/desktop/zh-cn/datafields_typesandroles_datatypes.htm)，从文本字符串更改为数值。或者，您可以编辑工作流配置，以映射仪表板中具有数字数据类型的不同字段。 |
| 无法将数据提交到 Salesforce Flow。 | 外部操作 工作流试图将数据从仪表板发送到流程时出现未知错误。请联系您的仪表板作者进行故障排除。 |
| 出现错误：<异常代码>。请与 Salesforce Flow 管理员联系。 | [流程采访](https://help.salesforce.com/s/articleView?id=sf.flow_interviews.htm&type=5)（流程的运行实例）失败。与您的 Salesforce 管理员共享异常代码，以便他们可以找到相应的[错误电子邮件](https://help.salesforce.com/s/articleView?id=sf.flow_troubleshoot_email.htm&type=5)并相应地进行故障排除。 |
| 工作流失败。请与 Salesforce Flow 管理员联系。 | 仪表板中所选标记的数据已发送至流程，但在将该数据转换至流程时出现问题。请联系您的 Salesforce 管理员进行故障排除。 |
| 无法将数据提交到流程。请联系您的工作流作者。 | 仪表板中所选标记的数据未发送到流程。请联系您的仪表板作者进行故障排除。 |

### 流程问题

- 某些流程是异步运行的，因此您可能不会立即知道作为 外部操作 工作流一部分的流程是否成功运行。有时，流程可能会失败，并且在没有立即提供详细反馈的情况下回滚更改。不过，当流程失败时，会向工作流用户、仪表板作者和 Salesforce 管理员发送详细的错误电子邮件。工作流用户在收到流程[错误电子邮件](https://help.salesforce.com/s/articleView?id=sf.flow_troubleshoot_email.htm&type=5)时，应联系其仪表板作者。然后，仪表板作者和 Salesforce 管理员可以一起排除故障并解决错误。有关排查流程问题的详细信息，请参见[对流程进行故障排除](https://help.salesforce.com/s/articleView?id=sf.flow_troubleshoot.htm&type=5)。

### 许可问题

- **对于仪表板作者：**在 Tableau 端，向仪表板添加工作流不需要特殊权限（只要为站点启用了外部操作）。在 Salesforce 端，您需要将[“管理流程”权限](https://help.salesforce.com/s/articleView?id=sf.retail_task_admin_permission_flow.htm&type=5)添加到您的 Salesforce 配置文件。
- **对于工作流用户：**在 Tableau 端，任何可以访问带有工作流的仪表板的用户都可以运行它。从 Salesforce 端，您需要将[“运行流程”权限](https://help.salesforce.com/s/articleView?id=sf.retail_task_admin_permission_flow.htm&type=5)添加到您的 Salesforce 配置文件。

## 开启或关闭 外部操作

在 Tableau 2022.3 及更高版本中，外部操作 功能默认情况已开启。有关 Tableau 管理员如何配置组织范围的 Tableau 外部操作 访问权限的详细信息，请参见[配置外部操作工作流集成](https://help.tableau.com/current/server/zh-cn/external_actions_admin.htm)。