我試圖以編程方式逐個運行一些SSRS訂閱。這些報告都是長期運行的,並且如果同時觸發,報告會一直失敗。目前,我們有大約四種不同的訂閱在一天內分發,確保它們不會發生衝突。不幸的是,這會浪費很多時間。一個接一個地運行多個訂閱一旦完成
我的解決方案是創建一個不計劃在所有相關報告中運行的訂閱,然後讓每個訂閱一個接一個地觸發每個訂閱,每個訂閱一旦完成後:
- 一個作業觸發第一次訂閱
- 使用WAITFOR命令會讓訂閱運行幾秒鐘。
- 使用WAITFOR命令檢查定期訂閱是運行(「待定」)
- 當WAITFOR檢查發現,該報告已發送作業觸發下一個訂閱 等等....
我知道代碼觸發訂閱:
exec [ReportServerWSS].dbo.AddEvent @EventType='SharedSchedule', @EventData='011e83ff-344a-416a-83cb-1a9281e4205b'
我只需要知道如何使用WAITFOR同時做了檢查,然後到檢查結果採取相應措施。
的Jeroen嗨 - 感謝您的回答。不幸的是,這些報告已經過優化,超時設置爲0(最大),並且在一起觸發時仍然無法運行。目前的基礎設施相當陳舊,我們正在開發一個全新的系統(可能需要幾個月的時間)。與此同時,我只需要保持一切順利。 – UnoTurbo