2011-07-05 122 views
3

我想創建在iREPORT分享到人人多個組,並將該數據應以按組地manner.For例如,顯示: 首先組別1數據應當被完全打印,那麼,多個組報告


組別1:


模塊數據 此後,我要打印的組2數據完全

組2:


分類數據

我使用的結果集的數據源。

有人能幫助我嗎?

回答

2

如果iReport中的組沒有保留所有數據,請使用子報表。當Jasper得到一個子報表時,它會運行整個子報表並將整個事件放入報表中。你可能有這樣的事情:

子報表1 - 第1組 1個第一個記錄 1個第二個記錄 第1組的第三個記錄 ... 1組最後一個記錄 子報表2 - 第2組 第2組第一個記錄 2組第二個記錄 第2組的第三個記錄 ... 第2組的第三個記錄

3

Jasper報表就以這種方式工作完全只要你的查詢結果正確排序。

例如,假設您按照名爲「MY_GROUP」的字段進行分組,並且其值爲「GROUP A」和「GROUP B」。在您的報告中,您將爲字段「MY_GROUP」創建一個組。在你的查詢中,確保你的ORDER BY子句中有第一個字段是MY_GROUP。您也可以通過在「報告」查詢的「排序選項」部分中添加「MY_GROUP」字段作爲第一個字段,在iReports中完成此操作。

現在,您已將組和正確排序的結果會出來這樣的:

頭 - A組 細節 - A組 頁腳 - A組 頭 - B組 詳細信息 - GROUP B Footer - GROUP B

正如你所願。我的猜測是你沒有正確地訂購你的查詢結果。這可能導致對於A組,B組等的多個分組全部穿插。

1

就像湯姆說的那樣。 Jasper報告組不會對從查詢中檢索到的數據進行排序,他們只是按照它的順序進行排序。

爲了以分組方式顯示信息,您必須向查詢添加ORDER BY,以便報表接收的行已經排序。