天天看點

Jaspersoft Studio 報表模闆設計

前言

  近期業務增加,需要給很多實施人員教育訓練報表模闆設計,以友善給不同的客戶定制化列印模闆.是以就把常用到的一些記錄一下.友善使用

一、安裝

  官方下載下傳位址:https://community.jaspersoft.com/project/jaspersoft-studio/releases

   

Jaspersoft Studio 報表模闆設計

  選擇合适的版本,進行下載下傳.目前個人使用的是windows環境6.4.0版本.本文以6.4.0作為示例;

   

Jaspersoft Studio 報表模闆設計

  有興趣的小夥伴可以下載下傳最新版的嘗鮮.使用方式應該差不多

  tips:下載下傳時,會要求注冊賬戶,或者登入已有賬戶.按提示注冊即可,在郵箱中激活賬号.

   

Jaspersoft Studio 報表模闆設計

  輕按兩下安裝包,按提示選擇安裝路徑,确認即可

二、界面說明

  

Jaspersoft Studio 報表模闆設計

三、使用示例

1.建立一個新檔案

  從工具欄選擇 File --》New --》Jasper Report

   

Jaspersoft Studio 報表模闆設計

  選擇初始紙張大小(A4,A4橫向等),紙張大小可在後續步驟調整

   

Jaspersoft Studio 報表模闆設計

  選擇要存放的項目

   

Jaspersoft Studio 報表模闆設計
2.建立資料源

  jasper支援很多資料源(sql直連,json等),這裡以json檔案做示例

  先準備一個json檔案,通常由開發人員或者資料提供方給出,隻要是标準的json檔案即可.

   

Jaspersoft Studio 報表模闆設計

  配置一個新的資料源

   

Jaspersoft Studio 報表模闆設計

   

Jaspersoft Studio 報表模闆設計
3.設計字段導入

  資料源配置以後,可以通過字段導入功能.快速新增可用字段變量

   

Jaspersoft Studio 報表模闆設計
4.元件使用與指派

  接下來設定一個文本框

   

Jaspersoft Studio 報表模闆設計

  綁定[單據号]字段

   

Jaspersoft Studio 報表模闆設計
5.預覽

  好了,這時我們已經完成了初步的配置,可以通過預覽功能看下效果

   

Jaspersoft Studio 報表模闆設計
6.編譯

  當模闆設計完成後,需要通過ctrl+s儲存,并編譯輸出jasper檔案.

   

Jaspersoft Studio 報表模闆設計

  jasper字尾名的檔案可以用提供第三方系統使用,或者進行二次編輯.

  到這裡,就已經做出了一個簡單的jasper模闆

四、表單設計

1.紙張大小設定

   

Jaspersoft Studio 報表模闆設計
2.頁面大小設定說明

   

Jaspersoft Studio 報表模闆設計
3.頁面子產品說明

   

Jaspersoft Studio 報表模闆設計
4.子表設計

  需要先做準備

  主表資料中心包含表體集合

  需要将子表資料也抽出,配置一個子表資料源

   

Jaspersoft Studio 報表模闆設計

  在detail中從插入table元件

   

Jaspersoft Studio 報表模闆設計

  配置子表的資料源

   

Jaspersoft Studio 報表模闆設計

  表達式:

((net.sf.jasperreports.engine.data.JsonDataSource)
            $P{REPORT_DATA_SOURCE}).subDataSource("表體")
           

  tips:其中參數"表體"和主表資料源中,表體字段要保持一緻

  子表字段及元素設定

   

Jaspersoft Studio 報表模闆設計

  拖選字段設定列

   

Jaspersoft Studio 報表模闆設計

  預覽效果如下

   

Jaspersoft Studio 報表模闆設計

五、常用配置及問題記錄

1.為空字段不顯示NULL

  字段屬性中勾選 Blank When Null

   

Jaspersoft Studio 報表模闆設計
2.日期格式化

  背景日期傳時間戳,轉化為日期類型:

   new Date($F[時間戳]);

  背景日期傳"2019-12-1 18:24:12"時想要格式化為"2019-12-1":

   $F[長日期].split(" ")[0];

3.數值格式化

  小數位格式化 eg:20.0000–>20.0

   new BigDecimal($F{數量}).setScale(1,BigDecimal.ROUND_HALF_UP)

   其中 1 代表要保留的小數位 ,BigDecimal.ROUND_HALF_UP代表四舍五入

4.字段不顯示

  如果内容是中文,一般是字型問題,建議設定"宋體"

  另一種情況,是字号太大,超出了給定文本框大小.可以将字号調整小一點

5. java表達式處理資料

  表達式支援java文法和java自帶函數,可以做一些表達式做特殊操作

  比如"N"轉換成"未稽核",“Y"轉換成"稽核”

   “Y”.equals($F[稽核标志])?“稽核”:“未稽核”

6.自動換行

  字段屬性中勾選Stretch With Overflow

   

Jaspersoft Studio 報表模闆設計
7.條碼設計(條形碼,二維碼)

  設計條碼時,要注意選擇的編碼格式能否支援資料源中的所有字元

   

Jaspersoft Studio 報表模闆設計
8.重置元件面闆

  當不小心關閉了某些面闆,比如說資料源設定,元件拖選面闆燈.可通過右上角的ReportDesign進行重置

    

Jaspersoft Studio 報表模闆設計