【问题标题】:Reuse a previosly published datasource in a Power BI report在 Power BI 报表中重用以前发布的数据源
【发布时间】:2020-02-17 14:58:45
【问题描述】:

我使用 Power BI Desktop 开发了一个 Power BI 报表,指向一个私有的本地开发数据库作为数据源,以便我能够轻松地开发和测试它。然后,我将它从我的 Power BI Desktop pbix 发布到我客户的工作区。

因此,工作区包含已发布的报表和数据集。后来,我的客户更改了数据集,使其现在指向他们自己的正确的本地生产数据库。效果很好。

现在,我想使用之前发布和重新配置的数据集为我的客户发布一份新报告。问题是我在 Power BI Desktop 中看不到任何让报表指向已发布数据集的选项,我也看不到任何避免在每次发布报表时创建新数据集的选项,也看不到任何方法从门户网站重新配置新发布的报告以指向与第一个相同的数据集。

有没有办法做到这一点或解决这种情况?我认为最合理的解决方案是能够更改任何报表的数据集,以便任何报表的数据集可以互换。

更新: 我已经使用了特定于连接的参数,但我无权更改已发布的数据集,所以这是一条死胡同。

我想到的另一件事是,在 Power BI Desktop 中,如果您无法从计算机访问目标数据库,则无法将连接参数值更改为生产环境的值并发布报告,因为 PowerBI Desktop 会询问您首先应用更改,当它尝试应用值时,它会尝试连接到相应的数据库,显然,以尝试连接到数据库服务器的网络相关错误或超时错误结束,因此取消更改并返回开始点。

【问题讨论】:

  • 您可以从门户网站(在线)下载 pbix 文件并在您的 powerbi 桌面上使用它。在相同的报告下,您也可以使用不同的子报告,如果没有,您将在从 web 添加 pbix 文件后获得该数据源。 Link 参考文献

标签: powerbi report datasource


【解决方案1】:

使用connection specific parameters 定义数据源始终是一个好习惯。这意味着您不直接输入服务器名称,而是使用参数间接指定它。数据库名称相同(如果适用)。

如果您要创建新报告,请取消Get data 对话框,按如下所述定义参数,然后在Get data 中使用这些参数指定数据源:

要修改现有报告,请单击Edit Queries 打开Power Query Editor,并在Manage Parameters 中定义两个新的文本参数,我们将它们命名为ServerNameDatabaseName

将它们的当前值设置为指向您的数据源之一,例如SQLSERVER2016AdventureWorks2016。然后在报告中右键单击您的查询并打开Advanced Editor。在M代码中找到服务器名和数据库名:

并将它们替换为上面定义的参数,因此M代码将如下所示:

现在您可以关闭并应用更改,您的报告应该会像以前一样工作。但是现在当你想更改数据源时,使用Edit Parameters

并更改服务器和/或数据库名称以指向您要用于报告的其他数据源:

更改参数值后,Power BI Desktop 将要求您应用更改并从新数据源重新加载数据。要更改在 Power BI 服务中发布的报表的参数值(即数据源),请转到数据集的设置并输入新的服务器和/或数据库名称:

如果服务器是内部部署的,请检查Gateway connection,以确保正确配置它以使用正确的网关。您可能还想查看Manage gateways 中的可用网关:

更改数据源后,刷新数据集以从新数据源获取数据。使用 Power BI Pro 帐户,您可以每 24 小时执行 8 次此操作,而如果数据集处于专用容量中,则此限制会提高到每 24 小时 48 次。

这是一种让您的报告“可切换”的简单方法,例如用于将一份报告从 DEV 或 QA 切换到 PROD 环境,或者作为灾难恢复计划的一部分,自动将某个工作组中的所有报告切换到另一台 DR 服务器。在您的情况下,这将允许您(或您的客户)轻松切换报告的数据源。

【讨论】:

    【解决方案2】:

    我认为唯一正确的答案是无法做到,至少目前是这样。 实现这一点的最接近的方法是使用实​​时连接: https://docs.microsoft.com/en-us/power-bi/desktop-report-lifecycle-datasets

    但是,如果您已经设计了报表而不使用实时连接,而是使用自己的开发环境和相应的连接参数,那么您将迷失方向,您唯一的机会是使用实时连接或最奇怪的一种解决方案重做所有报表,以在您的配置中使用与数据库服务器名称和目标生产环境中相同的数据库名称匹配的别名。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2022-12-30
      • 2019-10-26
      • 1970-01-01
      • 1970-01-01
      • 2020-03-27
      • 1970-01-01
      • 2019-09-18
      相关资源
      最近更新 更多