我想测试嵌入式PowerBI,所以我下载了能够发布pbix文件并嵌入它的the sample app。 因此,我使用DirectQuery选项创建了一个最容易使用Azure SQL的PowerBI文件作为基础数据源。
我相信connectionstring的格式正确,因为它已成功更新。我还尝试将其指向另一个SQL数据库,然后错误显示错误消息中的其他SQL数据库。
1)我认为这可能because the Gateway does not get the credentials我给它的是正确的吗? 2)有人知道我该如何解决这个问题?
提前致谢!
答案 0 :(得分:0)
正如@Cuong Le所说,这首先是微软的问题。 问题解决后,我仍然收到BadRequest异常。尝试使用PowerBI-CLI更新凭据后,问题变得更加清晰。我需要将Azure IP地址的权限授予相关的SQL数据库。一旦我这样做,我就能够更新凭证。不幸的是,PowerBI API SDK的异常消息不如PowerBI-CLI消息好。我也尝试使用PowerBI API SDK,它也有效。
我收到的异常消息如下:
[powerbi] {"错误":{"代码":" DM_GWPipeline_Gateway_DataSourceAccessError"," pbi.error":{&#34 ;代码":" DM_GWPipeline_Gateway_DataSourceAccessError""参数":{},"细节":[{"代码":&#34 ; DM_ErrorDetailNameCode_UnderlyingErrorCode""细节" {"类型":1,"值":" -2146232060"}},{& #34;代码":" DM_ErrorDetailNameCode_UnderlyingErrorMessage""细节" {"类型":1,"值":&#34 ;无法打开服务器' engiep-dev-weeu-sql'登录请求。具有IP地址&x; xx.xx.xx.213'的客户端不允许访问服务器。要启用访问,请使用Windows Azure管理门户或在主数据库上运行sp_set_firewall_rule,以便为此IP地址或地址范围创建防火墙规则。此更改最多可能需要五分钟才能生效。"}},{"代码":" DM_ErrorDetailNameCode_UnderlyingHResult","详细信息":{ "类型":1,"值":" -2146232060"}},{"代码":" DM_ErrorDetailNameCode_UnderlyingNativeErrorCode" "细节" {"类型":1,"值":" 40615"}}]}}}
要使用的正确连接字符串格式为:
Data Source = yourDataSource; Initial Catalog = yourDataBase; User ID = yourUser; Password = yourPass;
(不要在任何地方使用引号。)
答案 1 :(得分:0)
我遇到了同样的问题。这也是github上的一个悬而未决的问题。
附图: enter image description here
为了解决这个问题,我使用了来自NPM的PowerBI Cli 1.0.4。并使用了更新连接操作,(记得添加-d)。
powerbi update-connection -c [workspace name] -k [access key] -w [workspace id] -d [dataset id] -s "Data Source=xxx.database.windows.net;Initial Catalog=xxx;User ID=xxx;Password=xxx"
如果失败,请再次执行(更新 - 连接操作)。
问题出现了,因为有时数据源凭据不会转移到工作区。
对于使用直接查询的报告,在导入完成后,永远不会使用pbix带来凭据。所有私人信息都被删除了。
希望这有帮助! 感谢