程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> JAVA編程 >> 關於JAVA >> JasperReport那些事兒(四)——制作標簽式報表

JasperReport那些事兒(四)——制作標簽式報表

編輯:關於JAVA

最近在想《JasperReport那些事兒》系列的寫作方向的問題,是要先寫Jasper的原理和基礎方面,還是寫怎麼制作報表實例。如果你想我寫一些你感興趣的部分,可以在文章後面加評論告訴我。這周先寫一篇制作報表實例的文章吧。

看到一篇總結報表圖例的文章。總結的相當不錯,如果你不知道什麼是標簽式報表,可以看看。

1.先上效果圖

2.數據源還是沿用NameList XML數據源,關於怎麼配置數據源可以看這裡。

<?xml version="1.0" encoding="utf-8" ?>
<NameList>
<Person>
<Name>強尼</Name>
<Gender>男</Gender>
<Age>56</Age>
</Person>
<Person>
<Name>阿美</Name>
<Gender>女</Gender>
<Age>23</Age>
</Person>
<Person>
<Name>李麗</Name>
<Gender>女</Gender>
<Age>58</Age>
</Person>
<Person>
<Name>傑森</Name>
<Gender>男</Gender>
<Age>32</Age>
</Person>
<Person>
<Name>劉三</Name>
<Gender>男</Gender>
<Age>21</Age>
</Person>
</NameList>

3.制作報表的思路

在制作標簽報表的時候,我們先來理清一下思路。可以發現,其實標簽式報表的每個小標簽內的內容類型都是一樣的,這樣可以認為報表是由多個標簽組成的。這樣就可以分離出主體報表和子報表的概念,這與Jasperreport裡的subreport(子報表)概念是一樣的。這樣就可以大概抽象出一個標簽式報表的模型了,在主體報表上使用兩個subreport元素指向同一個標簽報表。

那為什麼要使用兩個subreport元素?我們先來看我們期待輸出的標簽模型的順序。

但是在Jasperreport裡,報表的渲染是從上到下的。所以我們期待的順序是先渲染1號標簽,然後渲染2號標簽,這是從左到右的渲染,在Jasperreport裡面是做不到的。但是我們可以采用同時渲染1號和2號標簽,這就需要兩個subreport元素。

4.具體步驟(關於子報表的制作,可以參考我的第一篇文章)

a)建立一個主模板,加入兩個subreport。

b)建立一個子模板(標簽模板)。

c)配置subreport的XPATH。

左邊的subreport的Datasource配置

右邊的subreport的Datasource配置

報表模板下載:http://www.blogjava.net/Files/heis/%E5%9B%9B-%E5%88%B6%E4%BD%9C%E6%A0%87%E7%AD%BE%E5%BC%8F%E6%8A%A5%E8%A1%A8/Chapter4.zip

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved