Jaspersoft Studio:手动输入子报表的强制输入参数

时间:2017-06-26 10:18:13

标签: jasper-reports subreport

在我的主报告中,我从数据库中获得了一个(小)字符串值列表。然后,我想使用此列表选择子报表中的记录以及其他输入参数:

用户应能够根据开始和结束日期的范围选择记录 - 使用类型为java.util.Date且“Is For Prompting”设置为true的输入参数很容易。另一个标准应该是显示来自数据库字段的值的列表中的一个或多个项目。我可以在报告模板中定义列表,但之后我会有硬编码的字符串(从数据库填充,但仅限定义时间)。

现在困境是:如果我在主报告中定义输入参数,我无法预先获得列表的值;如果我在子报表中定义它们,我根本就没有提示,所以没有办法设置它们。

因此,报告需要开始和结束日期的值,以及可供选择的字符串值列表(可以选择多个itmes)。该列表应根据数据库中的值构建。在子报表中,所有这些值都应连接到记录的过滤器中。用户应能够在执行报告之前手动定义日期并从列表中选择项目。

有没有办法实现这个目标?

1 个答案:

答案 0 :(得分:0)

经过一段多小时的试用和错误,还有一些研究,当然,我发现关键字是“Query-based Input Controls”。本文档描述了它们在JasperReports服务器上的创建。这些输入控件也可以在Jaspersoft Studio中编辑,但是,它们实际上只能在服务器上运行。无论如何,这是我的问题的解决方案。