Forum Discussion
Power BI Service Excel Export Fails When Using System.TimeZoneInfo.ConvertTimeFromUtc in RDL Express
- 1 month ago
This is most likely due to a Power BI Service sandbox limitation rather than an issue with your expression itself.
System.TimeZoneInfo.FindSystemTimeZoneById() and System.TimeZoneInfo.ConvertTimeFromUtc() rely on the underlying .NET runtime and Windows time zone registry. In Power BI Report Builder (running locally), these APIs have access to the local OS configuration, so the export succeeds. However, in the Power BI Service, paginated reports run in a managed environment where certain .NET methods and time zone resources may not be fully supported during rendering/export, which can lead to the generic "Export failed" error.
As a workaround, instead of using:
System.TimeZoneInfo.ConvertTimeFromUtc(
System.DateTime.UtcNow,
System.TimeZoneInfo.FindSystemTimeZoneById("Pacific Standard Time")
)you could:
- Use a dataset field (GENERATED_ON) populated by SQL and perform the timezone conversion in the query itself:
SELECT SYSDATETIMEOFFSET() AT TIME ZONE 'Pacific Standard Time' AS GENERATED_ON_PST
- Or, if DST handling is not critical, use a simple offset:
=Format(DateAdd("h", -8, System.DateTime.UtcNow),
"dd-MMM-yyyy hh:mm tt") & " PST"- Another option is to use the built-in report execution time:
=Format(Globals!ExecutionTime,
"dd-MMM-yyyy hh:mm tt")and convert it in the source query if a specific timezone is required.
I'd recommend moving the timezone conversion to the data source (SQL) whenever possible, as it's generally more reliable for Power BI Service exports and avoids differences between the local Report Builder environment and the Service rendering engine.
Has anyone else seen TimeZoneInfo methods fail specifically during Power BI Service Excel exports? It would be interesting to know whether this is an undocumented limitation or a recent regression.
Hi PowerBI_freak_1,
Thank you for reaching out to the Microsoft Fabric Community Forum.
Thanks for the update. Since the export to excel is still failing, you could try a small test to narrow it down. Create a simple paginated report with just a few rows and a textbox that uses only the System.TimeZoneInfo.ConvertTimeFromUtc(...) expression, then export it to Excel from the Power BI Service. If that works, it would suggest the issue is specific to the original report rather than the expression itself.
You could also try using just System.DateTime.UtcNow without the timezone conversion. That should help determine whether the issue is related to the timezone conversion or simply evaluating the current time in the report expression. If it still fails even in a simple report, it would suggest the issue isn't specific to your report design and may require further investigation as a service-side behavior.
Thanks and Regards.