JasperReports - 导出到 Excel 时无法识别数值
Posted
技术标签:
【中文标题】JasperReports - 导出到 Excel 时无法识别数值【英文标题】:JasperReports - Numerical Values Are Not Recognized When Exporting to Excel 【发布时间】:2011-10-16 08:42:29 【问题描述】:我在 iReport 中创建了一个包含数值的报告。这些值的类型是 java.math.BigDecimal。将报告导出到 xls(使用 iReport)后,包含这些数字的单元格被正确识别。可以更改数字格式,添加小数位等。为此,我在报告定义中添加了以下行:
<property name="net.sf.jasperreports.export.xls.detect.cell.type" value="true"/>
我的问题是导出到 Excel 在服务器(JasperServer 4.1.0)上不起作用。我已经更改了文件 jasperreports.properties 中的属性 net.sf.jasperreports.export.xls.detect.cell.type=true。不幸的是,这并没有解决问题。我还检查了 spring-bean xlsExportParameter 并且属性 detectCellType 也设置为 true。我是否遗漏了什么或者服务器上的导出器有问题?
非常感谢!
【问题讨论】:
【参考方案1】:您可以尝试更改 applicationContext.xml
文件中的 detectCellType
属性(您可以找到它在 JasperServer 的 jasperserver\WEB-INF\ 文件夹中)。
<bean id="xlsExportParameters" class="com.jaspersoft.jasperserver.api.engine.jasperreports.common.XlsExportParametersBean">
<property name="detectCellType" value="true"/>
<property name="onePagePerSheet" value="false"/>
<property name="removeEmptySpaceBetweenRows" value="true"/>
<property name="removeEmptySpaceBetweenColumns" value="true"/>
<property name="whitePageBackground" value="false"/>
<property name="ignoreGraphics" value="true"/>
<property name="collapseRowSpan" value="true"/>
<property name="ignoreCellBorder" value="true"/>
<property name="fontSizeFixEnabled" value="true"/>
<property name="maximumRowsPerSheet" value="0"/>
<property name="xlsFormatPatternsMap" ref="formatPatternsMap"/>
</bean>
【讨论】:
我已经在 applicationContext.xml 中设置了 detectCellType 的值,并且它也设置为 true。以上是关于JasperReports - 导出到 Excel 时无法识别数值的主要内容,如果未能解决你的问题,请参考以下文章
在 Linux 上使用 JasperReports 获取损坏的 Excel 文件
JasperReports xlsx 导出错误 - 内容不可读 - 为啥?
JasperReports 服务器:如何使用 url 将报告导出为 html 文件