Moin,
kurz zu meinem Problem:
Ich lasse mir in meinem Bericht eine Variable anzeigen.
Die entsprechenden Werte zieht sich die Variable aus diesem
SQL:
Code:
<queryString>
<![CDATA[SELECT
IFNULL(Ergebnis."ID_Personal", 0) as ID_Personal, IFNULL(Ergebnis."Jahr", 0) as Jahr,
IFNULL(Ergebnis."Monat", 0) as Monat, IFNULL(Ergebnis."KontoNr", 0) as KontoNr,
IFNULL(Ergebnis."M", 0) as M, IFNULL(Ergebnis."J28", 0) as J28,
IFNULL(Ergebnis."J29", 0) as J29, IFNULL(Ergebnis."J30", 0) as J30,
IFNULL(Ergebnis."J31", 0) as J31, IFNULL(Konten."Bezeichnung", 'NA') as Bezeichnung,
IFNULL(Konten."Dezimal", false) as Dezimal
FROM
{ oj "Ergebnis" Ergebnis INNER JOIN "Konten" Konten ON
Ergebnis."KontoNr" = Konten."KontoNr"}
WHERE
Ergebnis."ID_Personal" = $P{ID_Personal} AND
Ergebnis."Jahr"=$P{Jahr} AND
Ergebnis."Monat"=$P{Monat} AND
Ergebnis."KontoNr" < 900
ORDER BY
Ergebnis."KontoNr" ASC]]>
</queryString>
Die Variable prüft welcher der letzte Tag im ausgewählten Monat ist und soll den entsprechenden J Wert anzeigen.
Da wir erst den 23 Juli haben, werden die Felder ab 23 Juli bis 31 Juli noch nicht gefüllt sie stehen auf null.
Code:
<variable name="jahreswert" class="java.lang.Double" resetType="Column">
<variableExpression><![CDATA[(de.zmi.reports.util.Monatswerte.lastDayOfMonth($F{Monat},$F{Jahr})<30
?(
de.zmi.reports.util.Monatswerte.lastDayOfMonth($F{Monat},$F{Jahr})<29?(
$F{J28}
):(
$F{J29}
)
)
:(
de.zmi.reports.util.Monatswerte.lastDayOfMonth($F{Monat},$F{Jahr})<31?(
$F{J30}
):(
$F{J31}
)
))]]></variableExpression>
</variable>
Die Variable lass ich mir dann in einem Textfeld anzeigen und habe die Eigenschaft gesetzt dass er das Feld leer lassen soll, wenn der Wert "null" ist. Leider zeigt er mir immer null im Bericht an.
Hat jemand eine Idee oder Tipp woran das liegen kann?
Code:
<textField isBlankWhenNull="true">
<reportElement x="417" y="0" width="50" height="14">
<printWhenExpression><![CDATA[new Boolean($F{Dezimal}.equals(new Boolean(false)))]]></printWhenExpression>
</reportElement>
<textElement textAlignment="Right">
<font fontName="Arial" size="10"/>
</textElement>
<textFieldExpression><![CDATA[de.zmi.reports.util.Monatswerte.minutes2Clock($V{jahreswert})]]></textFieldExpression>
</textField>