Seite 1 von 1

var String MeinWert = Item.state (geht in einer rule nicht)

Verfasst: 10. Okt 2022 17:47
von TorstenE
Hallo Mitstreiter,

wenn ich den Wert eines "String"-Item Status in einer Rule an eine Variable wie folgt
übergeben will, dann nimmt diese Variable den Wert nicht an.

Code: Alles auswählen

var String MeinWert = Item.state
Ändere ich jedoch die Zuweisung wie nachfolgend, dann klappt es:

Code: Alles auswählen

var String MeinWert = Item.state.toString
Bei einem "Number"-Item funktioniert es jedoch.
Kann es an der Semantic-Class des Items liegen ?

Danke

Torsten

Re: var String MeinWert = Item.state (geht in einer rule nicht)

Verfasst: 10. Okt 2022 19:00
von udo1toni
Nein. Ein State ist eine State und kein String. openHAB KANN einen State automatisch konvertieren (indem es die Funktion .toString verwendet), es besteht aber kein Anspruch darauf ;)

Re: var String MeinWert = Item.state (geht in einer rule nicht)

Verfasst: 10. Okt 2022 19:19
von TorstenE
Hallo Udo,

aber ein State ist eben auch "irgend etwas". Ein Objekt, ein Zeiger, ein Sonstwas, und wenn es nur ein Bit ist.
Und (vermutlich) je nachdem was es für ein Item ist, hat das State auch seine "Eigenschaften". Das wäre
dann auch die Erklärung dafür :-)

oder ?

Torsten