query-string - 如何通过查询字符串将日期值传递给 BIRT 报告

标签 query-string report birt

我制作了一个静态 html 页面(称为 start.jsp),其中包含一个表单,用户可以在其中选择 2 个日期范围,并且该表单具有这些文本框的日期选择器。当用户提交时 表单,它应该将他们带到我设计的 BIRT 报告。它应该 传递我的报告所需的 2 个参数(开始日期和结束日期)。

这是附加到 URL 的查询字符串 birt-viewer/run__report=Business_Activity_Monitoring.rptdesign &FilterStartDate=2000-01-01&FilterEndDate=2009-01-01

我收到无效日期错误: org.eclipse.birt.report.exception.ViewerValidationException:参数“FilterStartDate”无效。值“06-08-2010”对于“dateTime”类型无效。

如果我完全删除查询字符串,BIRT 会提示我输入 开始日期和结束日期(附有屏幕截图)。 我输入的数据与表单尝试发送的数据完全相同,并且它有效!?

这证明我的日期字符串格式正确,但如果它们不接受,它不会接受它们 通过查询字符串发送到 BIRT 报告?似乎有问题 事实上它首先是一个字符串。

我已在 BIRT 报告中正确设置了这些报告参数。我也尝试过改变它们 通过将“格式为”值指定为“自定义”YYYY-MM-dd,但这不起作用。

是否可以通过查询字符串将日期参数发送到 birt 报告?

我猜测解决方案将涉及将这些字符串转换为 birt 报告的“脚本”选项卡中的日期。 但我不知道如何从这里访问查询字符串变量或如何设置报告 参数变量。

谢谢 -汤米

最佳答案

您的报告参数可能具有“DateTime”数据类型。因此,仅传递日期是不够的。当您使用 OOTB 参数请求页面时,这是在幕后考虑的。将参数数据类型更改为“日期”,或者在通过页面提供给报告的参数中附加拍号(即 2009-01-01 00:00:00)。任何一种方法都应该可以解决问题。

祝你好运!

关于query-string - 如何通过查询字符串将日期值传递给 BIRT 报告,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3036602/

相关文章:

javascript - Koa路由器: How to get query string params?

c# - 需要有关 asp.net 中查询字符串的帮助

java - 使用 iReport 拉伸(stretch)一行以适合 jasper 报表中的数据

grails - 在Linux中解决BIRT插件部署问题

java - 使用 BIRT 报告和 JBOSS 通过 URL 直接调用打印机

Angular:如何在不更改路由的情况下更新 queryParams

url - Backbone.js 用 fetch 和 data 填充集合——如何传递重复的键?

text - 有免费的医学或临床报告/语料库吗?

validation - 仅当验证未失败时,如何使用目标 =“_blank” 在新窗口中打开报告

javascript - 如何使用 JavaScript 对 BIRT 上的 ip 地址进行排序?