首页 > 解决方案 > 将字符串参数传递给子报表数据集

问题描述

我正在尝试将参数从 Java 传递到子报表。问题是当我必须检查 IN 中的所有值时。参数$P{Itens}采用这种格式(1234,5678,9012),它是字符串。

图片来自 JasperSoft

我该如何解决?

标签: jasper-reports

解决方案


您应该将参数类型作为来自 Java 的List传递,以报告携带所有可能的值。然后,编辑您的报告jrxml并将参数 $P{Itens} 数据类型设置为java.util.List而不是 String。

在报表查询中,替换iae.COD_PECA in $P{Itens}$X{IN, iae.COD_PECA, $P{Itens}}。这里,$X{} 是 JasperReports 为 SQL 子句函数提供的内置支持。


推荐阅读