欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

web报表工具FineReport使用中遇到的常见报错及解决办法(三) finereport报表软件FAQ 

程序员文章站 2024-01-21 15:54:58
...

这里写点抛砖引玉,希望大家能把自己整理的问题及解决方法晾出来,Mark一下,利人利己。

 

出现问题先搜一下文档上有没有,再看看度娘有没有,再看看论坛有没有。有报错要看日志。下面简单罗列下常见的问题,大多文档上都有提到的。

1、repeated column width is largerthan paper width:

这个看这段话应该是很好理解的。比如做的模板页面宽度只能放开5列,结果给6列做了重复和冻结,这个逻辑上肯定是说不过去的。

2、模板打不开,拒绝访问:

可能是win7操作系统对文件有权限。

3、安装设计器后无法预览报表(404报错):

在web.xml中增加servlet标签,具体的代码如下:

<servlet>

   <servlet-name>ReportServer</servlet-name>

   <servlet-class>com.fr.web.ReportServlet</servlet-class>

   <load-on-startup>0</load-on-startup>

  </servlet>

   <servlet-mapping>

   <servlet-name>ReportServer</servlet-name>

   <url-pattern>/ReportServer</url-pattern>

  </servlet-mapping>

4、对象不支持此属性或者方法、XXX未定义:

统一页面编码和js的编码(在报表中即服务器编码),如页面编码为utf-8,而服务器编码为gbk,统一编码的方法有三种,下面我们来看一个具体的设置。将管理平台编码修改成与页面编码一致,打开FR管理平台,在管理系统>系统管理>常规属性下,修改服务器端编码为UTF-8即可,如下图:

 

 

5、日期比较导致出错:

我测试用的是自己搭的sqlserver2005.2012/01/01这种格式的日期和FR上的2012-01-01这种格式的是不能比较的,直接从数据库中读取的日期格式都比较长,不光是年月日,而且读不出来,不知道是为什么,预览时可以看到的。然后我加了个在条件属性中加了个left(todate($$$),10)转化了一下就解决了,todate转化成了-连接,前10是年月日。

 

6、由一个单元格扩展出来的行高不一致(填报预览):

但是分页预览却是没有问题的。最后发现时因为设置了数据字典。设置了数据字典的单元格其真实值一行显示不了的,就换行了,所以变宽了。难道是填报预览时计算需要空间的时候用的是真实值计算的?解决方法,注意点,拉宽点就好了。

 

7、自定义数据字典显示等号问题:

FineReport的像自定义数据字典这种地方,跟单元格还有提示定义框一定,如果不是‘=’号开头是当做字符串处理,‘=’号开头当做公式处理。所以单写一个等号就是空白的。显示等号的话用="="

 

8、一个单元格内容过多报错:

临时解决方法,直接合并多个单元格可以增加输入内容。