The ultimate Fabric, Power BI, SQL, and AI community-led learning event. Save €200 with code FABCOMM.
Get registeredEnhance your career with this limited time 50% discount on Fabric and Power BI exams. Ends August 31st. Request your voucher.
Hello
I have a request from a client who wants us to save the date the report was generated and then use it as a parameter for the next report execution to display the data that was updated before it. They want to remark on the newest data in the report.
Do you have any suggestions that come close to this?
Thank you!
Solved! Go to Solution.
Hi @mcantos ,
Thanks for your clarification! You're absolutely right since Power BI doesn’t provide the report execution timestamp dynamically, the best workaround is to simulate that run date using a table like LastRefreshTable.
I created a column in my main table that compares the ModifiedDate (like your lastUpdateDate) with the latest run date from LastRefreshTable. Based on this, I calculated a "Status" column that flags whether the data is "New" (updated after the last run) or "Old".
I tested this setup, and the results correctly reflect what you described: records updated after the last simulated run date show as "New", and others as "Old".
This solution works perfectly for the need you explained. Let me know if you want to automate the refresh date or integrate this with Power Automate too.
Please find the attached pbix file for your reference.
If the response has addressed your query, please "Accept it as a solution" and give a 'Kudos' so other members can easily find it.
Hi @mcantos.,
Thanks for reaching out to the Microsoft fabric community forum.
To highlight newly added rows based on the last report refresh, a parameter is created in Power Query called LastRefreshDate and converted into a one-row table using:
=#table({"LastRefresh"}, {{LastRefreshDate}})
It's important to set the column data type to Date/Time to avoid type mismatch errors in DAX.
In the main data table, a calculated column can be added using:
Here is the DAX :
Status =
VAR LastRefresh = MAX(LastRefreshTable[LastRefresh])
RETURN IF(SalesData[ModifiedDate] > LastRefresh, "New", "Old")
This allows the report to dynamically flag which rows are new based on the refresh date, making it easier to track recently updated data.
Please find the attached pbix file for your reference.
If the response has addressed your query, please Accept it as a solution and give a 'Kudos' so other members can easily find it.
Best Regards,
Tejaswi.
Community Support
Hi @mcantos ,
I wanted to follow up and see if you had a chance to review the information shared. If you have any further questions or need additional assistance, feel free to reach out.
If the response answered your query, kindly “Accept as Solution” and Give “Kudos” to help others in the community benefit from it as well.
Thank you.
Tejaswi.
Hey @v-tejrama , thank you for your reply and following up.
I think I didn't explain myself correctly. I don't need the latest date from the data refresh. I need to save the date when the report runs in the Power BI service to use that date to compare it in the next run.
I have a lastUpdateDate field in my tables that I wanted to compare with the latest run date.
For instance, if the user runs (executes) the report today, the latestRunDate is 06/23/25, and if I run it again next Monday, the data to be displayed would be those where the latestRunDate > lastUpdateDate.
I don't even know if that makes sense. So I think I'll work with some variables to try to mimic the behavior
Thank you again!
Hi @mcantos ,
Thanks for your clarification! You're absolutely right since Power BI doesn’t provide the report execution timestamp dynamically, the best workaround is to simulate that run date using a table like LastRefreshTable.
I created a column in my main table that compares the ModifiedDate (like your lastUpdateDate) with the latest run date from LastRefreshTable. Based on this, I calculated a "Status" column that flags whether the data is "New" (updated after the last run) or "Old".
I tested this setup, and the results correctly reflect what you described: records updated after the last simulated run date show as "New", and others as "Old".
This solution works perfectly for the need you explained. Let me know if you want to automate the refresh date or integrate this with Power Automate too.
Please find the attached pbix file for your reference.
If the response has addressed your query, please "Accept it as a solution" and give a 'Kudos' so other members can easily find it.
Thank you so much for this!
Hi @mcantos
Power BI does not store a historical copy of the data. What gets loaded into the model upon refresh is based on the latest available data. That is true even if you don't enable the load for a query. The historical data, thus, must exist somewhere. You can run a query against a dataset using Power Automate that generates a summary of the data or whatever kpis you want to track and automatically save that as a csv file in sharepoint folder and then use that folder as a data source. Please refer to this https://www.matthewdevaney.com/power-automate-run-a-query-against-a-power-bi-dataset/
User | Count |
---|---|
75 | |
70 | |
39 | |
30 | |
28 |
User | Count |
---|---|
104 | |
95 | |
51 | |
48 | |
46 |