默认参数值在iReport中有效,但在JasperServer上无效

时间:2012-03-29 06:06:56

标签: java jasper-reports ireport jasperserver

首先让我说我的问题与已经在SO上的类似问题略有不同,或者至少与其他答案没有帮助我的问题有所不同。例如。,: JasperReport parameters works in iReport but fails on JasperServer还有其他人处理的时间戳问题也没有帮助我。

我是JasperReports的新手。上面链接的问题通过在iReport中向报表定义添加输入控件来解决,然后将其导出到JasperServer。这对我来说很好。

我的问题是报告带有时间戳参数和输入控件的查询。我已将java.sql.Timestamp(0)的默认值分配给参数。当我打开iReport并使用“Run on JasperServer”选项生成报告时,一切正常,输入控件显示正确的默认值。但是,如果我从浏览器连接运行相同的报告,则默认值不起作用。我认为,控件在1969年出现了某些日期的默认值。输入控件仍然有效,可以输入值并且报表正常运行,但浏览器输入控件没有获得默认值。

我怀疑可能会出现问题,因为输入控件被定义为具有datetime的数据类型,而不是时间戳。但是,如果是这种情况,我无法弄清楚为什么默认值在iReport中的输入控件中正常工作,而不是在从浏览器运行报表时。我已经阅读了各种帖子,其中有人说verper 3.5之前的JasperServer不支持java.sql.Timestamp。我正在使用最新版本,但我仍然无法弄清楚如何将时间戳类型添加到服务器存储库(或者是否有必要,因为除了我的默认值问题之外,日期时间类型似乎工作正常)。 / p>

1 个答案:

答案 0 :(得分:0)

对于默认的当前日期,您可以在Ireport中使用此功能

  new java.util.Date()

它为您提供当前日期,我测试过它也适用于Jasper服务器浏览器。