Autor Thema: Bug in Timer_2 mit Modus 26  (Gelesen 6331 mal)

0 Mitglieder und 1 Gast betrachten dieses Thema.

Offline tobiaslochner

  • Newbie
  • *
  • Beiträge: 4
    • Profil anzeigen
Bug in Timer_2 mit Modus 26
« am: 12. Oktober 2014, 11:40:33 »
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]

Offline peewit

  • Moderator
  • *****
  • Beiträge: 2 378
    • Profil anzeigen
Re: Bug in Timer_2 mit Modus 26
« Antwort #1 am: 12. Oktober 2014, 15:25:34 »
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

  • Gast
Re: Bug in Timer_2 mit Modus 26
« Antwort #2 am: 07. November 2014, 10:20:06 »

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

Poppylovelol

  • Gast
Re: Bug in Timer_2 mit Modus 26
« Antwort #3 am: 14. Januar 2015, 13:00:02 »
I do not understand the content that you post.gclub mobile
« Letzte Änderung: 29. November 2017, 10:39:45 von Poppylovelol »