If statement, welche logischen Operationen (NOR)

Einrichtung der openHAB Umgebung und allgemeine Konfigurationsthemen.

Moderatoren: seppy, udo1toni

Antworten
azzkikrboy
Beiträge: 50
Registriert: 18. Apr 2020 13:23
Answers: 1

If statement, welche logischen Operationen (NOR)

Beitrag von azzkikrboy »

Hallo zusammen,
ich bin schon seit längerer Zeit auf der suche wie ich eine NOR Abfrage in einer OH rule darstellen kann.
Leider habe ich bis jetzt nichts gefunden.

Ich möchte den Rollladenstatus mit NOR verknüpfen:

Code: Alles auswählen

NOR (RL1>95 , RL2>95)
Hat jemand hier da eine Idee?
Danke

Benutzeravatar
udo1toni
Beiträge: 15249
Registriert: 11. Apr 2018 18:05
Answers: 242
Wohnort: Darmstadt

Re: If statement, welche logischen Operationen (NOR)

Beitrag von udo1toni »

Also weder der eine noch der andere Wert ist größer als 95?

Code: Alles auswählen

if(!(RL1 > 95 || RL2 > 95))
Vorausgesetzt, RL1 und RL2 sind Variablen oder Konstanten. Handlet es sich um Items, dann musst Du natürlich stattdessen

Code: Alles auswählen

if(!((RL1.state as Number) > 95 || (RL2.state as Number) > 95))
schreiben.
! bedeutet NOT, || bedeutet OR, also bedeutet !(||) NOR
Du könntest auch die Logik umdrehen:

Code: Alles auswählen

if(RL1 <= 95 && RL2 <= 95))
RL1 und RL2 sind kleiner oder gleich 95.
openHAB4.3.3 stable in einem Debian-Container (bookworm) (Proxmox 8.3.5, LXC), mit openHABian eingerichtet

azzkikrboy
Beiträge: 50
Registriert: 18. Apr 2020 13:23
Answers: 1

Re: If statement, welche logischen Operationen (NOR)

Beitrag von azzkikrboy »

Hallo,

danke für den Wink mit dem Zaunpfahl. Das mit dem verneinen der Oder-Verknüpfung hatte ich schon probiert, allerdings mit

Code: Alles auswählen

 RL1 !|| RL2
... was nicht geht.

Das nicht (!) einfach vor die Oder in Klammern zu setzten, darauf bin ich nicht gekommen :(

Ich habe das mal geändert, mal sehen ob funktioniert.

Danke.

PS: bist Du also auch hier im Forum ;)

Antworten