Had a user tell me a report had stopped working, only to find out I had left a default GUID in the report, when it was being tested.
Any SQL Query I could run to find a list of reports with anything in the GUID parameter?
The SysMon Error included:
An error has occurred during report processing. ---> Microsoft.ReportingServices.ReportProcessing.ReportProcessingException:
Query execution failed for dataset 'OrderHed'. ---> System.Data.SqlClient.SqlException:
Invalid object name 'OrderHed_922e7373f70e4cb8af249f158c832fc4'.
You can query ReportServer.dbo.Catalog table where ReportServer is is the SSRS report server database. The Parameter column contains an xml listing of all the parameters:
use ReportServer
select cast(Parameter as XML), * from Catalog
select ItemID, Name, Parameter
FROM dbo.Catalog
WHERE Parameter LIKE '%Parameter%TableGUID%DefaultValues%<Value>%[0-9A-F][0-9A-F][0-9A-F][0-9A-F][0-9A-F][0-9A-F][0-9A-F][0-9A-F][0-9A-F][0-9A-F]%/Values%/Parameter%'
I’m not looking for the reports that have been run. But rather reports that have a default TableGUID parameter set in them.
During development of a report I’ll enter a value for the default TableGUID, so I don’t have to enter it everytime I want to preview the report in the SSRS builder.
But I often forget to remove the default TableGUID. Then when that report eventually expires (past the archive period), the info no longer exists, and the report fails to run.