2011-12-29 42 views
1

我试图用iReport生成一个报告。我已经定义了一个名为的变量:totalcosts。这个变量是基于该表达式:根据指定模式在iReport中格式化一个变量

$V{costs}.multiply(new java.math.BigDecimal($F{numberOfItems}.intValue())) 

我想通过以下方式给这个变量的格式:

#,##0 

我问这个问题之前尝试过什么:

我试着使用下面的变量表达式,但没有成功:

new java.math.BigDecimal(new java.text.DecimalFormat("#,##0").format($V{costs}.multiply(new java.math.BigDecimal($F{numberOfItems}.intValue())))) 

我的变量是java.math.BigDecimal

谢谢。

回答

0

如果您试图在报表中显示变量,那么通常您应该只有一个文本字段,其值为“$ V {MyVariable}”(不带引号)。只要你喜欢,设置该文本字段的模式。它可以节省您自己格式化事务的所有麻烦。

+0

感谢您的回复,我在图表中使用此字段。这是一样的,对吧?我在图表中定义了一个字段** $ V {MyVariable} **和我们这个? – adis 2011-12-30 15:14:28

+0

是的,同样的想法适用。你不想绘制一个字符串;你想绘制一个数字(一个BigDecimal)。然后你需要适当地设置标签。 – mdahlman 2011-12-30 16:07:14