如何开发主从报表
主從報表是一種很常見的報表需求:報表數據分為上下兩部分,上方為匯總說明信息,下方為明細列表信息。如何快速制作這類報表呢?下面我們通過一個例子來看一下潤乾報表是如何做的:
需求說明:
銷售系統中的客戶訂單表樣式如下:
報表上半部分顯示訂單基本信息,下半部分顯示訂單明細信息,每個訂單呈獨立的卡片式顯示。
潤乾報表開發步驟如下:
1、連接數據源
使用潤乾報表設計器,連接自帶數據源 DEMO。
2、設置數據集
新建報表并設置數據集,由于數據來源不同,需要設置多個數據集。
數據集 SQL 如下:
ds1: SELECT * ?FROM 訂單
ds2:?SELECT * ?FROM 訂單明細
3、編輯報表表達式
根據目標報表樣式,設置報表表達式。
其中: 1)在?B2 單元格輸入表達式:= ds1.select(訂單 ID,,, 訂單 ID)?
同時設置 B2 單元格的左主格為:`0
2)在 D2 單元格輸入表達式:= ds1. 發貨日期
設置顯示格式為:yyyy 年 MM 月 dd 日
F2 單元格進行相同設置
3)在 B4 單元格輸入表達式:= ds1. 客戶 ID
???F4、B5、F5、D8、E8 單元格進行相同設置
4)在 D5 單元格輸入表達式:= ds1. 運貨費
設置顯示格式為:¥#0.00
5)設置 A8 單元格的左主格為 B8
6)在 B8 單元格輸入表達式:= ds2.select@r(產品 ID:1, 訂單 ID==B2,, 產品 ID)
這里是制作主從報表的關鍵。設置 B8 單元格的左主格為 B2 單元格,查詢 ds2 數據集中所有訂單 ID 為 B2 的產品列表。
7)在 C8 單元格輸入表達式:= ds2. 單價
??設置顯示格式為:¥#0.00
8)在 F8 單元格輸入表達式:=C8*E8
設置顯示格式為:¥#0.00
9)設 A1、A2、A3、A4、A5、A6、A7、A9 單元格的左主格為 B2 單元格。
將這些單元格的左主格設為 B2 的目的是為了使 B2 單元格擴展的時候其它單元格隨著一起擴展,從而實現單表式主子報表。
10)設 A9 單元格為行后分頁,實現打印時每張定單單獨打印。并將第 9 行下邊框設為藍色,對不同訂單加以區分。
至此,我們就實現了需求效果,完成了一個典型的主從報表的制作。
轉載于:https://www.cnblogs.com/IBelieve002/p/10918123.html
總結
- 上一篇: Mybatis generator配置
- 下一篇: HTML框架IFrame结合JS在主页面