2016-06-17 47 views
0

我正在向碧玉書籍的內容部分添加報告。該報告從數據庫中讀取3個數據字段,運行後應該有3個頁面。儘管運行本書創建的頁面數量比報表本身多3倍,這意味着它會爲每個數據字段實例化。如果我將報告移動到封面部分,它將僅實例化一次,看起來不錯。但我認爲這不是適當的地方,它應該放在內容部分。源代碼可以在Duplicate data in jasper看到。報告書中的內容部分

我的報告書的結構如下所示: enter image description here

我怎樣才能讓被重複一次內容的一部分?

回答

2

報表中的內容部分是數據驅動的,對應於報表中的詳細波段。該部分重複查看書籍數據源/查詢中的每條記錄。

因此,如果您只希望內容部分在書中出現一次,則應該使用生成單個記錄的數據源/查詢。這可能是一個帶有一個記錄的「空」數據源(由Jaspersoft Studio中的「One Empty Record」創建)或返回單個記錄的查詢(如果您不需要書中的任何實際DB值可以有一個虛擬查詢,如選擇1)。

+0

將報表拖動到內容部分後,我選擇使用空表達式。運行本書後,我得到一個類別系列名稱爲空例外 – Iman

+1

您的意思是空的數據源?我的建議是爲書本身使用空的數據源(或虛擬查詢),而不是用作書籍內容的報告。 – dada67

+0

我的不好,抱歉。現在我創建了一個空的數據源,併爲其分配了碧玉書。但現在內容將不會顯示。我只看到封面和封底部分 – Iman