如何在字段描述中使用参数?

时间:2016-06-29 07:03:07

标签: jasper-reports locale

我有一个xml文件作为数据源的报告,在主文件中我有一行代码看起来像这样(值取决于用户的偏好)

<property identifier="locale">en</property>

我将此保存为参数并将其传递给我的子报表,因为我似乎无法从子报表访问此行(此行位于我的main.jrxml连接到的xml文档的根节点中,我的子报表在文档的下方使用子数据源。在我的子报表中,我的行看起来像这样:

<label language="sv"><![CDATA[Ledord]]></label>
<label language="en"><![CDATA[Guide word]]></label>

我试图通过在字段说明中使用我的locale参数来选择要在报告中使用的正确标签。我没有成功尝试过的一些例子:

label[@language='" + $P!{locale} + "']
label[@language='" + $P{locale} + "']
label[@language=$P!{locale}]
label[@language=$P{locale}]

我已经在字段说明中尝试过了。这是jrxml的那部分:

<field name="head" class="java.lang.String">
    <fieldDescription><![CDATA[label[@language='" + $P!{locale} + "']]]></fieldDescription>
</field> 

这可能实现,还是我必须以其他方式实现?

国际化似乎并没有解决我的问题,因为我之前知道的静态文本会在我的报告中发生。 XML是根据用户输入生成的,不同的部分可能使用不同的语言环境。所以我无法将其添加到我的本地化消息中。

0 个答案:

没有答案