2010-04-14 110 views
1

我是SQL Server報告服務的新手,並試圖破譯現有報告。這沒什麼不好,但我注意到它有兩個定義的報告數據集。 (它們是通過單獨的存儲過程生成的)sql server 2005報告服務 - 如何在報告中使用多個數據集

我想弄清楚在哪裏以及如何將報表數據集鏈接在一起,以便Fields集合具有兩組可用的列,並且報表具有單個行集來遍歷。報告佈局中是否有定義數據集連接的部分?我使用Visual Studio 2005來設計和預覽報告fwiw。

感謝您的幫助!

回答

1

因爲我看不到報告。我至少可以提出這個建議。許多人使用第二個數據集來選擇參數的值。也許你的報告有一個參數使用第二個數據集來顯示該參數的選項列表。

+0

嗨,約翰 - 我不相信它使用第二個數據集作爲選擇值,因爲報告中的Fields集合使用了兩個數據集字段的混合。但是,似乎其中一個數據集正在報告的頁眉/頁腳中使用,而另一個則位於中間:詳細信息部分和幾個分組。我想我仍然有點困惑的一個問題是兩個數據集的列在Fields集合中是如何出現的?如果兩列具有相同的名稱會怎麼樣? – larryq 2010-04-14 21:34:39

+0

Larry,即使兩個數據集具有相同名稱的列,數據集的名稱也不同。您提到使用一個數據集來填充頁眉和頁腳內容,另一個數據集正在填充細節。這兩個數據集沒有鏈接但分開,在這種情況下可以分開處理。我敢打賭,如果你運行查詢填充頁眉和頁腳的數據集,你可能會出現兩行(如果頁腳有單獨的內容)。 – 2010-04-15 01:30:02

+0

約翰,你是對的,他們正在被分開處理。我對SQL Reporting Services很陌生,以至於我沒有意識到每個報表都有自己的可設置的DataSetName屬性。我認爲Fields集合覆蓋了整個報表,就像SQL查詢可以連接來自不同表格的列一樣。對困惑感到抱歉! – larryq 2010-04-19 15:38:25

2

在很多情況下我們需要從多個數據集中使用。通常這些數據集會得到相同的報告參數並返回結果。例如,假設您有一份報告可以讓您獲得學生通過的課程列表。在這份報告中你想知道這個學號的最小和最大值。對於此報告,您將獲得學生ID作爲輸入參數,並將此參數傳遞給第一個數據集並獲取傳遞的課程列表。第二個數據集也得到這個參數來生成學生數的最大值和最小值。

這兩個數據集都會得到這個參數。可能這個參數是數據集的共同點。

相關問題