Hallo,
ich möchte gerne einen Bug Reporten, welcher mir beim Baustein Timer_2 in Verbindung mit dem Modus 26 (letzet Tag im Monat) aufgefallen ist.
Für die Berechnung des letzten Tages im Monat wird dies hier standardmäßig verwendet:
26: (*last day of month*)
enabled := DAY_OF_MONTH(dat + t#1d) = 1;
Leider funktioniert die Berechnung mit dat + t#1d bei Codesys (Wago) nicht. Wie im Screenshot zu sehen ist, sollte temp_dummy den heutigen Tag + 1Tag anzeigen. Was in diesem Beispiel 13 wäre. Tatsächlich ist das Ergebnis jedoch 8.
Die Lösung dafür ist die Funktion DATE_ADD.
26: (*last day of month*)
enabled := DAY_OF_MONTH(DATE_ADD(dat,1,0,0,0)) = 1;
[gelöscht durch Administrator]