diff --git a/fhem/CHANGED b/fhem/CHANGED index 626b83819..cb54591e8 100644 --- a/fhem/CHANGED +++ b/fhem/CHANGED @@ -1,5 +1,8 @@ # Add changes at the top of the list. Keep it in ASCII, and 80-char wide. # Do not insert empty lines here, update check depends on it. + - bugfix: 98_DOIFtools.pm: fixed Error: >name< has no TYPE, but following + keys: >< which occurs during a statistics report generation if + devices are deleted during event recording before - bugfix: HMCCUConf.pm: changed default value of ccudef-readingfilter - update: 10_IT: send EV1527 command for switch, change some log level - change: 98_powerMap: default value for reading pM_power was renamed to diff --git a/fhem/FHEM/98_DOIFtools.pm b/fhem/FHEM/98_DOIFtools.pm index 05a4d3d97..ca1470c73 100644 --- a/fhem/FHEM/98_DOIFtools.pm +++ b/fhem/FHEM/98_DOIFtools.pm @@ -875,8 +875,8 @@ sub DOIFtools_Get($@) $typsum = 0; $t=0; foreach my $key (sort keys %{$defs{$pn}->{READINGS}}) { - $rate = ($te ? int($hash->{READINGS}{$key}{VAL}/$te + 0.5) : 0) if ($key =~ m/^$rx($regex)/ and $defs{$1}->{TYPE} eq $typ); - if ($key =~ m/^$rx($regex)/ and $defs{$1}->{TYPE} eq $typ and $rate >= ReadingsNum($pn,"statisticsShowRate_ge",0)) { + $rate = ($te ? int($hash->{READINGS}{$key}{VAL}/$te + 0.5) : 0) if ($key =~ m/^$rx($regex)/ and defined($defs{$1}) and $defs{$1}->{TYPE} eq $typ); + if ($key =~ m/^$rx($regex)/ and defined($defs{$1}) and $defs{$1}->{TYPE} eq $typ and $rate >= ReadingsNum($pn,"statisticsShowRate_ge",0)) { $evtsum += $hash->{READINGS}{$key}{VAL}; $typsum += $hash->{READINGS}{$key}{VAL}; $allattr = " ".join(" ",keys %{$attr{$1}});