Bug in Timer_2 mit Modus 26

Begonnen von tobiaslochner, 12. Oktober 2014, 11:40:33

Vorheriges Thema - Nächstes Thema

0 Mitglieder und 2 Gäste betrachten dieses Thema.

tobiaslochner

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]

peewit

hi

danke für die info

auf den ersten blick würde ich sagen das der original-code nicht logisch falsch ist, jedoch ist das ergebnis abhängig von der verwendeten compilerversion, sodass anscheiend manche versionen damit nicht korrekt umgehen können.


mamypokojum


I favor a lot of good. It is common knowledge that must be researched Bruera it.

Poppylovelol

#3
I do not understand the content that you post.gclub mobile