- Platform information:
- openHAB version: 5.2.3
I have the follow rule:
rule "Wasserverbrauch Tag Woche Monat Jahr"
when
Item rawwater changed
then
val ZonedDateTime zdt = ZonedDateTime.now() // jetzt
val ZonedDateTime start_of_day = zdt.with(LocalTime.MIDNIGHT) // heute, Mitternacht
val ZonedDateTime start_of_week = start_of_day.minusDays(start_of_day.getDayOfWeek.getValue - 1) // Montag
val ZonedDateTime start_of_month = start_of_day.withDayOfMonth(1) // Erster Tag des Monats
val ZonedDateTime start_of_year = start_of_day.withDayOfYear(1) // Erster Tag des Jahres
if ((rawwater.deltaSince(start_of_day) as Number).floatValue != null)
{
val rawwater_Heute = (rawwater.deltaSince(start_of_day) as Number).floatValue
rawwaterTag.postUpdate(rawwater_Heute)
}
if ((rawwater.deltaSince(start_of_week) as Number).floatValue != null)
{
val rawwater_Woche = (rawwater.deltaSince(start_of_week) as Number).floatValue
rawwaterWoche.postUpdate(rawwater_Woche)
}
if ((rawwater.deltaSince(start_of_month) as Number).floatValue != null)
{
val rawwater_Monat = (rawwater.deltaSince(start_of_month) as Number).floatValue
rawwaterMonat.postUpdate(rawwater_Monat)
}
if ((rawwater.deltaSince(start_of_year) as Number).floatValue != null)
{
val rawwater_Jahr = (rawwater.deltaSince(start_of_year) as Number).floatValue
rawwaterJahr.postUpdate(rawwater_Jahr)
}
end
Shortly after the start of each new day, I get the following error:
Script execution of rule with UID ‘judo-4’ failed: cannot invoke method public abstract float java.lang.Number.floatValue() on null in judo
What’s the problem here?
This problem doesn’t occur the rest of the day—only shortly after midnight.