【发布时间】:2020-03-02 22:56:37
【问题描述】:
我正在使用 iReport 3.7.6 设计 PDF 报告,使用包含一些价格(货币价值)的 XML 数据源,在我的报告中引入了 textField,所以我使用了 pattern textField 属性设置货币格式,但不幸的是它没有按照我的意愿进行格式化。
在这里你可以看到我想在 XML 文件中格式化为货币的值:
<importFormalitzat>1500.0</importFormalitzat>
这是 textField 的 JRXML 代码,我在其中显示值:
<textField pattern="¤ #,##0.00" isBlankWhenNull="true">
<reportElement x="4" y="475" width="181" height="13"/>
<textElement lineSpacing="Single">
<font size="8"/>
</textElement>
<textFieldExpression class="java.lang.Double"><![CDATA[$F{importFormalitzat} ]]></textFieldExpression>
</textField>
如您所见,我用来格式化值的模式是:pattern="¤ #,##0.00"
但是我预览报告时得到的结果是:15000,00
我不明白为什么我得到 15000,00 而我在填写报告的 XML 文件中的值是 1500.0。
我尝试将 TextField 表达式中的 Java 类更改为 Integer、BigDecimal,但在报告中仍然没有得到正确的值!
【问题讨论】:
-
你使用什么数据源?
-
一个包含以下值的 XML 文件:
16/Y/215472 1500.0 Conjunta 0 0 1250.19 -
不,我是在问你是从 java (JRXmlDataSource) 还是在 jasper 报告中使用它...但我决定同时回答...
标签: xml jasper-reports