0

Berechnung in Ausdrucken

Hallo zusammen,

ich versuche gerade meinen Ausdruck für einen Stundenzettel zu optimieren. Ich habe da auch eine Möglichkeit gefunden, allerdings schleicht sich immer wieder ein "VOID" in die Formel ein, was natürlich die Anzeige unterdrückt. Vielleicht habt ihr einen Lösungsvorschlag für mich.

So soll das aussehen (die grün umrandeten Kästchen funktionieren) - die nicht umsandeten Zahlen werden dabei aber nicht angezeigt:

Ausfallzeiten

Dabei soll jeweils der Tage mal 2,5 genommen werden, in Summe Ausfallzeiten dann die Summe der 3 Positionen. Die Berechnung der einzelnen Positionen funktioniert auch mit diesem Code soweit

let ZF := sum(Druckpositionen.Zeiterfassung.'Zähler Feiertag');
if ZF > 0 then
format(ZF * 2.5, "0.00") + " " + "Stunden"
else
void
end

Dabei habe ich die Gesamtsumme hiermit berechnet:

let mySumAZ := sum(Druckpositionen.Zeiterfassung.'Arbeitszeit Dezimal');
let ZF := sum(Druckpositionen.Zeiterfassung.'Zähler Feiertag');
let ZU := sum(Druckpositionen.Zeiterfassung.'Zähler Urlaub');
let ZK := sum(Druckpositionen.Zeiterfassung.'Zähler Krank');
let SZU := ZU * 2.5;
let SZF := ZF * 2.5;
let SZK := ZK * 2.5;
mySumAZ + SZF + SZU + SZK + " " + "Stunden"

 

Wenn ich das Ganze aber weiter aufbohren will leider nicht mehr. Vielleicht ist mein Ansatz mit den Variablen auch nicht der Richtige. 

Hierbei wird mir das erste void in die Formel geschrieben, selbst wenn ich es lösche, erscheint es immer wieder an der gleichen Stelle

let ZF := sum(Druckpositionen.Zeiterfassung.'Zähler Feiertag');
if ZF > 0 then
let SZF := format(ZF * 2.5, "0.00") + " " + "Stunden";
void
else
void
end

Die Summe der Ausfallzeiten sollte sich ja eingentlich auch über  myAZ := SZF + SZU + SZK + " " + "Stunden" berechnen lassen, auch da wird mir das void reingeschrieben.

Oder gibt es noch einen effektiveren Ansatz?

Danke für die Hilfe

Markus

Antwort

null