上圖所示為一張主子填報表,分上下兩部分,上半部分為訂單的主表,下半部分為訂單明細,這兩部分數據分別來自不同的物理表,用戶修改數據後,同時保存到兩張物理表中,並保持資料庫事務一致性。
下面我們就來看一下用FineReport報表工具實現上述報表的過程。
1.連接資料庫frDemo
2.設計報表
2.1新建報表
2.2表樣設計
按照下圖設計好報表的基本框架。
2.3新建一數據集
新建數據集ds1:
SQL語句:select * from 訂單明細
新建資料庫ds2:
SQL語句:select * from 訂單where 訂單ID=10248
2.4綁定數據列
按照下列表格將數據集的欄位拖入對應報表單元格內,並作相應的設置。
2.5單元格設置過濾
雙擊B8,進入單元格數據列對話框,點擊過濾,設置過濾條件為:訂單ID等於B3。
2.6單元格的表單屬性設置
對B3,D3,F3,B4,F4,B5,D5,F5,A8,B8,C8,D8,E8,F8單元格設置表單屬性,其中D3,F3為日期型,C8,D8,E8均為數字型,並且允許小數,其餘均為文本類型。設置完後如圖:
2.7設置報表填報屬性
打開報表|報表填報屬性對話框,如圖所示:
點擊左上角的添加按鈕,添加一個新的內置SQL。
資料庫選擇frDemo,模式為空,表選擇訂單,如圖所示:
點擊智能添加欄位,出現下圖所示的對話框,用來將模板中的所要填入的欄位和數據表中的欄位對應,您可以自由選擇所需對應的欄位。
添加完後,單擊智能添加單元格,填入對應的單元格。可以選單元格不改變時不參與更新,這樣可以加快填報後數據更新速度。添加完後點擊確定,顯示如下圖,可以看到在預覽中已經自動生成了相對應的更新資料庫的SQL語句。
再添加一個內置SQL2,資料庫選擇frDemo,模式為空,表選擇訂單明細。以同樣的方式智能添加欄位à智能添加單元格,設置好後如圖
3.保存預覽
保存為:
%FineReport_HOME%/WebReport/WEB-INF/reportlets/com/doc/form/9.2.cpt
啟動報表伺服器,點擊設計器右上角的填報預覽,就可以進行預覽填報了。或者在瀏覽器里直接數據地址:
http://localhost:8075/WebReport/ReportServer?reportlet=com/doc/form/9.2.cpt&op=write
FineReport報表免費下載——零編碼做報表、多維圖表、多源填報、許可權管理,完美兼容excel。官網:http://www.finereport.com/tw/