共用方式為


子報表 (報表產生器 3.0 和 SSRS)

子報表是一個報表項目,可在主報表的主體內顯示另一個報表。報表中子報表的概念類似於網頁中的框架。它用於在報表中內嵌報表。任何報表都可以做為子報表。顯示為子報表的報表儲存在報表伺服器上,通常會與父報表儲存在同一個資料夾中。您可以設計父報表來傳遞參數給子報表。子報表可以在資料區域中重複,使用參數在每一個子報表執行個體中篩選資料。

子報表

在此圖中,[銷售訂單] 主報表中顯示的連絡資訊實際上來自 [連絡人] 子報表。

[!附註]

您可以在 Business Intelligence Development Studio 中的報表產生器 3.0 及報表設計師中建立及修改報表定義 (.rdl)。每一個撰寫環境都提供了不同的方式讓您建立、開啟,以及儲存報表和相關的項目。如需詳細資訊,請參閱在報表設計師及報表產生器 3.0 (SSRS) 中設計報表,位於 microsoft.com 網站上。

比較子報表和巢狀資料區

如果您想要使用子報表顯示不同群組的資料,請考慮改用資料區,例如資料表、矩陣和圖表。只搭配資料區使用報表時,其執行效能可能會比包含子報表的報表更好。

在單一資料區域內從相同的資料來源中巢狀資料群組時,請使用資料區域。在單一資料區域內從不同的資料來源中巢狀資料群組,請使用子報表,重複使用多個父報表中的子報表,或是在另一個報表中顯示獨立報表。例如,您可以在另一個報表主體中置放多個子報表,以建立「簡報書籍」。

資料區與子報表的功能和彈性相同,但效能更佳。這是因為報表伺服器會將子報表的每一個執行個體,都視為獨立的報表來處理,所以可能會影響效能。如需詳細資訊,請參閱<巢狀資料區域 (報表產生器 3.0 和 SSRS)>。

在子報表中使用參數

若要從父報表傳遞參數至子報表,請在做為子報表使用的報表中定義一個報表參數。當您在父報表中放置子報表時,您可以選取報表參數,以及要從父報表中傳遞給子報表中之報表參數的值。

[!附註]

您從子報表選取的參數是報表參數,而非查詢參數。如需有關參數的詳細資訊,請參閱<使用參數連接到其他報表 (報表產生器 3.0 和 SSRS)>。

您可以在報表主體或資料區域中放置一個子報表。如果您在資料區域中放置一個子報表,子報表將在資料區域中重複群組或資料列的每一個執行個體。若要從群組或資料列傳遞值給子報表,請在子報表值屬性中,針對包含要傳遞給子報表參數的值欄位,使用欄位運算式。

如需有關使用子報表的詳細資訊,請參閱<如何:加入子報表和參數 (報表產生器 3.0 和 SSRS)>。

指定子報表名稱和位置

您可以設計主報表,以便在相同報表伺服器上的不同資料夾中指定子報表。

您用來指定子報表的語法取決於報表伺服器處於原生模式或 SharePoint 整合模式而定。如需詳細資訊,請參閱<指定外部項目的路徑 (報表產生器 3.0 和 SSRS)>。

在報表產生器中,若要預覽主報表中的子報表,則兩個報表都必須位在相同的報表伺服器上,或者您必須指定子報表的完整路徑。