FHEM Forum

FHEM => Automatisierung => DOIF => Thema gestartet von: satprofi am 12 März 2026, 10:54:15

Titel: resetStatistics Fehlermeldung
Beitrag von: satprofi am 12 März 2026, 10:54:15
Hallo.
Wenn ich per DOIF ausführe bekomme ich folgendes:
error

set Stromstatistiken resetStatistics SHRDZM_84F3EB1C394B: Stromstatistiken: Statistic value(s) reset:
 * SHRDZM_84F3EB1C394B:gesamt_Bezug_kWh
 * SHRDZM_84F3EB1C394B:gesamt_Einspeisung_kWh

Das dazugehörige DOIF
(($month==3) and ($mday==12) and [00:31]) (set Stromstatistiken resetStatistics SHRDZM_84F3EB1C394B, setreading SHRDZM_84F3EB1C394B
statGesamt_Bezug_kWhYearLast 0 , setreading SHRDZM_84F3EB1C394B statGesamt_Einspeisung_kWhYearLast 0 )

Werte aber resettet.

Schönheitsfehler ?
Titel: Aw: resetStatistics Fehlermeldung
Beitrag von: Per am 12 März 2026, 12:57:31
Was macht
set Stromstatistiken resetStatistics SHRDZM_84F3EB1C394Bin der Fhem Kommandozeile?
Titel: Aw: resetStatistics Fehlermeldung
Beitrag von: satprofi am 12 März 2026, 13:39:14
ebenfalls reset, ohne fehlermeldung
Titel: Aw: resetStatistics Fehlermeldung
Beitrag von: Damian am 12 März 2026, 14:58:59
Du musst die einzelnen Befehle in Klammern setzen, wenn du Komma als Trennzeichen zwischen den Befehlen nutzt - das steht auch in der Commandref.

((set Stromstatistiken resetStatistics SHRDZM_84F3EB1C394B), (setreading SHRDZM_84F3EB1C394B
statGesamt_Bezug_kWhYearLast 0) , (setreading SHRDZM_84F3EB1C394B statGesamt_Einspeisung_kWhYearLast 0))
Titel: Aw: resetStatistics Fehlermeldung
Beitrag von: Damian am 12 März 2026, 18:38:34
Ich glaube aber, dass hier ein anderes Problem vorliegt.

Wenn der Befehl einen Rückgabewert ungleich "", 0 oder undef zurückliefert, dann wird er als Fehlermeldung gewertet und das Reading error gesetzt.

Evtl. reicht schon eine Null dranzuhängen, damit das Reading error nicht gesetzt wird:

(set Stromstatistiken resetStatistics SHRDZM_84F3EB1C394B, setreading SHRDZM_84F3EB1C394B
statGesamt_Bezug_kWhYearLast 0 , setreading SHRDZM_84F3EB1C394B statGesamt_Einspeisung_kWhYearLast 0,0)

Die zusätzlichen Klammern braucht man eigentlich nur, wenn ein Komma innerhalb des Befehls vorkäme, hier bei set oder setreading - das ist aber hier nicht der Fall.