Hauptmenü

Fehler nach update.

Begonnen von satprofi, 27 September 2016, 18:52:54

Vorheriges Thema - Nächstes Thema

satprofi

Hallo.
Habe heute gesehen das eine Fehlermeldung bei einem DOIF kommt, was ich absolut nicht entziffern kann.
Ich habe vor kurzem ein FHEM update gemacht, liegts daran? Das DOIF arbeitet, zumindest bis gestern:

(([Xtender_Batteriebetrieb] eq "on") or (([Batterieladezeit:kWh] >= 9 and [Ueberschuss] < 1 and [17:01-20:00] and [Batterielader_aus] eq "on") or ([Pac] < 1900 and [load_kWh_daily] >= 8.5 and [17:15-20:00] and [Batterielader_aus] eq "on") or ([Pac] < 1900 and [load_kWh_daily] >= 8 and [17:30-20:00] and [Batterielader_aus] eq "on") or ([load_kWh_daily] >= 7.5 and [17:50-18:09]) or ([load_kWh_daily] >= 7 and [18:10-18:39]) or ([load_kWh_daily] >= 6.5 and [18:40-19:09]) or ([load_kWh_daily] >= 6 and [19:10]) or ([load_kWh_daily] > 5.5 and [19:40]) or ([load_kWh_daily] > 5 and [20:15]) or ([load_kWh_daily] > 4.5 and [21:15]) or ([load_kWh_daily] > 4 and [22:20]) or ([load_kWh_daily] > 3.5 and [23:30]) or ([load_kWh_daily] > 3 and [00:40]) or ([load_kWh_daily] > 2.5 and [01:50]) or ([load_kWh_daily] > 2 and [03:00]) or ([load_kWh_daily] > 1.5 and [04:10]) or ([load_kWh_daily] > 1 and [05:20])) (set Netz_Schuetz_aus on)
DOELSEIF (([08:00]) or ([06:59-07:59] and [Ueberschuss:state:d] > 800) or ([06:59-07:59] and [Pac] > 1200))) (set Netz_Schuetz_aus off,set load_kWh_daily 0,set Ladestatus 6)


Fehlermeldung:


