我們有很多SSRS報告,我們希望根據數據庫中的數據通過電子郵件自動發送給員工。 SSRS具有數據驅動報告功能,但關鍵缺失組件是指示報告已成功處理/發送的任何方式。更好的方式來自動發送電子郵件數據驅動的Sql Server報告服務報告?
例如,讓我們說一些事件觸發記錄進入數據庫表說,員工X需要獲得成本報告的副本項目Y.
這很容易安排驅動的數據訂閱X報告的成本報告,顯然無法將XY記錄標記爲「不再發送此報告」。
我們可以在某些情況下更改選擇報表數據的SP以進行此更新,但結果是,如果報表存在問題或者發送電子郵件存在問題(比如說網絡關閉),那麼系統會認爲報告沒有發送。
是的,我們可以在某些情況下編寫我們自己的小型服務/應用程序來讀取數據庫,抓取報告,通過電子郵件發送並重新更新數據庫,但這似乎是某種不應該像現在這樣困難。
我在這裏尋找任何建議。這肯定是人們想要處理報告最常見的事情之一,但我沒有看到解決這個問題的任何地方,或者我們可以購買的產品來消除缺陷,或者我們可以使用的開源項目等等。要麼完全滾動我們自己的系統,要麼堅持用非常糟糕的方法來提供這些報告。
您應該可以查看SMTP日誌以查看報告是否已發送。由於我沒有SSRS的企業版本,我以編程方式生成訂閱以發送給用戶(首先查詢結果)。然後我知道誰有訂閱或沒有訂閱。但我不知道郵件是否已被收到或閱讀。 – SQLMason 2011-05-12 16:25:41
@丹安德魯斯,試圖解析程序解析smtp日誌似乎不是一個現實的選擇。無論解析什麼應用程序,日誌都不知道報告/訂閱是如何導致電子郵件被髮送到特定的電子郵件地址的,並且它不知道需要更新的表/密鑰(s)將給定的報告標記爲已發送。即使在您動態創建訂閱的情況下,如果我錯了,請糾正我,但如果報告中的SELECT或報告定義或網絡等出現問題,您永遠不會知道。 – chrismay 2011-05-12 17:28:34
generalyl我的報告基於某種東西的狀態運行,併發送給它所關注的人,並不斷髮送郵件(每週一次),直到狀態達到應有的狀態。在reportserver數據庫中,您可以看到傳遞給報告的參數,但我不知道這是否對您有幫助。 – DForck42 2011-05-17 20:25:12