使用多个参数和类型构建Jasperreport Textfield消息

时间:2013-09-08 16:50:54

标签: jasper-reports

我试图在文本字段中创建一条消息,该消息使用属性文件中的本地化字符串。该字符串有5个参数,1个字符串,2个数字和2个日期。

由于某些原因,我在尝试编译时收到此消息。

JREvaluator类型中的方法msg(String,Object)不适用于参数(String,String,Integer,Integer,Date,Date)

这是文本域

<textField isStretchWithOverflow="true" isBlankWhenNull="true">
                <reportElement uuid="5c7c4cab-cbd4-4c0b-8393-c3b5ba3bc856" positionType="Float" x="0" y="0" width="530" height="20"/>
                <textElement>
                    <font size="14" isBold="true"/>
                </textElement>
                <textFieldExpression><![CDATA[msg($R{report.title},$P{QUERY_LEGAL_ENTITY_NAME},
$P{QUERY_START_ACCOUNT_NUMBER},
$P{QUERY_END_ACCOUNT_NUMBER},
$P{QUERY_START_DATE},
$P{QUERY_END_DATE}
)]]></textFieldExpression>
            </textField>

这是属性字符串

report.title=Finanskonti for {0} | Konti: {1, number} - {2,number} | Datoer: {3,date} - {4,date}

知道我做错了什么

1 个答案:

答案 0 :(得分:4)

我使用此代码

<textField isStretchWithOverflow="true" isBlankWhenNull="true">
                <reportElement uuid="5c7c4cab-cbd4-4c0b-8393-c3b5ba3bc856" positionType="Float" x="0" y="0" width="530" height="20"/>
                <textElement>
                    <font size="14" isBold="true"/>
                </textElement>
                <textFieldExpression><![CDATA[msg($R{report.title}, new Object[]{$P{QUERY_LEGAL_ENTITY_NAME},
$P{QUERY_START_ACCOUNT_NUMBER},
$P{QUERY_END_ACCOUNT_NUMBER},
(new SimpleDateFormat("dd-MM-yyyy")).format($P{QUERY_START_DATE}),
(new SimpleDateFormat("dd-MM-yyyy")).format($P{QUERY_END_DATE})}
)]]></textFieldExpression>
            </textField>

希望其他人可以使用它。