我在SSRS中創建了在特定時間訂閱併發送PDF電子郵件的報告。 我需要完全相同的報告,但具有不同的參數。有什麼辦法可以讓SSRS自動更改參數值,然後發出PDF報告?如何使用一個參數運行SSRS併發送PDF報告,然後更改參數並運行併發送另一個報告?
我可以在哪裏更改我的參數?
我在SSRS中創建了在特定時間訂閱併發送PDF電子郵件的報告。 我需要完全相同的報告,但具有不同的參數。有什麼辦法可以讓SSRS自動更改參數值,然後發出PDF報告?如何使用一個參數運行SSRS併發送PDF報告,然後更改參數並運行併發送另一個報告?
我可以在哪裏更改我的參數?
我會爲此使用數據驅動訂閱。數據驅動訂閱的一個好處是您可以對訂閱進行有意義的描述,而不僅僅是「郵件發送到...」
設置數據驅動訂閱時,步驟3要求輸入有效sql查詢。對於sql查詢中返回的每一行,報表都會被執行。在你的情況,你的查詢可以是簡單的
select 'Value1' as ParamValue
union select 'Value2'
這會給你兩行,每行有不同的參數值。
在步驟4中,您爲收件人,主題行等設置了選項。請注意,所有這些也都可以作爲查詢的一部分。
第5步是設置參數值的位置,並選擇「從數據庫獲取值」,然後在下拉列表中選擇參數名稱。
通過這種方式設置,報表將被執行兩次(對於來自步驟3的查詢中返回的每行一次)。
我使用datadriven訂閱的主要事情之一是我必須將同一報告發送給多個收件人,但每個收件人的參數都不相同。例如,我們向所有銷售代表發送銷售報告。銷售代表是報告的參數,但我也可以自定義訂閱的其他設置。使用包含我們的銷售代表數據的表,我用的是這樣的
SELECT
SalesRepCode
, SalesRepEmail
, 'Sales report for ' + SalesRepName + ' - ' + SalesRepCode + ', as of ' + GETDATE() AS SubjectLine
FROM SalesRepTable
這將返回約70行,每一行對應一個銷售代表。對於每一行,將使用SalesRepCode作爲報表參數生成報表,將SalesRepEmail作爲收件人,將SubjectLine作爲主題行。一個訂閱,同一報告的70個版本。
你有什麼版本的SSRS。我有2014年和更改參數的能力是在同一個屏幕上。 –
哦,我的是2010年。 這是否意味着我不能做到這一點? – Oleg
您是否創建了報告參數?它沒有顯示在屏幕上,表明它不是報告的一部分。 – Bostaevski