Starting December 3, join live sessions with database experts and the Microsoft product team to learn just how easy it is to get started
Learn moreGet certified in Microsoft Fabric—for free! For a limited time, get a free DP-600 exam voucher to use by the end of 2024. Register now
Hello Community,
We created a customer facing product using Power BI embedded. We created a tool to automate the uploading of our Power BI reports using the Power BI RESTful API. Prior to uploading a report update, we delete the existing report (if exists) then upload the update as shown below..
String reportId = GetReportID(report.reportName, report.groupId, client);
if (reportId != null)
{
client.Reports.DeleteReportInGroup(report.groupId,reportId.ToString());
}
We have seen that the data sets from previous versions of the report stay behind and they are auto-refreshing these causes our Azure SQL Server DTU’s to be constantly in use. We have about 20 reports and we are constantly uploading updates, therefore the number of datasets being left behind are increasing. You can see our datasets being duplicated every time we upload a new report.
My question is (and it may have an obvious answer, If so, apologize in advance) , should we manually delete the dataset first, then delete the report every time we update a report using the RESTful API?
If so, is something like the below code something we need to add prior to the client.Reports.DeleteReportInGroup(..) method??
var dsId = GetDatasetID(report.reportName, report.groupId, client);
client.Datasets.DeleteDatasetById(dsId.ToString());
Thank you all in advance.
Emilio
Solved! Go to Solution.
Hi @EChemali,
Based on research, current rest api contains refresh dataset function, but it seems like only suitable configured(setting gateway and other refresh options) datasets.(it similar as manually refresh)
For deatsets which manually create by rest api and push to power bi service, you can only remove original table rows and add new rows to achieve refresh option. Otherwise I think it will create duplicate datasets which you mentioned.
Notice: current rest api not has api to update existed tables, it also not contains function to update/replace original rows.
BTW, for operation rest api and power bi embedded, you can post to developer forum to get further support.
Regards,
Xiaoxin Sheng
Hi @EChemali,
Based on research, current rest api contains refresh dataset function, but it seems like only suitable configured(setting gateway and other refresh options) datasets.(it similar as manually refresh)
For deatsets which manually create by rest api and push to power bi service, you can only remove original table rows and add new rows to achieve refresh option. Otherwise I think it will create duplicate datasets which you mentioned.
Notice: current rest api not has api to update existed tables, it also not contains function to update/replace original rows.
BTW, for operation rest api and power bi embedded, you can post to developer forum to get further support.
Regards,
Xiaoxin Sheng
Thank you Xiaoxin for your help
Starting December 3, join live sessions with database experts and the Fabric product team to learn just how easy it is to get started.
March 31 - April 2, 2025, in Las Vegas, Nevada. Use code MSCUST for a $150 discount! Early Bird pricing ends December 9th.
User | Count |
---|---|
37 | |
27 | |
17 | |
16 | |
8 |
User | Count |
---|---|
45 | |
38 | |
34 | |
18 | |
15 |