JasperReports:如何创建一个以多个值作为输入的参数

pay*_*yal 6 jasper-reports

我有一个报告,其中可能为名为的参数传递了多个值Product_Type.所以我的查询变成这样的:

Select Id, name from temp where product_type IN ('prod1','prod2','prod3')

Jmi*_*ini 7

您应该将Product_Type设置为java.util.List

在您的SQL中使用IN函数:

Select Id, name from temp where $X{IN,product_type,Product_Type}
Run Code Online (Sandbox Code Playgroud)
  • 第二个参数product_type对应于表中字段的名称
  • 第三个参数Product_Type对应于您在报告中提供的名称

如果您传递一个空列表,$ X {IN,..,..}计算为SQL"TRUE"

在iReport中,当您测试报告时,您会看到一个邀请框.类型:

PROD1,Prod2的,prod3