2017-06-16 319 views
0

我們有一個基於Web的報告,我們正在轉向SSRS。在SSRS報告中,我需要一個報告根據參數值的選擇調用三個不同的存儲過程,並且輸出/報告顯示也會不同。SSRS - 基於參數選擇的報告

我相信我可以爲每個過程創建三個不同的數據集,但我不希望所有三個數據集都在用戶選擇「查看報告」時真正運行,因爲這將會是過度執行。

我怎麼能得到只有一個程序被調用,只有正確的報告部分顯示基於參數?

,讓我試着舉個例子,如果上面沒有任何意義:

參數:報告類型 值:日/月/年

如果用戶選擇「日」的報告類型參數,我需要調用「SP_ReportDay」。如果用戶選擇「月」,我需要調用「SP_ReportMonth」,如果用戶選擇「年」,我需要調用「SP_ReportYear」。

每種報告類型都會顯示不同的數據。它與ecah報告的列不同,顯示的數據也不同。

我將如何根據選擇標準顯示/隱藏部分以及調用正確的過程?

+0

你打算如何處理不同的列?這聽起來像三個報告會更好。也許使用子報表,你可以將它作爲一個報告顯示給用戶。 –

+0

我同意三個報告會更好,但不幸的是我的方向是一個報告。我可以看看子報表選項 –

回答

0

如果結果集不同,除了運行所有三個sprocs之外,沒有多少選擇。但是,您可以爲每個sproc添加一個參數,分別告訴它們不要實際返回任何結果。您的報告可以在運行時設置此參數。你必須相應地修改你的sprocs的主體。

+0

我明白你在說什麼。這似乎是提出困境的最佳解決方案。 –

+0

3 sprocs分別綁定到3個tablix,是否有基於參數的tablixs的機會可見性。 – Wendy

+0

@ Wendy看這裏https://stackoverflow.com/questions/22620662/how-to-make-tablix-visible-based-on-parameters-in-ssrs –