Posted on 2007-08-17 20:27
kooyee 阅读(899)
评论(1) 编辑 收藏 所属分类:
Jasper Report
sql语句中用到java.sql.time类型的parameter来取得date的值。如果用java.util.date的parameter在sql只能读取到日期,而确定不了时间。
但是报表的input control中Date/time的datatype的变量类型为java.util.date。所以将这个值带入到类型为java.sql.time的parameter时会报错:
com.jaspersoft.jasperserver.api.JSExceptionWrapper: Incompatible java.util.Date value assigned to parameter sdate in the classic dataset
所以这里需要加入一个新parameter,这里我们命名为date,类型为java.util.date。假设类型为java.sql.time的non-prompting parameter名字为time。
用date来保存input control中的值。
然后把time的default expression改为:
new java.sql.Time($P{date}.getTime())
这样类型为java.sql.time的parameter就能得到input control中的值。