【T-SQL】【SSRS】 查詢報表伺服器SSRS的訂閱者與報表路徑
環境:SQL 2008 R2
話說,有位年資較久的同事退休了,他手上有訂閱不少過往曾經開發過的報表。
因此部分沒用的要移除,部分要移交給其他同事。
所以利用T-SQL 查詢出有關他接收的報表有哪些與報表路徑,來進行檢視
主要使用到的有兩張TABLE
- ReportServer.dbo.Catalog :紀錄報表伺服器上的資料內容
- ReportServer.dbo.Subscriptions:報表器伺服器訂閱的設定。
所以我們只要將兩個資料表用報表ID串在一起就可以得到某郵件帳號接收到那些報表。
SELECT S.[Report_OID] AS 報表代碼
,S.[ExtensionSettings] AS 收件者郵件參數
,S.[Description] AS 說明
,C.[Path] AS 存放路徑
,C.[Name] AS 報表名稱
,C.[Type] AS 資料種類
,[CreationDate]
FROM [ReportServer].[dbo].[Subscriptions] AS S
INNER JOIN [ReportServer].[dbo].[Catalog] AS C
ON S.[Report_OID] = C.ItemID
WHERE [ExtensionSettings] like '%alan@aa.com%' -- 收件者郵件內容
AND C.[Type] = 2 --2是指報表
這樣就可以知道使用者是收到哪些報表了。
水滴可成涓流,涓流可成湖泊大海。
汲取累積知識,將知識堆積成常識;將常識探究成學識;將學識簡化為知識;授人自省。