# IReport Feldberechnen und als Text ausgeben



## Carsa (19. Dez 2008)

Hallo und guten Morgen. Ich steh grad vor einem Problem. Und zwar habe ich 2 Felder aus der Datenbank die ich in einer Variablen berechnet habe. 


```
new Double(  ($F{MA_AMOUNT}.doubleValue()) -($F{SUMME_VON_OZ_AMOUNT}.intValue()) )
```

Das geht soweit auch gut. Nun soll ich ein 4tes Feld berechnen was einen Text ausgibt wenn die Summe im Feld 3 kleiner als ist. Es soll also eine Meldung erscheinen (bei kleiner als 0 "Warnung" sonst "okay") 

Könnte mir jemand hier im Forum bitte weiter helfen.

Danke
Carsa


----------



## foobar (19. Dez 2008)

Du kannst ein Feld abhängig von einer beliebigen Bedingung anzeigen lassen. Dafür gibt es die Option "Print when expression" da mußt du dann ungefähr sowas eintragen:


```
new Boolean(($F{MA_AMOUNT}.doubleValue() -$F{SUMME_VON_OZ_AMOUNT}.intValue()) < 3)
```


----------



## Carsa (19. Dez 2008)

Hi foobar, danke für die schnelle hilfe. Das funktioniert soweit ganz gut. Allerdings steht da jetzt True und False. Was ja auch richtig ist. Aber wie bekomm ich anstatt True und False "Warnung und OK" rein?

Carsa


----------



## foobar (19. Dez 2008)

Axo, wenn jedes mal eine Meldung ausgegeben werden soll nur mit unterschiedlichem Text, dann nimm ein TextField und als Text kannst du dann einen gültigen Javaausdruck verwenden. Ungefähr so:


```
($F{MA_AMOUNT}.doubleValue() -$F{SUMME_VON_OZ_AMOUNT}.intValue()) < 3 ? "OK" : "Warnung";
```

Du kannst damit auch bedingte Formatierungen und ähnliches realisieren.


----------



## Carsa (19. Dez 2008)

Ja fantastisch. Das klappt Prima. Vielen Dank. Wünsche ein Frohes Weihnachtsfest.

Carsa


----------

