JasperReports: How to create a parameter which takes multiple values as input

jasper-reports

Solution

You should Product_Type set the type to java.util.List

In your SQL use the IN function :

Select Id, name from temp where $X{IN,product_type,Product_Type}

- second parameter product_type correspond to the name of the field in the table

- third parameter Product_Type correspond to the name you give in the report

If you pass an empty list, $X{IN,..,..} evaluate to a SQL "TRUE"

In the iReport, when you test the report, you see a invite box. Type :

prod1,prod2,prod3

Problem

I have a report in which there may be multiple values being passed for a parameter named `Product_Type`. So that my query becomes something like this: `Select Id, name from temp where product_type IN ('prod1','prod2','prod3')`

Original source