2012-04-15 14 views
0

Ich bin neu bei JasperReports. Ich möchte Kursivtext erhalten, wenn eine Variable auf '3' gesetzt wird.JasperReport - Bedingung in TextElement

Hier ist mein Code:

<textElement> 

    <font size="9" pdfFontName="Helvetica" pdfEncoding="Cp1250" isPdfEmbedded="true" 
    isItalic=<![CDATA[$F{variable}==3 ? "true" : "false"]]> /> 

</textElement> 

Was mache ich falsch?

Ich versuchte auch bedingten Stil zu machen, aber wo auch immer ich einen Fehler empfange.

Antwort

0

Sie können den Wert der Eigenschaft isItalic (und viele andere) nicht mit Hilfe von Ausdrücken verwenden.

In Ihrem Fall sollten Sie die conditional style verwenden.

Die Probe:

<?xml version="1.0" encoding="UTF-8"?> 
<jasperReport ..> 
    <style name="customStyle"> 
     <conditionalStyle> 
      <conditionExpression><![CDATA[$F{variable} == 3]]></conditionExpression> 
      <style isItalic="true"/> 
     </conditionalStyle> 
    </style> 
    ... 
    <detail> 
     <band height="20" splitType="Stretch"> 
      <textField> 
       <reportElement style="customStyle" mode="Opaque" x="100" y="0" width="100" height="20"/> 
       <textElement/> 
       <textFieldExpression><![CDATA[$F{value}]]></textFieldExpression> 
      </textField> 
     </band> 
    </detail> 
</jasperReport> 
Verwandte Themen