98_DOIF.pm:card: "N/A" value improvements

git-svn-id: https://svn.fhem.de/fhem/trunk/fhem@24543 2b470e98-0d58-463d-a4d8-8e2adae1ed80
This commit is contained in:
Damian 2021-05-30 12:42:13 +00:00
parent 0677ba52cf
commit 1f7b3e3541

View File

@ -1363,17 +1363,15 @@ sub collect_setValue
$r = ($r =~ /(-?\d+(\.\d+)?)/ ? $1 : "N/A");
${$collect}{value}=$r;
${$collect}{time}=$seconds;
return if ($r eq "N/A");
my $diff_slots=1;
my $last_slot;
my $dim=${$collect}{dim};
my $va=${$collect}{values};
my $ta=${$collect}{times};
if ($r ne "N/A") {
my $seconds_per_slot=$hours*3600/$dim;
if (@{$ta} == $dim) {
@ -1410,8 +1408,7 @@ sub collect_setValue
${$va}[$dim-1]=$r;
${$ta}[$dim-1]=$seconds;
}
}
my $maxVal;
my $maxValTime;
@ -4652,13 +4649,23 @@ sub card
if ($plot ne "1" and $minVal ne $maxVal) {
$scaling=1;
if ($val ne "N/A") {
$minPlot=($value < $minVal ? $value : $minVal);
$maxPlot=($value > $maxVal ? $value : $maxVal);
} else {
my $minimum=(($value<$min and $value<$minVal) ? $value:($min<$minVal) ? $min:$minVal);
my $maximum=(($value>$max and $value>$maxVal) ? $value:($max>$maxVal) ? $max:$maxVal);
$minPlot=$minVal;
$maxPlot=$maxVal;
}
} else {
my $minimum;
my $maximum;
if ($val ne "N/A") {
$minimum=(($value<$min and $value<$minVal) ? $value:($min<$minVal) ? $min:$minVal);
$maximum=(($value>$max and $value>$maxVal) ? $value:($max>$maxVal) ? $max:$maxVal);
} else {
$minimum=(($min<$minVal) ? $min:$minVal);
$maximum=(($max>$maxVal) ? $max:$maxVal);
}
$minPlot=(($min < 0 and $minVal > 0) ? 0 : $minimum);
$maxPlot=(($max > 0 and $maxVal < 0) ? 0 : $maximum);
}