iReport 屬於Jaspersoft下屬一個產品。
先介紹Jasperreport,Jasperreport是一個報表製作程序,用戶需要按照它制定的規則編寫 一個XML文件,然後得到用戶需要輸出的格式文件。它支持輸出的文件格式包括PDF,HTML,XML,XLS,CVS等等。而iReport就是一個制 作Jasperreport的XML文件的可視化開發工具。通過iReport可視化編輯完UI模板後,選擇一種文件格式預覽,就會生成一個後綴名爲“.jasper”的文件,Jasperreport就是通過讀取該文件進而生成用戶所需的文件的。
所需包: jasperreports.jar ; itext.jar ; jfreechart-1.0.0-rc1.jar; jcommon-1.0.0-rc1.jar ; poi-contrib-3.2-FINAL-20081019.jar;
畫模板:
1. 連接數據庫(一般可以跳過此步驟)
資料來源->連結/資料來源
如果要使用mysql以外的數據庫,要保證jdbc包在環境變量裏。放到iReport-0.5.1/lib 下也可以。name相當於一個JNDI。添好後點擊test按鈕如果顯示成功就可以執行下一步了。
2. 新建一個Report
定位可以控制報表是橫向的還是縱向的。Portrait是縱向,Landscape是橫向。
邊距是可以調整的。
3. 基本域
title域用來放報表的總標題
pageHeaher域顧名思義頁頭
columnHeader域是用來放static text的,也就是不循環的部分。
detail域是用來放text field的,也就是循環部分。
pageFooter域是用來放本頁的統計參數的。
summary域是用來放整個表的統計參數的。
可以直接調整每個域的長度,也可以通過Band properties來調整。當然總長度是不會超過頁面的原長。
4. 報表查詢
4.1 爲報表添加SQL查詢語句
資料來源->報表查詢
在Report SQL query裏填寫SQl語句。如果語句正確,在下面的field裏就會顯示正常的表字段。
4.2 爲報表添加動態字段
預覽->報表字段
把fields裏的字段直接拖到報表上就行了。
4.3 爲SQL語句添加參數
預覽->報表參數
在parameters裏新增一個參數
paratemeter name 是參數名,在SQL語句裏寫成"$P{參數名}"
paratemeter class type裏選擇參數類型。
注意:如果是int型的數據,最好在報表字段裏將該字段的Class type改成java.lang.String型的。
另外一種辦法,不管該字段原來是什麼數據類型,直接在paratemeter class type裏選擇java.lang.String類型,然後在Default value expression 填寫"Integer.toString(整數)"。
4.4 添加報表變量
預覽->報表變量 $V{變量名}
4.5 處理字體
4.5.1 基本設置
選中字段->右鍵->properties->font(雙擊也可以)
Report font 選擇全局的字體(僅限於該報表)
Font name 選擇在ireport裏面顯示的字體
Pdf font name 選擇在pdf裏面顯示的字體
Rotation 選擇內容是否旋轉(很有用的選項)
PDF Encoding 中文要用UniGB-UCS2-H,外部字體要選Identity-H
4.5.2 選擇外部字體
第一步 先在Pdf font name裏選擇External TTF font,然後在下面的Ture Type font裏選擇外部字體,當然要用的外部字體放在iReport-0.5.1/fonts目錄下面。
第二步 在web項目的WEB-INF/classes/下面放要用到的外部字體,才能在程序里正常顯示。
4.5.3 設定該報表的全局字體
預覽->報表字型
4.6 編譯jrxml
建立->編譯
編譯後生成一個後綴名爲jasper的binary文件,可以直接給程序調用。
CSDN 沒找着上傳代碼的方式,算了,不傳了。