2012-06-29 267 views
0

我需要知道如何在jasper報告中動態生成報告?在我的情況下,表格的ID,名稱,設計爲字段。我需要在一個jrxml文件中操作五個不同的查詢。如何在JRXML中使用多個查詢構建數據源?

第一個將選擇整個表格。 第二個將單獨選擇ID,名稱。 第三個名字。

在這裏,我選擇了整個表格,但我對如何運行其餘部分感到困惑。

回答

0

你有3種選擇:

1)可以將所有5個查詢組合成一個單一的查詢。這可能很難(有時不可能),但應該先嚐試。一般來說,報告中的數據與您報告中的其他數據有某些相關性。在報表中的行中將完全不相關的數據放在一起似乎毫無意義。所以你應該可以做到這一點。

這是您的最佳選擇。您應該能夠將這5個查詢合併爲一個查詢。它會讓你的生活更輕鬆,維護更容易,更不用說最初的設計更容易。您將能夠在單個jrxml中完成所有任務。您可以在jrxml中進行分組,格式化和排序等操作。所以仔細看看這個。如果您遇到問題,請在此網站上創建一個新問題,提供查詢和表格描述,我敢打賭,這裏的一些SQL專家會爲您提供幫助。

2)您可以放棄將查詢放在JRXML中,而是通過包含所有數據的java傳遞數據源。查看Using a POJO as an IReport Datasouce瞭解如何執行此操作的示例。

如果你不能做上面的選項1,這並不是一個可怕的選項。這是一個體面的妥協,但您仍然在運行一些查詢來構建您的數據源,並且這會對實際運行報告所花費的時間產生負面影響。

3)您可以使用子報告,以便每個報告都有一個查詢,以便您可以使用上一個查詢的結果來運行下一個查詢。這最終會給你一個報告的樹層次結構,在你的情況下將意味着創建5個報告。

我不認爲這是你的情況的好主意,但只是想確保你知道這是一個選項。安裝過於複雜,難以維護。

相關問題