上面的代码:
<parameter name="userName" isForPrompting="false" class="java.lang.String">
<defaultValueExpression><![CDATA["Pedro"]]></defaultValueExpression>
</parameter>
..........
<textField>
<reportElement x="69" y="10" width="422" height="180" uuid="52dc00c8-2cd3-466e-bc37-9dde8d5da625"/>
<textElement textAlignment="Justified" markup="html">
<font size="11"/>
<paragraph lineSpacing="1_1_2"/>
</textElement>
<textFieldExpression><![CDATA["Exmo. Senhor/a Diretor/a da Direção Regional do <font color="red">(plataforma preenche diretamente região NUT II), (plataforma preenche morada postal da Direção Regional)</font>
<br><br><font color="red">"+$P{userName}+"Eu (Nome – automático plataforma )</font>, titular do documento de identificação n.º <font color="red">(x – automático plataforma)</font> n.º de registo <font color="red">(x – automático plataforma)</font>, venho por este meio comunicar que (escolha a opção ou opções correctas):]]></textFieldExpression>
</textField>
如何在句子中间打印变量$P{userName}
(已定义且已经过测试)?我已经尝试了一切,似乎没有任何工作。
答案 0 :(得分:0)
您的表达式包含多个错误:
\
转义双引号 - 这是一个Java表达。另一种选择是使用单引号。样品:
<?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="Formatted measures" pageWidth="595" pageHeight="842" columnWidth="555" leftMargin="20" rightMargin="20" topMargin="20" bottomMargin="20">
<property name="com.jaspersoft.studio.data.defaultdataadapter" value="One Empty Record"/>
<parameter name="userName" class="java.lang.String" isForPrompting="false">
<defaultValueExpression><![CDATA["Pedro"]]></defaultValueExpression>
</parameter>
<title>
<band height="304">
<textField>
<reportElement x="69" y="10" width="422" height="180"/>
<textElement textAlignment="Justified" markup="html">
<font size="11"/>
<paragraph lineSpacing="1_1_2"/>
</textElement>
<textFieldExpression><![CDATA["Exmo. Senhor/a Diretor/a da Direção Regional do <font color='red'>(plataforma preenche diretamente região NUT II), (plataforma preenche morada postal da Direção Regional)</font><br><br><font color='red'>" +
$P{userName} + " Eu (Nome – automático plataforma )</font>, titular do documento de identificação n.º <font color='red'>(x – automático plataforma)</font> n.º de registo <font color='red'>(x – automático plataforma)</font>, venho por este meio comunicar que (escolha a opção ou opções correctas):"]]></textFieldExpression>
</textField>
</band>
</title>
</jasperReport>
结果将是:
同样的结果将使用转义引用:
<textFieldExpression><![CDATA["Exmo. Senhor/a Diretor/a da Direção Regional do <font color=\"red\">(plataforma preenche diretamente região NUT II), (plataforma preenche morada postal da Direção Regional)</font><br><br><font color=\"red\">" +
$P{userName} + " Eu (Nome – automático plataforma )</font>, titular do documento de identificação n.º <font color=\"red\">(x – automático plataforma)</font> n.º de registo <font color=\"red\">(x – automático plataforma)</font>, venho por este meio comunicar que (escolha a opção ou opções correctas):"]]></textFieldExpression>