报表知识库
我要提问

润乾报表中常见的打印类问题的总结

在解决润乾报表的打印类问题时,首先要知道打印与哪些文件相关,下面就列出了与打印相关的文件及位置:

1.runqianReport4Applet.jar 位置:应用根目录下

2.report4.jar 位置:web-inf/lib目录下

3.j2re-1_4_1-windows-i586-i.exe 位置:应用根目录下

在reportConfig.xml中,有两个属性也与打印相关,分别是:jreInstallName和jreVersion。

另外,目前润乾报表提供的打印方式有以下几种:

1.直接打印 (不预览直接输出报表到打印机打印)

2.打印预览后打印(常规打印方式)

3.套打(多用于票据打印即打印纸张和格子的大小都是固定的,一般采取背景图的方式打印)

4.批量打印(一次性打印多张报表)

打印类的问题一般分为以下几类:

1.打印类错误

这种错误一般是由于检查打印类文件放置的位置不对,打印类与report4包不匹配,浏览器安全级别设置不正确等原因造成的。

例如:展现报表正常,点击打印后,弹出空白对话框,无法正常打印。

此问题就是由于打印类与report4包不匹配造成的,更新report4包的时候,一定要一起更新runqianReport4Applet.jar

2.打印结果不正确

这种错误一般是由于报表模版设置字体不正确,相关的打印设置属性没有正确配置,打印机本身设置有错误等原因造成的。

例如:设计器和服务器上浏览报表都正常,只是打印出来的纸上,出现数据丢失的情况。

此问题是由于报表中字体设置的不对,使用了默认的Dialog字体,而这种字体是java的虚拟字体,在操作系统中是不存在的,建议当报表中数据有汉字或者特殊字符的时候,尽量使用宋体或其他在操作系统中存在的字体,即可避免这种错误的发生。

再例如:在打印页面设置了页边距,但打印到纸上时,发现设置的页边距没有起作用。

此问题多数发生在老式的针式打印机上,由于针式打印机存在物理边距,这由打印机本身所限制,超过此范围的边距打印机也无法识别,只要控制在物理边距的范围内,就可以正常打印了。

3.打印预览效果不正确。

这类问题一般与报表模版设计的不合理有很大关系。

例如;报表中含有嵌入式子报表,且子报表数据量很多,导致打印时会报某某行高度超过给定的纸张高度,无法打印。

由于嵌入式子报表是局限在一个格子内,不影响周边格子,而仅仅是撑大所在的单元格,很可能会出现子报表过长或过宽,导致报表在一页纸内无法分页(子报表在主表中规定不能分页),就会出现这个错误,解决办法就是把嵌入式改为引入式,就可以使报表正常打印了。

总结起来,打印问题与报表的设计,部署,操作都密不可分,其中哪一个环节出现问题都有可能导致打印出问题,所以,处理这类问题的步骤一般是先检查报表模版,再定位,重现问题,最终找到问题所在并解决。