Jaspersoft iReport 5.6報表設計問題總結

    今天抽空寫點東西,關於Jaspersoft iReport 報表,設計時遇到的一些問題進行總結、歸類,主要分爲如下幾個內容:數據庫

  • 添加驅動
  • 控件處理
  • dataset建立
  • 傳參問題

    針對的大都是報表設計中經常遇到的問題,但不是絕大多數,但願能幫到你們,下面詳細說下這些問題的處理方法吧。oracle

    (一)添加驅動工具

    報表設計後每每須要關聯數據庫進行測試,這裏就以oracle數據庫爲例,說下添加oracle驅動的方法,若已存在則跳過,oracle驅動jar包我用的是oracle10g,固然若是你安裝了oracle,直接從安裝目錄下複製一份便可,這裏提供 ojdbc14.jar 包下載連接:測試

    https://pan.baidu.com/s/118i38WJepOdNfw8GKiqGsw,密碼:3kk2,下載後將jar包複製到iReport 安裝或解壓目錄下:\iReport-5.6.0\ireport\modules\ext。spa

    (1)打開導航欄中工具-選項,點開Classpath配置項,以下:設計

    (2)點擊Add JAR選項,將oracle驅動jar包添加到Classpath,肯定,以下:排序

    (3)驗證oracle驅動是否安裝成功,點擊圖標,以下:get

    New——選擇Database JDBC connection,以下:it

    在JDBC Driver中查看是否已有Oracle驅動,以下:io

    

    至於,添加鏈接的數據庫則本身配置一下就行了。

    (二)控件處理

    (1)爲了保證預覽或打印PDF時,報表格式內容的正確性,控件的下面的配置最好改爲這樣:

    (2)Text Field控件顯示金額數值格式時,調整該項便可,以下:

    (3)Text Field控件使用三元表達式,以下:

    (三)dataset建立

    (1)在使用iReport設計報表時,會有一個主dataset,咱們姑且叫作maindataset,以下,右擊報表名,選擇Edit Query,則能夠編輯該報表的主體查詢語句:

    若添加table控件,則須要建立子dataset,叫作subdataset,因爲table中要展現的內容不能從主dataset中直接獲取,table表格的數據是動態生成的,經過其對應的dataset查詢獲得的,該如何設置呢?以下,右擊報表名,選擇Add Dataset添加subdataset:

    而後,命名該dataset,點擊下一步,選擇鏈接的數據庫(和主dataset一致),添加table表格須要的查詢語句:

    接着,點擊下一步,會顯示查詢出的字段,根據table須要依次添加到右側:

    最後,點擊下一步,選擇排序字段,自行選擇,完成subdataset的建立:

    (四)傳參問題

    (1)在(三)中咱們已經建立好了一個subdataset,那麼如何向該dataset傳參數呢?以下,點開subdataset,右擊Parameters選項,選擇添加Parameter:

    在添加的table組件上右擊,選擇Edit table datasource,在彈出的Dataset Run窗口中,選擇Parameter選項卡,點擊Add,添加須要傳遞的參數:

    好了,總結的基本上都是本身使用過的和一些比較坑的問題,防止本身再次落坑,你們若是有遇到其餘的問題,並解決了,能夠提出來,一塊兒分享一下。

相關文章
相關標籤/搜索