FHEM Forum

FHEM => Frontends => SVG / Plots / logProxy => Thema gestartet von: bema15 am 02 März 2020, 13:44:15

Titel: SVG fixedrange month im Feb 2020 ohne den 29.2.2020 in der Darstellung
Beitrag von: bema15 am 02 März 2020, 13:44:15
Bei meinem SVG Plot mit dem Attribut fixedrange month wird im Monat Februar 2020 der 29.2.2020 nicht angezeigt. Der SVG Plot endet rechts mit dem 28.2.2020.

Wie kann Abhilfe geschaffen werden?

Nachtrag: endPlotToday ist 0. So dass immer volle Monate, vom ersten bis letzten Tag angezeigt werden sollen.
Titel: Antw:SVG fixedrange month im Feb 2020 ohne den 29.2.2020 in der Darstellung
Beitrag von: mahowi am 02 März 2020, 14:30:30
Das ist direkt am 29.02. durch Rudi gefixt worden und sollte seit Sonntag per Update verteilt werden. (https://forum.fhem.de/index.php/topic,108829)
Titel: Antw:SVG fixedrange month im Feb 2020 ohne den 29.2.2020 in der Darstellung
Beitrag von: bema15 am 02 März 2020, 15:50:00
Ich habe gerade einen FHEM Update durchgeführt. Aber keine Änderung, das Verhalten ist immer noch das Gleiche....

Habe ein bischen im Modul 98_SVG.pm geschaut, ob da was falsch berechnet werden könnte. Und siehe da:
In den Zeilen 1027 und 1033 steht jeweils der folgende Code
      $me[1]++ if(($sy+1900)%4); # leap year. Ignore 1900 and 2100 :)
@me enthält die Anzahl Tage der Monate im Jahr und hier soll der Februar ($me[1]) um ein Tag erhöht werden, wenn es ein Schaltjahr ist, also durch 4 teilbar ist.
Nur ist die Bedingung im if falsch. So wird der Feb immer um eins erhöht, wenn es kein Schaltjahr ist, und nicht wenn es eins ist (%4 ist 0, wenn durch 4 teilbar).

Die richtige Anweisung müsste lauten:
      $me[1]++ if(($sy+1900)%4 == 0); # leap year. Ignore 1900 and 2100 :)

Wer kann dies im offiziellen 98_SVG.pm korrigieren?
Titel: Antw:SVG fixedrange month im Feb 2020 ohne den 29.2.2020 in der Darstellung
Beitrag von: mahowi am 02 März 2020, 16:16:03
Laut Maintainer.txt (https://svn.fhem.de/trac/browser/trunk/fhem/MAINTAINER.txt#L534) wäre das Rudi:
File                         Maintainer           Forum
=========================================================================
FHEM/98_SVG.pm               rudolfkoenig         Frontends/SVG/Plots/logProxy
Titel: Antw:SVG fixedrange month im Feb 2020 ohne den 29.2.2020 in der Darstellung
Beitrag von: rudolfkoenig am 02 März 2020, 17:59:03
Danke fuer den Hinweis.

Da gab es wohl mehrere Stellen, wo 29.Februar falsch behandelt wurde.
Ich habe jetzt zwei weitere Stellen gefixt.
Titel: Antw:SVG fixedrange month im Feb 2020 ohne den 29.2.2020 in der Darstellung
Beitrag von: bema15 am 03 März 2020, 09:52:05
Es funktioniert...

Danke