加入子報表和參數 (報表產生器及 SSRS)
當您想要建立主報表,而該主報表為多個相關報表的容器時,請在報表中加入子報表。 子報表是另一個報表的參考。 若要透過資料值讓報表產生關聯 (例如,讓多個報表都顯示同一位客戶的資料),您必須設計參數化報表 (例如,顯示特定客戶之詳細資料的報表) 當做子報表。 當您將子報表加入到主報表時,可以指定要傳遞給子報表的參數。
您也可以將子報表加入到資料表或矩陣中的動態資料列或資料行。 當處理主報表時,將會針對每一個資料列處理子報表。 在此情況下,請考慮是否可以使用資料區或巢狀資料區來達到所要的效果。
若要將子報表加入至報表,您必須先建立做為子報表的報表。 如需有關建立子報表的詳細資訊,請參閱<子報表 (報表產生器及 SSRS)>。
[!附註]
您可以在報表產生器以及 SQL Server Data Tools 的報表設計師中建立和修改報表定義 (.rdl)。每種撰寫環境都會提供不同的方式來建立、開啟和儲存報表與相關的項目。如需詳細資訊,請參閱 microsoft.com 網站上的<在報表設計師及報表產生器中設計報表 (SSRS)>。
若要加入子報表
在 [插入] 索引標籤上,按一下 [子報表]。
在設計介面上,按一下報表上的某個位置,然後將方塊拖曳至所需的子報表大小。 另外,您也可以按一下設計介面來建立預設大小的子報表。
以滑鼠右鍵按一下子報表,再按一下 [子報表屬性]。
在 [子報表屬性] 對話方塊中,於 [名稱] 文字方塊內輸入名稱或是接受預設值。 名稱在報表內必須是唯一的。 根據預設,系統會指派一般名稱,例如 Subreport1 或 Subreport2。
在 [將此報表當成子報表] 方塊中,按一下 [瀏覽],或輸入報表的名稱。 建議您按一下 [瀏覽],因為系統將自動指定子報表的路徑。 您可以透過幾種方式指定報表。 如需詳細資訊,請參閱<指定外部項目的路徑 (報表產生器及 SSRS)>。
(選用) 如果子報表橫跨多頁,針對 [省略分頁符號上的框線] 按一下 [是],就不會在子報表中轉譯框線。
按一下 [確定]。
指定要傳遞給子報表的參數
在 [設計] 檢視中,以滑鼠右鍵按一下子報表,再按一下 [子報表屬性]。
在 [子報表屬性] 對話方塊中,按一下 [參數]。
按一下 [加入]。 新的資料列就會加入至參數方格。
在 [名稱] 文字方塊中,輸入子報表中的參數名稱或從清單方塊加以選擇。 此名稱必須與子報表中的報表參數 (而非查詢參數) 相符。
在 [值] 清單方塊中,輸入或選取要傳遞給子報表的值。 這個值可以是靜態文字,也可以是參考主報表中的欄位或其他物件的運算式。
[!附註]
在報表產生器中,如果 [參數] 清單遺漏某參數,而子報表中定義了預設值,則系統會正確處理子報表。
在報表設計師中,子報表所需要的所有參數都必須包括在 [參數] 清單中。 如果遺漏必要的參數,子報表便無法正確顯示在主報表內。
重複步驟 3-5 來指定每個子報表參數的名稱和值。
若要刪除子報表參數,請在參數方格中按一下參數,然後按一下 [刪除]。
若要變更子報表參數的順序,請按一下參數,然後按一下向上按鈕或向下按鈕。
變更子報表參數的順序並不會影響子報表的處理。