Context and Problem
...
0 - Initially, the data related to the report is stored in the dataverse (SQL DB) in an XML format and precisely, in a field [FomrXML] of the table [SystemForm].
...
3 - Because the new identifier is different from the identifier stored in the dataverse, the link is broken and displays an error message in the IFrame deployed in a form of the Power Apps.
Info |
---|
NB: How to redeploy the new link in the dataverse based on the update published in the PBI Service ? |
Here’s a list of limits and contraints to consider :
When we publish a report from the Power BI Desktop, the process will log a message which is only accessible to the Power BI Administrator.
When we publish a report from the Power BI Desktop, no event is triggered by the process and stored in the PBI Service.
When we publish or refresh, we cannot add Power BI alerts.
The refresh of a report is not enough to determine if there was a change from the Power BI Dekstop.
The Power Platform (Power Automate) does not provide a flow which would retrieve the events / behaviors generated by any processes in Power BI Service.
The Microsoft Fabric Platform does not provide a Power BI connector capable of connecting and retreiving data and metadata from the Power BI Service.
When the IFrame in Power Apps displays the error, no event is generated by the Power Platform (Apps) or no information is stored in the dataverse.
Even it’s not possible to catch the client error in the IFrame with a JavaScript deployed in the dataverse.
Solution
Because of the limitations mentioned above, we cannot start from the Power Platform and neither from Power BI. And, so, we need to build our solution based on a schedule and not an event.
Applicative Architecture
The application could be a listener or an executable triggered by a schedule. In Azure, we would mention an Azure Worker Role or an Azure Web Role.
...
4 - To enable the changes in the DB, the service published the table.
Software Architecture
Limitations and recommendations