Home Forum Nuclos Entwicklung Makros und Regeln Groovy – Felder aus Subform auslesen und summieren Groovy – Felder aus Subform auslesen und summieren

#7199
Markus Glitzner
Teilnehmer

Hallo!

1. du musst null Werte vom gesamtpreis abfangen
2. Gesamtpreis wird eher klein geschrieben werden müssen
3. Wenn du zwei Zahlen mit scale 2 addierst, wird die scale immer 2 bleiben
4. ein return value .doubleValue() ist nicht nötig, es genügt return bBetragBrutto

für den Anfang könntest du es mal so versuchen (nicht getestet):def bBetragBrutto = 0.0
context."#{DEF.Leistungspositionen}".each {
if (item."#{DEF.Leistungspositionen.gesamtpreis}" != null) {
item -> bBetragBrutto += item."#{DEF.Leistungspositionen.gesamtpreis}"
}
}
return bBetragBrutto

Ich persönlich verwende kein BigDecimal in groovy, ist mir zu umständlich. Die tatsächliche Berechnung erfolgt bei mir ohnehin in einer Regel und dort natürlich mit BigDecimal. Groovy ist ja für das tatsächliche Berechnen auch nur bedingt geeignet, da es bei bestimmten Umständen nicht funtioniert, z.B. bei Sammelbearbeitungen wo sich die Summe aus zwei Feldern ergibt gar nichts berechnet.

Gruß
Hugo