Java 检查字段的值是否在存储为报告的列表中';s参数

Java 检查字段的值是否在存储为报告的列表中';s参数,java,jasper-reports,Java,Jasper Reports,我需要在数组函数中使用类似的表达式。 我在JasperReports的报告中有一个数组参数,声明如下param1,它的类是java.util.List 我想在表达式打印时使用中的表达式。该表达式应检查该数组中的字段。我在$F{query_id},$P{param1}{/code>中尝试了这段代码,但没有用$F{query_id}此字段用于检查数组。有什么方法可以检查数组中的值吗?您应该使用方法 样品 输出结果 如果列表中存在该值(例如,列表{1,2,3}的值为3),则结果将为: 在其他情况

我需要在数组函数中使用类似
的表达式。
我在JasperReports的报告中有一个数组参数,声明如下
param1
,它的类是
java.util.List

我想在表达式
打印时使用
中的表达式。该表达式应检查该数组中的字段。我在$F{query_id},$P{param1}{/code>中尝试了这段代码,但没有用
$F{query_id}
此字段用于检查数组。有什么方法可以检查数组中的值吗?

您应该使用方法

样品

输出结果 如果列表中存在该值(例如,列表{1,2,3}的值为3),则结果将为:

在其他情况下(列表中未找到值),Jaspersoft Studio中的结果将是(文本字段隐藏):

在您的情况下,有效表达式如下所示:


您应该使用方法

样品

输出结果 如果列表中存在该值(例如,列表{1,2,3}的值为3),则结果将为:

在其他情况下(列表中未找到值),Jaspersoft Studio中的结果将是(文本字段隐藏):

在您的情况下,有效表达式如下所示:



但我无法在jasperserver中传递该数组参数:(但我无法在jasperserver中传递该数组参数:(
<?xml version="1.0" encoding="UTF-8"?>
<jasperReport xmlns="http://jasperreports.sourceforge.net/jasperreports" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://jasperreports.sourceforge.net/jasperreports http://jasperreports.sourceforge.net/xsd/jasperreport.xsd" name="List contains sample" pageWidth="595" pageHeight="842" whenNoDataType="AllSectionsNoDetail" columnWidth="555" leftMargin="20" rightMargin="20" topMargin="20" bottomMargin="20">
    <property name="com.jaspersoft.studio.data.defaultdataadapter" value="One Empty Record"/>
    <parameter name="list" class="java.util.List">
        <defaultValueExpression><![CDATA[Arrays.asList(1, 2, 3)]]></defaultValueExpression>
    </parameter>
    <parameter name="valueToFind" class="java.lang.Integer">
        <defaultValueExpression><![CDATA[5]]></defaultValueExpression>
    </parameter>
    <title>
        <band height="79" splitType="Stretch">
            <textField>
                <reportElement x="180" y="10" width="200" height="30">
                    <printWhenExpression><![CDATA[$P{list}.contains($P{valueToFind})]]></printWhenExpression>
                </reportElement>
                <textFieldExpression><![CDATA["I'm visible if value at list"]]></textFieldExpression>
            </textField>
        </band>
    </title>
</jasperReport>