Home › Forum › Nuclos Entwicklung › Makros und Regeln › Groovy – Felder aus Subform auslesen und summieren › Groovy – Felder aus Subform auslesen und summieren
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