2013-04-12 64 views
3

我試圖從Jasperserver導出時將我的報告拆分爲多個Excel工作表。Ireport 5.0多張導出到Excel

報告結構 - 包含四個子報告的主頁面。 A組的頁眉和頁腳每個子報表,該頭包含子報表元件,同時在頁腳我已經把與該屬性頁斷裂元件..

<property name="net.sf.jasperreports.export.xls.break.after.row" value="true"/> 

放置在報頭中Pbreaks /頁腳不似乎不有所作爲,每個子報表都忽略分頁檢查(真)。

主要報告有此屬性,

<property name="net.sf.jasperreports.export.xls.one.page.per.sheet" value="true"/> 

我已經通過這裏上類似的問題閱讀並一直沒能產生許多不同的組合的結果。不知道我的問題是否特定於Ireport 5.0。

編輯:每個卓然的建議,我得到了工作報告! (現在只要它不會耗盡內存)這是文本字段後面的XML。

<textField> 
<reportElement uuid="73dc8dab-6ebf-4f47-bf8c-a1ab6b4b0454" x="0" y="0" width="100" height="1"> 
<property name="net.sf.jasperreports.export.xls.break.after.row" value="true"/> 
</reportElement> 
<textElement/> 
</textField> 

回答

3

將分頁符放入主報表中。 我有與子報告相同的問題,並嘗試所有可能的屬性組合,但似乎不可能從子報表中打破一個頁面。

編輯: 它停在我的報告工作還和我通過添加1px的高文本字段屬性 解決net.sf.jasperreports.export.xls.break.after.row 設置爲true。 我也用這個領域使用 net.sf.jasperreports.export.xls.sheet.name設置工作表名稱

我沒有收到通知你的迴應,否則我會回答越快...

FIELD SOURCE

<textField> 
    <reportElement positionType="FixRelativeToBottom" x="1325" y="122" width="1" height="1" uuid="cbee8af0-8639-4f97-bd6a-4cd284e604c4"> 
     <property name="net.sf.jasperreports.print.keep.full.text" value="true"/> 
     <propertyExpression name="net.sf.jasperreports.export.xls.break.after.row"><![CDATA[$V{REPORT_COUNT} < $F{MAX_ROW_CNT} ? "true" : "false"]]></propertyExpression> 
     <propertyExpression name="net.sf.jasperreports.export.xls.sheet.name"><![CDATA[$F{GROUP_NAME}]]></propertyExpression> 
    </reportElement> 
    <textFieldExpression><![CDATA[($V{REPORT_COUNT} < $F{MAX_ROW_CNT}) ? "true" : "false"]]></textFieldExpression> 
</textField> 

字段位於報告右邊緣的子報告元素下。 我正在使用表達式來分頁,以避免報表末尾出現多餘的空白頁面。 字段MAX_ROW_CNT來自查詢中的分析函數,而REPORT_COUNT是JR變量,指示當前行號。

+0

分頁符已在主報表中。 – nEWbie

+0

卓然,你能解釋一下你的編輯嗎?你介意在這個領域發佈XML嗎?我將不勝感激。 – nEWbie