圖表控件FineReport教程:[4]表單式主子表?

單表式主子報表特點是用單個報表實現主子表的業務邏輯。一般包含多個數據集,通常由自由格式部分及列表格式部分,且為一對多,父與子的關係,如下圖上方為訂單信息,下方這個訂單的明細:

這樣的主子報表製作比較方便,且可以用於填報,因此稱之為表單式主子報表。

圖表控件FineReport教程:[4]表單式主子表

工具/原料

圖表控件:FineReport

電腦

方法/步驟

打開報表

打開報表%FR_HOME%\WebReport\WEB-INF\reportlets\doc\Primary\FreeReport\Free.cpt。在該報表基礎上來實現表單式主子表。

新增數據源

新增數據集ds2 ,SQL語句為SELECT * FROM [訂單明細]。

表樣設計

在原報表基礎上,添加子表區域:

圖表控件FineReport教程:[4]表單式主子表

綁定數據列

將子表字段拖入對應單元格內,並作相應的設置。

單元格數據集數據列屬性

B9ds2產品ID列表,從上到下擴展,居中,左父格為:C2,其餘默認

C9ds2單價從上到下擴展,居中,其餘默認

D9ds2數量從左到右擴展,居中,其餘默認

E9ds2折扣從左到右擴展,居中,其餘默認

單元格A9輸入公式:=&B9,左父格為B9,給B9單元格擴展出來的數據編號;

單元格F9輸入公式:=C9*D9*(1-E9),表示求產品的金額;

給每個訂單進行合計,A10單元格設置父格為C2,並在F10中輸入公式:=sum(F9)。

建立主子表的關聯

主子表有著一個相同的數據列:訂單ID,可通過過濾將兩個表中的訂單ID關聯起來,雙擊B9增加過濾條件:訂單ID等於'C2':

圖表控件FineReport教程:[4]表單式主子表

設置分頁

此時主子表便製作好了,為了使報表可讀性更強,我們設置分頁,使得每頁顯示一個訂單信息。右擊A10單元格,選擇其他屬性>行後分頁。

保存與預覽

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

已完成的模板,可參見%FR_HOME%\WebReport\WEB-INF\reportlets\doc\Advanced\MasterReport\Master.cpt

主子報表在線視頻請查看【主子報表】

教程, 圖表, 控件, 主子, 表單式,
相關問題答案