Fenriswolf 程式筆記

奮利斯狼的地盤,小綿羊勿入

iReport crosstab 簡介

本篇介紹 ireport crosstab 的使用方法及 Bucket Expression 的運用
先看一下所有的資料


1. 簡單版
如果要做一個年份及地區的營業額交叉查詢報表很簡單
先新增一個 crosstab(要放在 summary 區塊)
列選擇年份(year)

行選擇地區(region)

內容當然是選擇價錢(amount),因為要計算總金額故 function 用 sum

iReport 可產生一個加總的欄位,這邊是只選 row group
則只會列出各地區的加總金額

接下來選完成就 ok 了

當新增之後在主畫面上方會多一個 crosstab 的頁籤
可以做一些細部調整讓報表更好看

報表完成的樣子

 
 
2. 進階版
可分析的行或列都不限一個,這邊除了年份之外再把月份加進來

雖然 wizard 上只能選二個,但在 crosstab 的屬性畫面可加多個
點選 Edit Crosstab Properties


不過額外新增的欄位要手動加入 report 中

報表完成的樣子有點醜

編輯 year 欄位把 position 改成 Stretch

再調整一下 “總營業額" 的欄位大小就好了

最後的成果

光是這樣不能稱為進階版,接下來要把月份改為季
iReport 所提供的 Bucket Expression 可加入各種不同的運算及改變呈現方式
編輯 month 欄位將 $F{month} 改成 new Long(($F{month}.longValue() – 1) / 3 + 1)

如果所要執行的運算太過複雜也可 import 相關 classes 並直接使用
例如 : MathUtil.calculate($F{month}.longValue())

大功告成

 
 
執行環境
iReport 3.0

參考資料
iReport

程式下載
crosstab_report.jrxml

廣告

2012/03/21 - Posted by | Java Tool |

仍無迴響。

發表迴響

在下方填入你的資料或按右方圖示以社群網站登入:

WordPress.com 標誌

您的留言將使用 WordPress.com 帳號。 登出 /  變更 )

Google+ photo

您的留言將使用 Google+ 帳號。 登出 /  變更 )

Twitter picture

您的留言將使用 Twitter 帳號。 登出 /  變更 )

Facebook照片

您的留言將使用 Facebook 帳號。 登出 /  變更 )

連結到 %s

%d 位部落客按了讚: