使用 Power Automate 导出 Power BI 报表并以电子邮件的方式发送

借助 Power Automate,可以以各种格式和方案自动导出并分发 Power BI 报表。 在本文中,你将从头开始创建自己的流。 使用“将 Power BI 报表导出到文件”操作,通过电子邮件自动分发 Power BI 报表。

Power BI Automate 窗口的屏幕截图,其中显示了创建选项。

Power Automate 是一种用于在用户界面中与 Export To File API 交互的无代码方式。 请参阅将 Power BI 报表导出到文件,开始直接与 API 交互。

先决条件

若要继续操作,请确保满足以下先决条件:

  • Power BI 租户中至少有一个由预留容量提供支持的工作区。 此容量可以是 A1/EM1 - A6/P3 SKU 中的任何一个。 详细了解 Power BI Premium 中的预留容量
  • 有权访问 Power Automate 中的标准连接器,这些连接器随任何 Office 365 订阅一起提供。

从头开始创建流

在此任务中,你将从头开始创建一个简单的流。 该流将 Power BI 报表导出为 PDF 格式,并将其附加到电子邮件,每周发送一次。

  1. 登录到 Power Automate

  2. 选择“创建”>“计划云端流” 。

    显示 Power BI 创建窗口的屏幕截图,其中突出显示了计划的云端流。

  3. 在“生成计划流”中,为流指定名称。

  4. 在“运行此流”中,选择流的开始日期和时间以及重复频率。

  5. 在“在这些天”中,选择想要运行流的日期,然后选择“创建”。

    显示“生成计划的云端流”对话框的屏幕截图。

  6. 在“定期”中,选择“编辑”>“显示高级选项”。 在“在这些小时”和“在这些分钟”中输入值以设置运行流的特定时间。

    显示“定期”对话框的屏幕截图。

  7. 选择“新建步骤”。

  8. 在“选择操作”中,搜索“Power BI”并选择“将 Power BI 报表导出到文件”。

    显示用于选择操作的 Power Automate 对话框的屏幕截图。突出显示了“将 Power BI 报表导出到文件”。

  9. 在“将 Power BI 报表导出到文件”中,从下拉列表中选择“工作区”和“报表”。

  10. 选择 Power BI 报表所需的导出格式。

    “将 Power BI 报表导出到文件”的屏幕截图。

    注意

    如果将多个页面导出为 PNG 格式,则一系列 .png 文件(每个文件代表一个报表页)将被压缩为一个 .zip 文件,该文件将附加到电子邮件中。

  11. (可选)指示要在“页面 pageName-1”字段中导出的特定页面。 页面名称参数与显示页面名称不同。 要查找页面名称,请浏览到 Power BI 服务中的页面,并复制 URL 的最后一部分,如该示例所示。

    https://app.powerbi.com/groups/workspaceGuid/reports/reportGuid/xxxxxxxxxx

  12. (可选)指示要在“书签名称”字段中显示的具体书签。 可以在报表 URL 中的 bookmarkGuid= 后面找到书签名称,如该示例所示。 仅支持报表书签,不支持个人书签。 可以为 Power BI 报表指定其他参数。 有关这些参数的详细说明,请参阅将 Power BI 报表导出到文件

    https://app.powerbi.com/groups/workspaceGuid/reports/reportGuid/ReportSection?bookmarkGuid=xxxxxxxxxx

  13. 选择“新建步骤”。

  14. 在“选择操作”,搜索“Outlook”并选择“发送电子邮件(V2)” 。

  15. 在“发送电子邮件(V2)”中,填写电子邮件的“收件人”、“主题”和“正文”字段。

  16. 选择“显示高级选项”。 在“附件名称 – 1”中,输入附件的名称。 将文件扩展名添加到与所需的导出格式匹配的文件名(例如,PDF)。

  17. 在“附件内容”中,选择“文件内容”以附加导出的 Power BI 报表。

    显示“发送电子邮件”对话框的屏幕截图。

  18. 完成后,选择“下一步”或“保存”。 Power Automate 会创建和评估流,并告知你是否找到错误。

  19. 如果有错误,请选择“编辑流”以修复错误。 如果没有,请选择“后退”箭头来查看流的详细信息,并运行新流。 运行流时,Power Automate 会以指定的格式导出 Power BI 报表,并按计划将其作为电子邮件附件发送。

Power Automate 中的行级别安全性

(可选)如果想要基于行级别安全性 (RLS) 发送报表,则需要添加以下详细信息:

更新“标识用户名”字段的屏幕截图。

  • 标识用户名 - 1 = 由用于应用 RLS 规则的令牌反映的有效用户名。 对于本地模型,用户名可以由字母数字字符或以下任何字符组成:'.', '-', '_', '!', '#', '^', '~', '\', and '@'。 对于云模型,用户名可以全部由 ASCII 字符组成。 此外,用户名最多可以包含 256 个字符,不能包含空格。

  • 标识语义模型 - 1 = 可以转到语义模型的设置,然后从地址栏中复制语义模型 ID 来获取此值,如下图所示:

    https://app.powerbi.com/groups/me/settings/datasets/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx

    示例语义模型 ID 的屏幕截图。

  • 标识角色项 - 1 = 报表中定义的 RLS 名称