gpt4 book ai didi

c# - 如何使用 C# 以编程方式编辑 Power BI Desktop 文档参数或数据源?

转载 作者:行者123 更新时间:2023-12-04 01:48:36 51 4
gpt4 key购买 nike

我有一个内置于 Power BI Desktop 并保存为 .pbix 或 .pbit 文件的报告模板。此模板使用 DirectQuery SQL 数据库作为数据源,而服务器地址和数据库名称被提取到参数中。还有一个参数包含 ReportId ,用于查询。

Power BI window screenshot

我还有一个 C# 应用程序,它应该从这个模板生成 Power BI Desktop 报告。
如何以编程方式创建具有特定参数的报告?
当您打开 .pbit 模板文件,输入参数并生成 .pbix 文档时,Power BI Desktop 之类的东西会自行完成。

我没有找到任何适用于 Power BI Desktop 的 SDK\Interop 库。
我试图以 ZIP 格式打开文档,但 DataModel文件已存档,因此不是格式良好的 XML。
我还尝试将此参数提取到 JSON 文件并将其作为数据源加载,但 Power BI 不支持相对路径。

最佳答案

没有可用于执行此操作的 SDK 或 API。如果将此报表发布到 Power BI Online,则可以使用 Update ParametersUpdate Parameters In Group REST API 调用以更改参数值。我相信 Power BI Reporting Server 有类似的 API,但我没有使用它的经验。

您可以尝试在线发布报告并将其保存在那里(不需要与任何人共享)。当您需要带有某个参数值的报告时,调用上面的 API 方法更改该值,然后使用 Export Report 下载修改后的 .pbix 文件。或 Export Report In Group方法。它很丑陋而且不是线程安全的,但可能会起作用......

你说你看了DataModel提取的 .pbix 中的文件。我认为参数和 M 查询在 DataMashup (搜索 RootFormulaTextReferencedQueriesFormulaText 文本以找到它们)。服务器和数据库名称也在那里。您可以相对容易地修改M 查询、现有参数的值或服务器/数据库名称,并尝试重新打包.pbix 文件。它可能有效,但看起来非常不受支持。

我尝试将 SSMS 连接到 Power BI Desktop 中报表的 SSAS,但我没有找到通过这种方式修改参数值的方法。不过,我可以在源查询中看到它们的值(如果参数用作过滤器)。

我正在使用类似的东西,但不是参数,而是将报告嵌入到我的应用程序中并使用 filters .这样所有用户都可以访问同一份报告,我不需要根据他们的特定需求“定制”.pbix。

恐怕这不是解决您问题的答案,但我希望它能给您一些想法,您可以做什么或不能做什么!

关于c# - 如何使用 C# 以编程方式编辑 Power BI Desktop 文档参数或数据源?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54295208/

51 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com