圖表插件FineReport教程:[5]嵌入式主子表?

嵌入式主子報表特點是在單元格中嵌入獨立的報表模板,嵌入的模板稱為子報表,嵌入子報表後的整體稱為主報表。

各子報表間格式可以不對齊,子表與主表的格式也可以不對齊,子報表能夠獲取主表中的值。如下圖員工銷售一覽表:

圖表插件FineReport教程:[5]嵌入式主子表

工具/原料

圖表插件:FineReport

電腦

方法/步驟

製作主報表

如下圖設計主表:

在主表中定義一個報表參數,參數名為銷售員,通過參數查詢某一個銷售員的個人信息及訂單信息。

使用默認的參數界面,銷售員參數控件選擇下拉框,實際值為僱員表中的僱員ID,顯示值為對應的姓名。具體可查看參數定義與參數面板製作章節。

圖表插件FineReport教程:[5]嵌入式主子表

添加不同參數的子報表

子報表sub_1.cpt說明

子報表1:%FR_HOME%\WebReport\WEB-INF\reportlets\doc\Advanced\MasterReport\sub_1.cpt。

該子表中通過參數“ID”查詢出對應銷售員的個人信息。SQL語句為:SELECT * FROM 僱員 where 僱員ID = ${ID},表樣為:

圖表插件FineReport教程:[5]嵌入式主子表

右擊主表B3單元格,單元格元素>插入子報表,彈出編輯子報表對話框,選擇子表1所在路徑;

添加參數ID(子表中的參數名稱),值使用公式$銷售員,將主表的銷售員參數值傳遞給子表1的ID參數,如下圖設置:

圖表插件FineReport教程:[5]嵌入式主子表

添加相同參數的子報表

子報表sub_2.cpt說明

子報表2:%FR_HOME%\WebReport\WEB-INF\reportlets\doc\Advanced\MasterReport\sub_2.cpt。

該子表中通過參數“銷售員”查詢出對應銷售員的訂單信息。SQL語句為:SELECT * FROM 訂單 where 僱員ID = ${銷售員},表樣為:

圖表插件FineReport教程:[5]嵌入式主子表

右擊主報表D5單元格,單元格元素>插入子報表,彈出編輯子報表對話框,選擇子表2所在路徑;

由於子表2的參數名與主表中的參數名相同,這時可以不設置傳遞參數,直接選擇繼承報表的參數。

圖表插件FineReport教程:[5]嵌入式主子表

保存與預覽

保存模板,點擊設計器中的分頁預覽,效果如上。模板效果在線查看請點擊super.cpt

已完成模板,可參考:%FR_HOME%\WebReport\WEB-INF\reportlets\doc\Advanced\MasterReport\super.cpt。

教程, 報表, 嵌入式, 圖表, 主子,
相關問題答案