2011-07-26 6 views
1

私はInteger(0,1)のフィールド($P{ORDER}.permit)を持っていて、String( "いいえ"、 "はい")として表示したいと思います。だから私は、ResourceBoundleのキーの下に追加:ジャスパー式の入れ子

order.permit.0=No 
order.permit.1=Yes 

私は表現$R{order.permit.$P{ORDER}.permit}を書いたが、それは動作しません。例外は

net.sf.jasperreports.engine.JRExceptionスローされます。あまりにも多くのGroovyクラス生成 ました。このレポートコンパイラでサポートされていないクロージャのようなGroovyの機能を使用しないことを確認してください。

この例外は、ジャスパー式を入れ子にしたり、間違った方法で入れ子にしたりしていると考えられます。

希望の結果を得るには、どのように式を書きますか?

編集:str("order.permit." + $P{ORDER}.permit)が答えです。以下の投稿の詳細。

答えて

2

$R{}の代わりにstr()を使用してください。

$ R {}とstr()は、大部分は同じものです:

http://jasperforge.org/plugins/espforum/view.php?group_id=102&forumid=103&topicid=54665参照してください。関数の違い は、$ R {}は固定/静的キーでのみ使用でき、str()は動的メッセージキーで使用することができます(例: )。 str( "message.prefix。" + $ P {message})。

+0

str( "order.permit。" + $ P {ORDER} .permit) 'が答えです! – emstol

関連する問題