我已經從我的參數中輸入了名字kem的輸入列表。它是kem 1
,kem 2
,kem 3
。我已經創建了$x{in,pd_id,Kem}
作爲參數,但結果僅顯示了從三kem的kem 1
。我想要的是當我把kem的列表名稱,數據將顯示所有的數據。那就是kem 1
,kem 2
,kem 3
。 這是我的代碼:當參數列表多於一個時,如何設置textfield
<?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="testspace" language="javascript" pageWidth="595" pageHeight="842" columnWidth="555" leftMargin="20" rightMargin="20" topMargin="20" bottomMargin="20">
<parameter name="kem" class="java.util.Collection">
<defaultValueExpression><![CDATA[]]></defaultValueExpression>
</parameter>
<queryString>
<![CDATA[select
PD_ID,
PD_NAME
from wf_proc_def where $X{IN,PD_ID,kem}]]>
</queryString>
<field name="PD_ID" class="java.math.BigDecimal"/>
<field name="PD_NAME" class="java.lang.String"/>
<background>
<band splitType="Stretch"/>
</background>
<title>
<band height="79" splitType="Stretch">
<textField isBlankWhenNull="true">
<reportElement x="118" y="24" width="334" height="20"/>
<textElement/>
<textFieldExpression><![CDATA[ ("1".equals($P{kem})) ? "kem1"
:("2".equals($P{kem})) ? "kem2"
:("3".equals($P{kem})) ? "kem3"
:("4".equals($P{kem})) ? "kem4"
:("5".equals($P{kem})) ? "kem5"
:null]]></textFieldExpression>
</textField>
</band>
</title>
</jasperReport>
你可以張貼JRXML文件的片段(與參數,查詢和'textField')? – 2012-04-13 08:04:02
即時回覆很抱歉,我已將我的代碼放在上面。希望你能幫助我。 – 2012-04-15 01:55:55