Таблица dbo.Catalog сервера отчетов имеет как CreationDate, так и ModifiedDate.
В рамках расследования я собрал запрос, чтобы вывести список запросов в файлах RDL и выполнить простой CHECKSUM для этого, чтобы упростить проверку на смещение.
Конечно, вы можете сделать то же самое для всего поля Content намного проще или лучше открыть XML, используя реальную обработку XML.
Надеюсь, это полезно;
DECLARE @reftextstart VARCHAR(255);
DECLARE @reftextend VARCHAR(255);
SELECT @reftextstart = '%<CommandText>%';
SELECT @reftextend = '</CommandText>';
SELECT SQ2.Path,
SQ2.Name,
SQ2.CreationDate,
SQ2.ModifiedDate,
ReportQuery,
CHECKSUM(ReportQuery) ReportQueryChecksum
FROM
(
SELECT SQ.Path,
SQ.Name,
SQ.CreationDate,
SQ.ModifiedDate,
CASE PATINDEX(@reftextstart, Report)
WHEN 0 THEN
N''
ELSE
SUBSTRING(
Report,
PATINDEX(@reftextstart, Report) + LEN(@reftextstart) - 2,
CHARINDEX(
@reftextend,
SUBSTRING(
Report,
PATINDEX(@reftextstart, Report) + LEN(@reftextstart) - 2,
1024
)
) - 1
)
END ReportQuery
FROM
(
SELECT TOP 1000
[Path],
[Name],
[CreationDate],
[ModifiedDate],
[ExecutionTime],
CONVERT(VARCHAR(MAX), CONVERT(VARBINARY(MAX), Content)) Report
FROM [ReportServer].[dbo].[Catalog]
WHERE Name IN ( N'Report1', N'Report2' )
) SQ
) SQ2
ORDER BY [Path],
Name;