The argument 'state' must not be null

Einrichtung der openHAB Umgebung und allgemeine Konfigurationsthemen.

Moderatoren: seppy, udo1toni

Antworten
bohnehouse
Beiträge: 17
Registriert: 3. Okt 2020 12:30
Answers: 0

The argument 'state' must not be null

Beitrag von bohnehouse »

Hallo Community,

ich kämpfe mal wieder mit einer Fehlermeldung:
Script execution of rule with UID 'Energiemonitor-3' failed: The argument 'state' must not be null. in Energiemonitor

Die Rule schaut folgendermaßen aus:

Code: Alles auswählen

rule "EM Netzbezug heute"
when
    Time cron "0/5 * * * * ?"       //every 5 seconds
then
    if(!(EM_SumConsumedToday.state instanceof Number))
        return;
    EM_SumConsumedToday.postUpdate(EM_SumConsumedTotal.deltaSince(ZonedDateTime.now().with(LocalTime.MIDNIGHT)))
end
Theoretisch müsste die Rule abbrechen, bevor es zur Fehlermeldung kommtm oder?

Jemand eine Idee was ich hier falsch gemacht habe?

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

Re: The argument 'state' must not be null

Beitrag von udo1toni »

Nein. Du prüfst ja nur den aktuellen Wert. Eher sollte es so aussehen:

Code: Alles auswählen

rule "EM Netzbezug heute"
when
    Time cron "0/5 * * * * ?"       //every 5 seconds
then
    if(!(EM_SumConsumedTotal.deltaSince(ZonedDateTime.now().with(LocalTime.MIDNIGHT)) instanceof Number))
        return;
    EM_SumConsumedToday.postUpdate(EM_SumConsumedTotal.deltaSince(ZonedDateTime.now().with(LocalTime.MIDNIGHT)))
end
openHAB4.3.5 stable in einem Debian-Container (bookworm) (Proxmox 8.4.1, LXC), mit openHABian eingerichtet

bohnehouse
Beiträge: 17
Registriert: 3. Okt 2020 12:30
Answers: 0

Re: The argument 'state' must not be null

Beitrag von bohnehouse »

Danke für die Rückmeldung.

Das Item EM_SumConsumedTotal ist aber vom Type Number und sollte daher nicht zu einem Fehler führen, oder?
screenshot.JPG
Du hast keine ausreichende Berechtigung, um die Dateianhänge dieses Beitrags anzusehen.

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

Re: The argument 'state' must not be null

Beitrag von udo1toni »

Was hat denn das eine mit dem anderen zu tun? Wenn Du auf deltaSince zugreifen willst, musst Du auch deltaSince prüfen.
openHAB4.3.5 stable in einem Debian-Container (bookworm) (Proxmox 8.4.1, LXC), mit openHABian eingerichtet

Antworten