【问题标题】:programmatically change dataset SQL statement in power bi以编程方式更改 power bi 中的数据集 SQL 语句
【发布时间】:2019-03-30 12:19:03
【问题描述】:

是否可以通过 API 调用更改数据集的 SQL 语句?

我的场景:我在 SQL Server 的多个表中有数据。我创建了一个带有连接的 SQL 查询来获取所需的数据。我通过在 SQL 语句部分提供该查询创建了一个 SQL 服务器数据集,并将其发布到 Power BI 工作区。现在,我想以编程方式修改该 SQL 语句。

我想导入同一个 .pbix 文件来创建不同的数据集。想法是使用 import date set api 来导入这个虚拟数据集,然后以编程方式更改 db 源和 SQL Statment,以根据我的不同报告需求对其进行自定义。

非常感谢任何指针或帮助。

【问题讨论】:

  • 能否更具体地说明您希望如何修改 SQL 语句?
  • 这可能会为您指明正确的方向:stackoverflow.com/questions/29322381/…
  • @AlexisOlson,我想修改 SQL 语句,可能通过 REST 调用,或者如果有另一种编程方式。我不想从 Power BI Desktop 手动执行此操作。

标签: powerbi powerbi-embedded powerbi-datasource


【解决方案1】:

对于服务器名称和数据库名称,您可以简单地使用参数。单击该字段左侧的按钮来执行此操作。您也可以使用参数对查询进行一些更改,但这不是很灵活。这可以通过定义文本参数并在与数据集的源步骤关联的 M 语句中使用来完成。有关更多信息,您可以查看这篇文章:

https://www.red-gate.com/simple-talk/sql/bi/power-bi-introduction-working-with-parameters-in-power-bi-desktop-part-4/

然后您可以使用 Rest API 修改参数值并刷新数据集。您将需要 Update Parameters In GroupRefresh Dataset In Group API 调用。

【讨论】:

    【解决方案2】:

    在撰写本文时,Power BI REST API 不支持此功能。


    可能的解决方法:鉴于您使用的是 SQL Server,我建议您在 SQL Server 中使用您在 Power BI 报告中定义的语句create a VIEW,并将您的报告更改为指向取而代之的是那个视图。

    然后,要修改 SQL 语句,您只需 ALTER 数据库中的视图。

    【讨论】:

    • 感谢您的回复。我不可能为这种情况创建视图。我已经用我的完整场景更新了我的问题陈述。
    • @Prathako 正如您在Power BI REST API docs 中看到的,没有允许您更改SQL 语句的API。 PBIX 格式是一种封闭文件格式,因此目前不支持以编程方式更新 SQL 语句的方法。我建议您在Power BI Ideas 添加功能请求
    猜你喜欢
    • 2021-11-21
    • 2021-07-22
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2022-11-21
    • 2016-06-06
    • 1970-01-01
    相关资源
    最近更新 更多