Rule funktioniert nicht mehr seit Update auf Rel:4.3.6
Verfasst: 18. Jul 2025 11:33
Ich habe seit dem Upgrade auf Version OH 4.3.6 eine Fehlermeldung im Log, die ich seither nicht hatte.
Die DSL-Regel:
Hat jemand einen Tipp für mich ?
Code: Alles auswählen
2025-07-18 11:00:00.565 [ERROR] [.handler.AbstractScriptModuleHandler] - Script execution of rule with UID 'persistence_hichi-1' failed: The argument 'state' must not be null. in persistence_hichi
Code: Alles auswählen
rule "persistence Stromzähler"
when
Item Dummy_pers_9 changed from OFF to ON or
Time cron "0 0 0/1 1/1 * ? *"
then
val VerbrauchTag = esp32c3_01_total_in.deltaSince(ZonedDateTime.now().with(LocalTime.MIDNIGHT)) as Number // Heute aus Gesamtverbrauch
val VerbrauchVortag = esp32c3_01_total_in.deltaBetween(now.minusDays(1).with(LocalTime.MIN),now.minusDays(1).with(LocalTime.MAX)) // gestern
val VerbrauchMonat = esp32c3_01_total_in.deltaSince(now.withDayOfMonth(1).with(LocalTime.MIDNIGHT)) // Monat
esp32c3_01_cfPY.postUpdate(5053.0) // Vortragswert per 15.5.24
esp32c3_01_carryforwardini.postUpdate(8138.0) // Vortragswert per 15.5.25
var VerbrauchJahr = (esp32c3_01_total_in.state as QuantityType<Energy> - esp32c3_01_carryforwardini.state as QuantityType<Energy>) // Jahr - hilfsweise ;-)
var VerbrauchVorJahr = (esp32c3_01_carryforwardini.state as QuantityType<Energy> - esp32c3_01_cfPY.state as QuantityType<Energy>) // Vorjahr - rechnerisch
val VerbrauchVorMonat = esp32c3_01_total_in.deltaBetween(ZonedDateTime.now.minusMonths(1).withDayOfMonth(1).with(LocalTime.MIDNIGHT), ZonedDateTime.now.withDayOfMonth(1).with(LocalTime.MIDNIGHT).minusSeconds(1)) // Vormonat
esp32c3_01_yd.postUpdate(VerbrauchVortag) // Gestern
esp32c3_01_MTD.postUpdate(VerbrauchMonat) // Monat
esp32c3_01_pM.postUpdate(VerbrauchVorMonat) // VormonatMonat
esp32c3_01_YTD.postUpdate(VerbrauchJahr) // Jahr
esp32c3_01_PY.postUpdate(VerbrauchVorJahr) // Vorjahr
esp32c3_01_curr.postUpdate(VerbrauchTag) // Heute
end