Stopp!
Warum willst Du überhaupt selbst teilen?
Woher bekommt das Item seinen Status (welches Binding...)? Wie ist das Item definiert? Wie ist der Channel definiert?
openHAB beherrscht Units of Measurement. Bei den meisten Bindings ist das inzwischen mit eingebaut, so dass man "nur" Channel und Item korrekt definieren muss, um auch korrekte Messwerte geliefert zu bekommen.
Bei bestimmten Bindings kann es etwas tricky sein, den Wert samt korrekter Einheit zu übergeben, wenn man das aber mal eingerichtet hat, musst Du nur noch angeben, in welcher Einheit Du die Anzeige haben willst.
Hier ist es wohl so, dass Wh im Item landen. Es handelt sich also um ein Number:Energy Item. Wenn Du im Channel konfigurierst, dass der Wert mit Wh als Einheit empfangen wird, reicht es, beim Item als gewünschte Einheit kWh hinzuschreiben und der Wert wird direkt korrekt angezeigt.
Ach so... Per Rule
Gegeben, dass Du das Item nicht als Number:Energy Item anlegen kannst, wäre der korrekte Ausdruck:
Code: Alles auswählen
opendtu_used_energy_kwh.postUpdate((opendtu_used_energy.state as Number).floatValue/1000)
Beachte die Groß-/Kleinschreibung, number gibt es nicht, wohl aber Number.
openHAB5.0.1 stable in einem Debian-Container (trixie, OpenJDK 21 headless runtime) (Proxmox 9.0.11, LXC)