我有一個問題,根據報告導出到jasper報告切換打印變量。假設我在碧玉報告中有兩個字段:$ F {A}和$ F {B}。 如果使用rtf(RTF格式)導出,jasper應打印$ F {A},如果使用rtf以外的其他格式導出,則打印$ F {B}。
我必須在jasper textField中寫什麼?
是否有作爲exportedAs(「rtf」)的函數?
<textFieldExpression><![CDATA[(exportedAs("rtf")? $F{A} : $F{A})]]></textFieldExpression>
------這裏添加新的信息------
我曾嘗試使用<exporter_property_prefix> .exclude.key
<property name="net.sf.jasperreports.export.rtf.exclude.key.NOTRTFFIELD"/>
而讓其他印刷品是pdf。
<property name="net.sf.jasperreports.export.rtf.exclude.key.NOTPDFFIELD"/>
我還在報告元素中放置了鍵。檢測出口賈斯珀報告表
<code>
<reportElement key="NOTRTFFIELD">
<reportElement key="NOTPDFFIELD">
</code>
但當$ F {A}和$ F {B}具有不同的行數,它會留下空的空間爲它具有較小的線的字段。
即
$ F {A}:
線A1
線A2
線A3
$ F {B}:
線B1
假定$ F {以PDF格式導出報表時打印A},並在報表導出爲RTF格式時打印$ F {B}。
如果打印成PDF: other line... line A1 line A2 line A3 other line...
如果我們打印爲RTF: other line... line B1 ---blank line--- ---blank line--- other line...
我不得不刪除這些空行..
的可能的複製[JasperReports的:隱藏文本框時沒有HTML視圖(http://stackoverflow.com/questions/8044930/jasperreports-hide-textfield-when-not-html-查看) –
你可以使用:' .exclude.key' –
或者只是使用一個參數,你是通過java導出還是使用jasper-server? –