2
0
mirror of https://github.com/fhem/fhem-mirror.git synced 2025-03-10 03:06:37 +00:00

93_DbLog: V3.10.4, fix addLog if no valueFn is used

git-svn-id: https://svn.fhem.de/fhem/trunk@16586 2b470e98-0d58-463d-a4d8-8e2adae1ed80
This commit is contained in:
nasseeder1 2018-04-11 17:00:00 +00:00
parent 988df702a4
commit 27c565b073
2 changed files with 14 additions and 10 deletions

View File

@ -1,5 +1,6 @@
# 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: 93_DbLog: V3.10.4, fix addLog if no valueFn is used
- bugfix: 93_DbLog: V3.10.3, minor fixes in addLog function
- new: 00_Neuron.pm, 10_NeuronPin.pm: support for Neuron Devices
- feature: 59_WUup: add attribute round

View File

@ -16,6 +16,7 @@
############################################################################################################################################
# Versions History done by DS_Starter & DeeSPe:
#
# 3.10.4 11.04.2018 fix addLog if no valueFn is used
# 3.10.3 10.04.2018 minor fixes in addLog
# 3.10.2 09.04.2018 add qualifier CN=<caller name> to addlog
# 3.10.1 04.04.2018 changed event parsing of Weather
@ -199,7 +200,7 @@ use Time::HiRes qw(gettimeofday tv_interval);
use Encode qw(encode_utf8);
no if $] >= 5.017011, warnings => 'experimental::smartmatch';
my $DbLogVersion = "3.10.3";
my $DbLogVersion = "3.10.4";
my %columns = ("DEVICE" => 64,
"TYPE" => 64,
@ -3564,7 +3565,7 @@ sub DbLog_AddLog($$$$$) {
my ($dev_type,$dev_name,$dev_reading,$read_val,$event,$ut);
my @row_array;
my $ts;
return if(IsDisabled($name) || !$hash->{HELPER}{COLSET} || $init_done != 1);
# Funktion aus Attr valueFn validieren
@ -3580,7 +3581,7 @@ sub DbLog_AddLog($$$$$) {
my @dc = split(":",$devrdspec);
pop @dc;
my $devspec = join(':',@dc);
my @exdvs = devspec2array($devspec);
Log3 $name, 4, "DbLog $name -> Addlog known devices by devspec: @exdvs";
foreach (@exdvs) {
@ -3611,7 +3612,7 @@ sub DbLog_AddLog($$$$$) {
push @exrds,$rd if($rd =~ m/^$rdspec$/);
}
Log3 $name, 4, "DbLog $name -> Readings extracted from Regex: @exrds";
if(!@exrds) {
Log3 $name, 4, "DbLog $name -> no Reading of device '$dev_name' selected from '$rdspec' used by addLog !";
next;
@ -3619,12 +3620,12 @@ sub DbLog_AddLog($$$$$) {
foreach (@exrds) {
$dev_reading = $_;
$read_val = defined($value)?$value:ReadingsVal($dev_name,$dev_reading,"");
$read_val = $value ne ""?$value:ReadingsVal($dev_name,$dev_reading,"");
$dev_type = uc($defs{$dev_name}{TYPE});
# dummy-Event zusammenstellen
$event = $dev_reading.": ".$read_val;
$event = $dev_reading.": ".$read_val;
# den zusammengestellten Event parsen lassen (evtl. Unit zuweisen)
my @r = DbLog_ParseEvent($dev_name, $dev_type, $event);
$dev_reading = $r[0];
@ -3637,10 +3638,9 @@ sub DbLog_AddLog($$$$$) {
$defs{$dev_name}{Helper}{DBLOG}{$dev_reading}{$hash->{NAME}}{TIME} = $now;
$defs{$dev_name}{Helper}{DBLOG}{$dev_reading}{$hash->{NAME}}{VALUE} = $read_val;
$ts = TimeNow();
# Anwender spezifische Funktion anwenden
if($value_fn ne '') {
$ts = TimeNow();
my $TIMESTAMP = $ts;
my $DEVICE = $dev_name;
my $DEVICETYPE = $dev_type;
@ -7212,4 +7212,7 @@ sub dbReadings($@) {
</ul>
=end html_DE
=cut
=cut