perl error in condition: (InternalDoIf($hash,'Xtender_Batteriebetrieb','STATE','','',AttrVal($hash->{NAME},'notexist',undef)) eq "on") or ((ReadingValDoIf($hash,'Batterieladezeit','kWh','','',AttrVal($hash->{NAME},'notexist',undef)) >= 9 and InternalDoIf($hash,'Ueberschuss','STATE','','',AttrVal($hash->{NAME},'notexist',undef)) < 1 and DOIF_time($hash,$hash->{realtime}{0},$hash->{realtime}{1},$wday,$hms,"") and InternalDoIf($hash,'Batterielader_aus','STATE','','',AttrVal($hash->{NAME},'notexist',undef)) eq "on") or (InternalDoIf($hash,'Pac','STATE','','',AttrVal($hash->{NAME},'notexist',undef)) < 1900 and InternalDoIf($hash,'load_kWh_daily','STATE','','',AttrVal($hash->{NAME},'notexist',undef)) >= 8.5 and DOIF_time($hash,$hash->{realtime}{2},$hash->{realtime}{3},$wday,$hms,"") and InternalDoIf($hash,'Batterielader_aus','STATE','','',AttrVal($hash->{NAME},'notexist',undef)) eq "on") or (InternalDoIf($hash,'Pac','STATE','','',AttrVal($hash->{NAME},'notexist',undef)) < 1900 and InternalDoIf($hash,'load_kWh_daily','STATE','','',AttrVal($hash->{NAME},'notexist',undef)) >= 8 and DOIF_time($hash,$hash->{realtime}{4},$hash->{realtime}{5},$wday,$hms,"") and InternalDoIf($hash,'Batterielader_aus','STATE','','',AttrVal($hash->{NAME},'notexist',undef)) eq "on") or (InternalDoIf($hash,'load_kWh_daily','STATE','','',AttrVal($hash->{NAME},'notexist',undef)) >= 7.5 and DOIF_time($hash,$hash->{realtime}{6},$hash->{realtime}{7},$wday,$hms,"")) or (InternalDoIf($hash,'load_kWh_daily','STATE','','',AttrVal($hash->{NAME},'notexist',undef)) >= 7 and DOIF_time($hash,$hash->{realtime}{8},$hash->{realtime}{9},$wday,$hms,"")) or (InternalDoIf($hash,'load_kWh_daily','STATE','','',AttrVal($hash->{NAME},'notexist',undef)) >= 6.5 and DOIF_time($hash,$hash->{realtime}{10},$hash->{realtime}{11},$wday,$hms,"")) or (InternalDoIf($hash,'load_kWh_daily','STATE','','',AttrVal($hash->{NAME},'notexist',undef)) >= 6 and DOIF_time_once($hash,$hash->{timer}{12},$wday,"")) or (InternalDoIf($hash,'load_kWh_daily','STATE','','',AttrVal($hash->{NAME},'notexist',undef)) > 5.5 and DOIF_time_once($hash,$hash->{timer}{13},$wday,"")) or (InternalDoIf($hash,'load_kWh_daily','STATE','','',AttrVal($hash->{NAME},'notexist',undef)) > 5 and DOIF_time_once($hash,$hash->{timer}{14},$wday,"")) or (InternalDoIf($hash,'load_kWh_daily','STATE','','',AttrVal($hash->{NAME},'notexist',undef)) > 4.5 and DOIF_time_once($hash,$hash->{timer}{15},$wday,"")) or (InternalDoIf($hash,'load_kWh_daily','STATE','','',AttrVal($hash->{NAME},'notexist',undef)) > 4 and DOIF_time_once($hash,$hash->{timer}{16},$wday,"")) or (InternalDoIf($hash,'load_kWh_daily','STATE','','',AttrVal($hash->{NAME},'notexist',undef)) > 3.5 and DOIF_time_once($hash,$hash->{timer}{17},$wday,"")) or (InternalDoIf($hash,'load_kWh_daily','STATE','','',AttrVal($hash->{NAME},'notexist',undef)) > 3 and DOIF_time_once($hash,$hash->{timer}{18},$wday,"")) or (InternalDoIf($hash,'load_kWh_daily','STATE','','',AttrVal($hash->{NAME},'notexist',undef)) > 2.5 and DOIF_time_once($hash,$hash->{timer}{19},$wday,"")) or (InternalDoIf($hash,'load_kWh_daily','STATE','','',AttrVal($hash->{NAME},'notexist',undef)) > 2 and DOIF_time_once($hash,$hash->{timer}{20},$wday,"")) or (InternalDoIf($hash,'load_kWh_daily','STATE','','',AttrVal($hash->{NAME},'notexist',undef)) > 1.5 and DOIF_time_once($hash,$hash->{timer}{21},$wday,"")) or (InternalDoIf($hash,'load_kWh_daily','STATE','','',AttrVal($hash->{NAME},'notexist',undef)) > 1 and DOIF_time_once($hash,$hash->{timer}{22},$wday,""))) (set Netz_Schuetz_aus on) DOELSEIF ((DOIF_time_once($hash,$hash->{timer}{23},$wday,"")) or (DOIF_time($hash,$hash->{realtime}{24},$hash->{realtime}{25},$wday,$hms,"") and ReadingValDoIf($hash,'Ueberschuss','state','(-?\d+(\.\d+)?)','',AttrVal($hash->{NAME},'notexist',undef)) > 800) or (DOIF_time($hash,$hash->{realtime}{26},$hash->{realtime}{27},$wday,$hms,"") and InternalDoIf($hash,'Pac','STATE','','',AttrVal($hash->{NAME},'notexist',undef)) > 1200)): syntax error at (eval 3509230) line 1, near ") ("


lg
gruss
-----------------------------------------------------------------------
beelink miniPC - Fhem 6.x CUL 868, FS20, NetIO230 CUL 433
HMLAN, HM-CC-RT-DN,Homematic Actoren,LD382A,Telegram

kumue

syntax error at (eval 3509230) line 1, near ") ("

Ich tippe auf Klammerfehler....
Wenn du codemirror benutzt, wirst Du bestimmt fündig...



satprofi

Klammerfehler kommen doch gleich bei "modify", aber der fehler steht in den readings.

codemirror ?

lg

gruss
-----------------------------------------------------------------------
beelink miniPC - Fhem 6.x CUL 868, FS20, NetIO230 CUL 433
HMLAN, HM-CC-RT-DN,Homematic Actoren,LD382A,Telegram


Damian

#4
Zitat von: satprofi am 27 September 2016, 18:52:54
Hallo.
Habe heute gesehen das eine Fehlermeldung bei einem DOIF kommt, was ich absolut nicht entziffern kann.
Ich habe vor kurzem ein FHEM update gemacht, liegts daran? Das DOIF arbeitet, zumindest bis gestern:
[
lg

na, du baust ja Konstrukte - du hast eine Klammer auf ( zuviel.

edit:

in der zweiten DOIF-Bedingung eine runde Klammer zu zuviel.
Programmierte FHEM-Module: DOIF-FHEM, DOIF-Perl, DOIF-uiTable, THRESHOLD, FHEM-Befehl: IF

satprofi

gruss
-----------------------------------------------------------------------
beelink miniPC - Fhem 6.x CUL 868, FS20, NetIO230 CUL 433
HMLAN, HM-CC-RT-DN,Homematic Actoren,LD382A,Telegram