是否有任何方法调用Excel或PowerBI之外的PowerQuery/M
本文关键字:PowerQuery PowerBI 任何 方法 调用 Excel 是否 | 更新日期: 2023-09-27 18:16:29
我们的BI团队真的越来越喜欢Excel和Power BI中使用的Power Query ETL工具。函数式语言M/PowerQuery具有强大的实用功能,如果能够在PowerBI环境之外使用它将是很好的。
是否有计划将"M"作为一个独立的模块,可以从c#或PowerShell中调用?
https://ideas.powerbi.com可能是发布这篇文章的正确地方。我已经在内部传递了链接,它可能至少会得到更多的支持:)
我不知道有任何官方计划有一个公共的独立库来从不同的应用程序调用"M",但这是其他Power BI产品(如Power BI Gateway)用来运行"M"的。
编辑:OP创造了这个想法:https://ideas.powerbi.com/forums/265200-power-bi-ideas/suggestions/16969474-make-powerquery-etl-a-scriptable-language-targetin
现在看来,这是可能的通过电源查询SDK。
这已经启用了像PowerQueryNet这样的项目,它们已经可以以编程方式执行M PowerQuery表达式。
尽管您应该记住,PowerQueryNet的魔力是通过使用未记录的api实现的,并且在商业设置中,可能违反Power BI/PowerQuery EULA。所以要小心行事。
我目前正在努力将其放入一个docker容器,该容器通过REST接收M并以请求的格式返回数据(JSON/CSV/XML)。
如果有的话,所有这些都表明微软满足这个要求是多么容易。这也是一个有趣的洞察,说明微软的软件开发资金可能是多么的不足,或者微软意识到Power BI/Power Query的价值是多么的少:它使精明的业务用户最了解他们的数据,他们可以使用计算机上已经安装的Office应用程序进行大量的数据转换- 巨大的向前迈进。
从您自己的。net应用程序中获得PowerQuery/M功能的一种方法是使用SSIS的PowerQuery Source https://learn.microsoft.com/en-us/sql/integration-services/data-flow/power-query-source?view=sql-server-ver15和独立的DTS包。您可以创建DTSX (SSIS Pkg),并在数据流任务中为ETL使用Power Query数据源,然后通过。net和Managed DTS Runtime以编程方式调用DTS包。这很有效。请记住,SSIS电源查询源需要在您要安装它的机器上的SQL Server(安装依赖检查),并且PowerQuery功能不像PowerBI, SSAS表格中的功能那样完整;例如,不能使用PDF作为数据源。我发现这个模式对各种Excel Doc ETL项目都很有用。