Fehler bei userreading und if-abfrage

Begonnen von gramtoc, 03 Februar 2021, 07:25:24

Vorheriges Thema - Nächstes Thema

gramtoc

Hallo,

möchte die Monatsverbräuche bei meinem Stromzähler über ein userreading ermitteln. Die interne FHEM-Variable $month verwende ich auch bei at-befehlen ohne Probleme.

Bei meiner userreading definition:

attr SGM_Zaehler userReadings total_consumption_month02 {if ($month==2) {(ReadingsVal("SGM_Zaehler","total_consumption",0)) - (ReadingsVal("SGM_Zaehler","total_consumption_month02_Start",0)) }}

kommt es jedoch zu folgenden Fehler:

total_consumption_month02      Error evaluating SGM_Zaehler userReading total_consumption_month02: Global symbol "$month" requires explicit package name (did you forget to declare "my $month"?) at (eval 22503) line 1.

Hat jemand einen Tip?

Vielen Dank.

rudolfkoenig

Bei den userreadings werden die bei notify/at verfuegbaren $month/etc Zeitwerte (und $we) nicht bereitgestellt, d.h. man muss diese Werte selbst mit den ueblichen perl mitteln (localtime) besorgen.

gramtoc