Google 表格是一种基于云端的 电子表格解决方案,支持实时协作,并提供用于 直观呈现、处理和传递数据的工具。
以下示例演示了如何从工作流写入 Google 表格。该工作流会查询 BigQuery 数据集,并将结果写入 Google 表格电子表格。它使用 Workflows 连接器来简化 API 的调用 Google Cloud 。
准备工作
在试用本文档中的示例之前,请确保您已完成以下操作。
启用 Compute Engine、Google 云端硬盘、Google 表格和 Workflows API。
控制台
gcloud
gcloud services enable \ compute.googleapis.com \ drive.googleapis.com \ sheets.googleapis.com \ workflows.googleapis.com
记下 Compute Engine 默认服务账号 服务帐号,因为您将把它与示例工作流相关联以进行测试 。已启用 Compute Engine API 的新项目会创建此服务帐号,该账号具有 IAM 基本 Editor 角色,并且采用以下电子邮件格式:
PROJECT_NUMBER-compute@developer.gserviceaccount.com
您可以在 控制台 的 Google Cloud 欢迎页面上找到项目编号,也可以检索项目编号:
gcloud projects describe PROJECT_ID
对于生产环境,我们强烈建议 创建新的服务账号 ,并为其授予一个或多个 IAM 角色,这些角色包含所需的 最小权限 并遵循 最小权限原则。
在 Google 云端硬盘中创建一个新文件夹。此文件夹用于存储您的电子表格。通过为共享文件夹设置权限,您的工作流可以写入电子表格。
- 转到 drive.google.com。
- 依次点击新建 > 新建文件夹。
- 输入文件夹名称。
- 点击创建 。
- 右键点击新文件夹,然后选择共享 。
添加 Compute Engine 默认服务账号的电子邮件地址。
这会授予服务帐号对该文件夹的访问权限。将服务帐号与工作流相关联后,工作流将拥有对该文件夹中任何文件的修改权限。 详细了解如何共享文件、文件夹和云端硬盘。
选择编辑者 角色。
清除通知用户 复选框。
点击共享 。
创建电子表格
您可以通过以下任一方式创建电子表格:
无法使用 Google Sheets API 在指定文件夹中直接创建电子表格。 不过,您可以采用其他方法,包括在创建电子表格后将其移至特定文件夹,如以下示例所示。如需了解详情,请参阅 使用 Google 云端硬盘文件夹。
使用 Google 表格创建电子表格
通过 Google 表格创建电子表格时,系统会将其保存在 Google 云端硬盘中。默认情况下,电子表格会保存到云端硬盘的根文件夹中。
点击新建
。
此操作会创建并打开您的新电子表格。每个电子表格都有一个唯一的
spreadsheetId值, 其中包含字母、数字、连字符或下划线。您可以在 Google 表格网址中找到电子表格 ID:https://docs.google.com/spreadsheets/d/spreadsheetId/edit#gid=0记下此 ID,因为在创建工作流时需要用到它。
将电子表格移至您之前创建的 Google 云端硬盘文件夹:
- 在电子表格中,依次选择文件 > 移动。
- 找到您创建的文件夹。
- 点击移动 。
使用 Google Sheets API 连接器创建电子表格
您可以使用 Google Sheets API 连接器 创建电子表格。由于 Workflows 使用服务帐号作为触发器身份,因此电子表格是在服务帐号的 Google 云端硬盘根文件夹中创建的。然后,您可以将电子表格移至其他文件夹。
在以下工作流中,spreadsheetId 是从 resp 结果中检索的: