在JasperReports 傳遞SQL「IN」參數清單
使用「IN」謂詞透過SQL 查詢產生JasperReports 時,動態參數賦值可以使用「IN」謂詞透過SQL 查詢產生JasperReports 時,動態參數賦值可以透過Java編程來實現。讓我們探討一下如何動態設定「roles」參數的值。
相關查詢:
SELECT customer_name AS NAME, id_customer AS ID FROM customer WHERE customer_role IN ($P{roles})
Java 中的參數分配
JasperReports 提供了一個特殊變數 $X,用於動態設定參數。若要將值清單指派給「roles」參數,請使用下列語法:
select * from customer where $X{IN,customer_role,roles}
以下是如何在Java 中以程式設定參數值的範例:
// Get a JasperReports instance JasperPrint jasperPrint = jasperReport.fill(parametersMap, dataSource); // Create a new parameter list java.util.List<JRParameter> updatedParameters = new ArrayList<>(); // Add the "roles" parameter with the updated value updatedParameters.add(new JRParameter("roles", ArrayList.class, roles)); // Set the parameter list jasperPrint.setParameters(updatedParameters);
附加說明
以上是如何在 JasperReports 中傳遞動態 SQL'IN”參數清單?的詳細內容。更多資訊請關注PHP中文網其他相關文章!