Fehler im verschachtelten IF

Begonnen von Ralli, 15 November 2014, 18:54:36

Vorheriges Thema - Nächstes Thema

Ralli

Hallo,

folgende (syntaktisch und logisch korrekte) at-Definition führt in der Ausführung zu einem Fehler ("right bracket missing"):

+*{sunrise_rel(+900)} IF ([FL_Rollo] ne "on") (set FL_Rollo 100;define FL_RolloTimerHoch_Dummy at +*{5}00:01:00 IF ([FL_Rollo] ne "on") (set FL_Rollo 100) ELSE (delete FL_RolloTimerHoch_Dummy))

Der Fehler betrifft verschachtelte IF-Anweisungen - bitte nicht Sinn/Unsinn der at-Definition diskutieren ;). Lasse ich das erste IF mit den entsprechenden Klammern weg, klappt es wunderbar.
Gruß,
Ralli

Proxmox 8.1 Cluster mit HP ED800G2i7, Intel NUC11TNHi7+NUC7i5BNH, virtualisiertes fhem 6.3 dev, virtualisierte RaspberryMatic (3.75.6.20240316) mit HB-RF-ETH 1.3.0 / RPI-RF-MOD, HM-LAN-GW (1.1.5) und HMW-GW, FRITZBOX 7490 (07.57), FBDECT, Siri und Alexa

Damian

Zitat von: Ralli am 15 November 2014, 18:54:36
Hallo,

folgende (syntaktisch und logisch korrekte) at-Definition führt in der Ausführung zu einem Fehler ("right bracket missing"):

+*{sunrise_rel(+900)} IF ([FL_Rollo] ne "on") (set FL_Rollo 100;define FL_RolloTimerHoch_Dummy at +*{5}00:01:00 IF ([FL_Rollo] ne "on") (set FL_Rollo 100) ELSE (delete FL_RolloTimerHoch_Dummy))

Der Fehler betrifft verschachtelte IF-Anweisungen - bitte nicht Sinn/Unsinn der at-Definition diskutieren ;). Lasse ich das erste IF mit den entsprechenden Klammern weg, klappt es wunderbar.

ja, du musst beim zweiten IF (Value("FL_Rollo") ne "on") ... angeben, denn das erste IF ersetzt in der Konstellation mit at FL_Rollo beim zweiten IF.

Gruß
Damian
Programmierte FHEM-Module: DOIF-FHEM, DOIF-Perl, DOIF-uiTable, THRESHOLD, FHEM-Befehl: IF

Ralli

Gruß,
Ralli

Proxmox 8.1 Cluster mit HP ED800G2i7, Intel NUC11TNHi7+NUC7i5BNH, virtualisiertes fhem 6.3 dev, virtualisierte RaspberryMatic (3.75.6.20240316) mit HB-RF-ETH 1.3.0 / RPI-RF-MOD, HM-LAN-GW (1.1.5) und HMW-GW, FRITZBOX 7490 (07.57), FBDECT, Siri und Alexa