From 462f4de0311c68fd8306de0a055d20eff8a1edd3 Mon Sep 17 00:00:00 2001 From: DS_Starter Date: Fri, 21 May 2021 09:35:17 +0000 Subject: [PATCH] 76_Solarforcast: contrib 0.46.1 git-svn-id: https://svn.fhem.de/fhem/trunk@24482 2b470e98-0d58-463d-a4d8-8e2adae1ed80 --- fhem/contrib/DS_Starter/76_SolarForecast.pm | 34 ++++++++++++++------- 1 file changed, 23 insertions(+), 11 deletions(-) diff --git a/fhem/contrib/DS_Starter/76_SolarForecast.pm b/fhem/contrib/DS_Starter/76_SolarForecast.pm index 17c336bb1..13aebb126 100644 --- a/fhem/contrib/DS_Starter/76_SolarForecast.pm +++ b/fhem/contrib/DS_Starter/76_SolarForecast.pm @@ -116,6 +116,7 @@ BEGIN { # Versions History intern my %vNotesIntern = ( + "0.46.1" => "21.05.2021 set <> reset pvHistory ", "0.46.0" => "16.05.2021 integrate intotal, outtotal to currentBatteryDev, set maxconsumer to 9 ", "0.45.1" => "13.05.2021 change the calc of etotal at the beginning of every hour in _transferInverterValues ". "fix createNotifyDev for currentBatteryDev ", @@ -592,6 +593,7 @@ sub Set { my $arg = join " ", map { my $p = $_; $p =~ s/\s//xg; $p; } @a; ## no critic 'Map blocks' my $prop = shift @a; my $prop1 = shift @a; + my $prop2 = shift @a; return if(IsDisabled($name)); @@ -643,7 +645,8 @@ sub Set { opt => $opt, arg => $arg, prop => $prop, - prop1 => $prop1 + prop1 => $prop1, + prop2 => $prop2 }; if($hset{$opt} && defined &{$hset{$opt}{fn}}) { @@ -1019,11 +1022,18 @@ sub _setreset { ## no critic "not used" my $type = $hash->{TYPE}; if($prop eq "pvHistory") { - my $day = $paref->{prop1} // ""; # ein bestimmter Tag der pvHistory angegeben ? + my $day = $paref->{prop1} // ""; # ein bestimmter Tag der pvHistory angegeben ? + my $dhour = $paref->{prop2} // ""; # eine bestimmte Stunde eines Tages der pvHistory angegeben ? if ($day) { - delete $data{$type}{$name}{pvhist}{$day}; - Log3($name, 3, qq{$name - Day "$day" of pvHistory deleted}); + if($dhour) { + delete $data{$type}{$name}{pvhist}{$day}{$dhour}; + Log3($name, 3, qq{$name - Hour "$dhour" of day "$day" deleted in pvHistory}); + } + else { + delete $data{$type}{$name}{pvhist}{$day}; + Log3($name, 3, qq{$name - Day "$day" deleted in pvHistory}); + } } else { delete $data{$type}{$name}{pvhist}; @@ -5909,13 +5919,15 @@ Ein/Ausschaltzeiten sowie deren Ausführung vom SolarForecast Modul übernehmen
    - - - - - - - + + + + + + + + +
    consumerPlanning löscht die Planungsdaten aller registrierten Verbraucher
    Um die Planungsdaten nur eines Verbrauchers zu löschen verwendet man:
    set <name> reset consumerPlanning <Verbrauchernummer>
    pvHistory löscht den Speicher aller historischen Tage (01 ... 31)
    Um nur einen bestimmten historischen Tag zu löschen:
    set <name> reset pvHistory <Tag>
    consumerPlanning löscht die Planungsdaten aller registrierten Verbraucher
    Um die Planungsdaten nur eines Verbrauchers zu löschen verwendet man:
    set <name> reset consumerPlanning <Verbrauchernummer>
    pvHistory löscht den Speicher aller historischen Tage (01 ... 31)
    Um einen bestimmten historischen Tag zu löschen:
    set <name> reset pvHistory <Tag> (z.B. set <name> reset pvHistory 08)
    Um eine bestimmte Stunde eines historischer Tages zu löschen:
    set <name> reset pvHistory <Tag> <Stunde> (z.B. set <name> reset pvHistory 08 10)