Don't miss your chance to take the Fabric Data Engineer (DP-700) exam on us!
Learn moreWe've captured the moments from FabCon & SQLCon that everyone is talking about, and we are bringing them to the community, live and on-demand. Starts on April 14th. Register now
I am using Power BI Report Server with scheduled dataset refresh enabled for my reports. I would like to display the last successful data refresh date and time directly in a Power BI dashboard hosted on Report Server.
I understand that the ReportServer database contains tables and views such as Catalog, Subscriptions, Schedule, and ExecutionLog3, but it is not clear which one reliably records the actual dataset refresh execution time.
From Microsoft documentation, it appears that report executions are logged in ExecutionLog3, but the documentation does not clearly state how to identify dataset refresh events specifically.
Could someone clarify:
Which table or view in the ReportServer database reliably stores the dataset refresh execution time?
How can we filter only refresh events (and not normal report views)?
What is the recommended or standard approach to capture and display the last refresh timestamp in a Power BI Report Server dashboard?
Solved! Go to Solution.
Hi @MM_955,
In Power BI Report Server, the ExecutionLog3 view in the ReportServer database can indicate when a refresh request begins, such as when RequestType is set to 'Refresh Cache', but it does not always clearly show when the refresh completes successfully. This can make it challenging to use execution logs alone to identify the last successful refresh. An easier method is to include a simple query in the dataset like select getdate() AS LastRefreshTime, which records the current timestamp during the refresh. This value can then be shown in the report so users know when the data was last refreshed successfully..
Thank you.
Hi @MM_955,
Checking in to see if your issue has been resolved. let us know if you still need any assistance.
Thank you.
Thank you for your response, I did checked the executionlog3, this table captures when refresh starts but not showing it is completed successfully or not. basically I need to capture the time it was completed. if this complicated approach what is the alternative ? i need to show last refresh date and time (successfull) in the dashboard.
HI @MM_955,
Have you had a chance to review the solution we shared earlier? If the issue persists, feel free to reply so we can help further.
Thank you.
Hi @MM_955,
In Power BI Report Server, the ExecutionLog3 view in the ReportServer database can indicate when a refresh request begins, such as when RequestType is set to 'Refresh Cache', but it does not always clearly show when the refresh completes successfully. This can make it challenging to use execution logs alone to identify the last successful refresh. An easier method is to include a simple query in the dataset like select getdate() AS LastRefreshTime, which records the current timestamp during the refresh. This value can then be shown in the report so users know when the data was last refreshed successfully..
Thank you.
Hi @MM_955,
Have you had a chance to review the solution we shared earlier? If the issue persists, feel free to reply so we can help further.
Thank you.
Hi @MM_955,
Thank you @tayloramy, for your insights,
In Power BI Report Server, when a scheduled refresh plan runs, it creates entries in the ExecutionLog3 view of the ReportServer database. As noted in Microsoft documentation, a RequestType of Refresh Cache shows that a scheduled refresh plan was executed. The refresh process may also record ItemAction values like DataRefresh and SaveToCatalog, which indicate data refreshes and saving the updated model to the catalog. These log entries can be used to track refresh activity and execution times.
Troubleshoot scheduled refresh in Power BI Report Server - Power BI | Microsoft Learn
Power BI report scheduled refresh in Power BI Report Server - Power BI | Microsoft Learn
Thank you
Hi @MM_955,
The easiest way to do this is to make a calculated table in your model with one column, and that column be the NOW() M function.
Then when your model refreshes, this table will be re-evaluated and display the time that the model was refreshed.
I would avoid trying to dig through the metadata database, that's never a fun thing to dig through in my experience.
Proud to be a Super User! | |
If you have recently started exploring Fabric, we'd love to hear how it's going. Your feedback can help with product improvements.
A new Power BI DataViz World Championship is coming this June! Don't miss out on submitting your entry.
Share feedback directly with Fabric product managers, participate in targeted research studies and influence the Fabric roadmap.
| User | Count |
|---|---|
| 3 | |
| 2 | |
| 2 | |
| 2 | |
| 1 |