2011-09-13 16 views
1

double型の結果を得るために、string型の2つのフィールド(例えば、priceとquantity)を乗算するにはどうすればよいですか?これをXMLファイルに書き込む方法は?JasperReportsで2つの文字列フィールドを掛けるには?

私は変数式でこれを試してみましたが、それが動作していない:

new Double(Double.parseDouble($F{qpa}) * Double.parseDouble($F{price}))]] 

答えて

1

をJasperReportsのは、自動的に変数のクラスに変数式をキャストしません。 @Vicky、可変式をデフォルトのjava.lang.Stringからjava.lang.Doubleに変更したら、あなたの変数式は私のために働きます。

qpapriceのフィールドクラスが文字列であることも確認する必要があります。これはparseDouble()が想定しているとおりです。

また、変数の値をtextFieldに出力する場合は、式クラスもjava.lang.Doubleに変更する必要があります。

(あなたはJavaで、あなたの表現を書いている場合にのみ適用されます。あなたのレポート言語はjavaからgroovyに変更すると、これらのキャストが自動的に実行されます。私は、このかかわらず、お勧めしません。)

+0

ありがとう – vikram

0

てみてください、この式を使用する:

Double.valueOf(Double.valueOf($F{qpa}).doubleValue()*Double.valueOf($F{price}).doubleValue()) 
+0

おかげでアレックス、この表現が機能している – vikram

関連する問題