查询以查找具有嵌入数据源的ssrs报告

时间:2017-03-03 09:56:45

标签: reporting-services ssrs-2008 ssrs-2008-r2 ssrs-2012 reportingservices-2005

我有数百个报告部署在MSSQL报告服务器中。其中很少有报告嵌入了数据源,其余报告都有共享数据源。是否有任何查询或简单方法来区分具有共享和嵌入数据源的报告?

1 个答案:

答案 0 :(得分:2)

您可以使用以下查询:

WITH XMLNAMESPACES(DEFAULT 'http://schemas.microsoft.com/sqlserver/reporting/2010/01/reportdefinition')

SELECT C.Name,
    CONVERT(XML,CONVERT(VARBINARY(MAX),C.Content)).exist('/Report/DataSources/DataSource/ConnectionProperties') AS EmbeddedSourcePresent,
    CONVERT(XML,CONVERT(VARBINARY(MAX),C.Content)).exist('/Report/DataSources/DataSource/DataSourceReference') AS SharedSourcePresent
FROM ReportServer.dbo.Catalog C
     WHERE C.Content is not null
      AND C.Type = 2

您可能需要根据ssrs版本更改命名空间。我希望这会有所帮助。