&& und || Bedingungen

Begonnen von Zrrronggg!, 01 April 2013, 20:47:56

Vorheriges Thema - Nächstes Thema

Zrrronggg!

Folgendes ist klar und verwende ich viel:


{ if (Value("Aktor_A") eq "on" || Value("Dummy_B") eq "irgendwas") { fhem("...

{ if (Value("ktor_A") eq "off" && Value("Dummy_C") ne "blabla") { fhem("...


Ich habe aber jetzt eine Aufgabe, wo ich gerne Folgendes machen würde:

Wenn (A oder B) und C, dann...

if (Value("Aktor_A") eq "on" || Value("Dummy_B") eq "irgendwas" && Value("Dummy_C") ne "blabla") { fhem("...

scheint mir nicht okay, weil da ja nicht klar ist, ob  

(A oder B) und C

oder

A oder (B und C)

zutreffen soll.

Wie mach ich das eindeutig? Kann nicht genug Perl...

FHEM auf Linkstation Mini, CUL 868 SlowRF, 2xCUL 868 RFR, CUL 433 für IT, 2xHMLAN-Configurator mit VCCU, ITV-100 Repeater, Sender und Aktoren von FHT, FS20, S300, HM, IT, RSL

Puschel74

Hallo,

ich vermute mal so ähnlich wie in Mathe.
Die Klammern richtig setzen ;-)

if (((Value("Aktor_A") eq "on" || Value("Dummy_B")) eq "irgendwas" && Value("Dummy_C")) ne "blabla") { fhem("...

Ungetestet und nur aus dem Kopf.

grüße
Zotac BI323 als Server mit DBLog
CUNO für FHT80B, 3 HM-Lan per vCCU, RasPi mit CUL433 für Somfy-Rollo (F2F), RasPi mit I2C(LM75) (F2F), RasPi für Panstamp+Vegetronix +SONOS(F2F)
Ich beantworte keine Supportanfragen per PM! Bitte im Forum suchen oder einen Beitrag erstellen.

Zrrronggg!

Diese Vermutung hatte ich auch, sowas ist aber bei Perl und FHEM öfters mal falsch.

Das Austesten ist bei solchen Sachen nicht ganz unkomplex, daher bin ich eigentlich auf der suche nach jemand der es ... ehem ... weiß, bevor ich das austesten muss.
FHEM auf Linkstation Mini, CUL 868 SlowRF, 2xCUL 868 RFR, CUL 433 für IT, 2xHMLAN-Configurator mit VCCU, ITV-100 Repeater, Sender und Aktoren von FHT, FS20, S300, HM, IT, RSL

Dietmar63

Du mußte klammern! : (A oder B) und C

&& bindet stärker als ||. Wenn du sie fort lässt wird eine implizite Klammer um b und C gesetzt
Gruß Dietmar
FB7390, CUL, 2 FHT, FS20
modules: 98_WOL.pm, 98_Heating_Control.pm,   98_WeekdayTimer.pm, 98_RandomTimer.pm, 59_Twilight.pm