The ultimate Microsoft Fabric, Power BI, Azure AI, and SQL learning event: Join us in Stockholm, September 24-27, 2024.
Save €200 with code MSCUST on top of early bird pricing!
Find everything you need to get certified on Fabric—skills challenges, live sessions, exam prep, role guidance, and more. Get started
Hi,
we have created some PBI reports that are connected to snowflake Dev environment. The connection has been made during get data and using the "Snowflake connection"
We have filled in the Server and warehouse.
During deployment we want to update the servername to connect the report to another snowflake environment ACC or PROD.
There is an API to update the datasource (https://learn.microsoft.com/en-us/rest/api/power-bi/datasets/update-datasources-in-group)
we use that for other connections to update like Sql, Odata,..
but for snowflake we always receive an error:
Invoke-RestMethod: {"error":{"code":"InvalidRequest","message":"Parameter UpdateDetails is missing or invalid"}}
we're sending this updatedetails with the API call, it looks like they are oke:
'updateDetails': [{
'datasourceSelector': {
'datasourceType': 'Extension',
'connectionDetails': {
'path': 'XXX.west-europe.azure.snowflakecomputing.com;POWERBI_WH',
'kind': 'Snowflake'
}
},
'connectionDetails': {
'path': 'YYY.west-europe.azure.snowflakecomputing.com;POWERBI_WH',
'kind': 'Snowflake'
}
}]
How can we update the connectiondetails for a Snowflake connection? because you can also not use parameters in the connection.
Kr,
Koen
Solved! Go to Solution.
That's weird but it look like you have an error in your code that make the request. if you want to make it easier for the text in the parameter try entering data in a new table with two columns. One of them is going to be the name of the environment and the second column the server name. If you need a third one for db name you can also create it. Then create a parameter that will filter the table with environment name.
Now for regular tables just take the first row in the entered data table to complete de server.
That way you can add new environments or change them dynamically in a more secure way.
I hope that make sense
Happy to help!
Hi. I usually recommend using parameters to change the data source. Just like the examples on youtube that they use to change it manually, but using the API
https://learn.microsoft.com/en-us/rest/api/power-bi/datasets/update-parameters-in-group
The issue updating the sources directly is that every sources has different structure for the body. That can make the request quite difficult.
If you build on your reports a hidden dummy table with prod and dev environment that will filter by a parameter you can even use the same code/script for every report. You can take it to the next level.
I hope that helps,
Happy to help!
You are not able to update the data source.
When you use parameters to configure the connection. You are not able to update the paramaters through API calls. The data source is snowflake.
Parameters:
Even in the Power Bi portal, the parameters cannot be edited, the fields are disabled.
That's weird but it look like you have an error in your code that make the request. if you want to make it easier for the text in the parameter try entering data in a new table with two columns. One of them is going to be the name of the environment and the second column the server name. If you need a third one for db name you can also create it. Then create a parameter that will filter the table with environment name.
Now for regular tables just take the first row in the entered data table to complete de server.
That way you can add new environments or change them dynamically in a more secure way.
I hope that make sense
Happy to help!
Join the community in Stockholm for expert Microsoft Fabric learning including a very exciting keynote from Arun Ulag, Corporate Vice President, Azure Data.
Check out the August 2024 Power BI update to learn about new features.
Learn from experts, get hands-on experience, and win awesome prizes.
User | Count |
---|---|
49 | |
21 | |
12 | |
11 | |
10 |
User | Count |
---|---|
120 | |
32 | |
31 | |
21 | |
20 |