2
0
mirror of https://github.com/fhem/fhem-mirror.git synced 2025-02-25 16:05:19 +00:00

93_DbLog: contrib 5.5.1

git-svn-id: https://svn.fhem.de/fhem/trunk@26821 2b470e98-0d58-463d-a4d8-8e2adae1ed80
This commit is contained in:
nasseeder1 2022-12-09 14:54:33 +00:00
parent 5ca17f92d7
commit 94e8a1222f

View File

@ -2585,7 +2585,6 @@ sub _DbLog_SBP_onRun_Log {
my $history = $store->{dbparams}{history};
my $current = $store->{dbparams}{current};
my $errorh = q{};
my $error = q{};
my $doins = 0; # Hilfsvariable, wenn "1" sollen inserts in Tabelle current erfolgen (updates schlugen fehl)
my $rowlback = q{}; # Eventliste für Rückgabe wenn Fehler
@ -2696,20 +2695,24 @@ sub _DbLog_SBP_onRun_Log {
eval { $sth_ih = $dbh->prepare($sqlins);
$sth_ih->{TraceLevel} = "$tl|$tf" if($tl); # Tracelevel setzen
$ins_hist = $sth_ih->execute();
$ins_hist = 0 if($ins_hist eq "0E0");
1;
}
or do { $errorh = $@;
or do { $error = $@;
Log3 ($name, 2, "DbLog $name - Error table $history - $errorh");
Log3 ($name, 2, "DbLog $name - Error table $history - $error");
$dbh->disconnect();
delete $store->{dbh};
$rowlback = $cdata if($useta); # nicht gespeicherte Datensätze nur zurück geben wenn Transaktion ein
if($useta) {
$rowlback = $cdata; # nicht gespeicherte Datensätze nur zurück geben wenn Transaktion ein
__DbLog_SBP_rollbackOnly ($name, $dbh, $history);
}
else {
__DbLog_SBP_commitOnly ($name, $dbh, $history);
}
$ret = {
name => $name,
msg => $errorh,
msg => $error,
ot => 0,
oper => $operation,
rowlback => $rowlback
@ -2720,9 +2723,6 @@ sub _DbLog_SBP_onRun_Log {
return;
};
$ins_hist = 0 if($ins_hist eq "0E0");
$error = __DbLog_SBP_commitOnly ($name, $dbh, $history);
if($ins_hist == $ceti) {
Log3 ($name, 4, "DbLog $name - $ins_hist of $ceti events inserted into table $history".($usepkh ? " using PK on columns $pkh" : ""));
}
@ -2844,6 +2844,7 @@ sub _DbLog_SBP_onRun_Log {
$nins_cur++;
}
if(!$nins_cur) {
Log3 ($name, 4, "DbLog $name - ".($#device_cur+1)." of ".($#device_cur+1)." events inserted into table $current ".($usepkc ? " using PK on columns $pkc" : ""));
}
@ -2900,11 +2901,11 @@ sub _DbLog_SBP_onRun_Log {
$sth_ih->bind_param_array (6, [@value]);
$sth_ih->bind_param_array (7, [@unit]);
$error = __DbLog_SBP_beginTransaction ($name, $dbh, $useta);
my @n2hist;
my $rowhref;
$error = __DbLog_SBP_beginTransaction ($name, $dbh, $useta);
eval {
($tuples, $rows) = $sth_ih->execute_array( { ArrayTupleStatus => \@tuple_status } );
@ -2950,21 +2951,23 @@ sub _DbLog_SBP_onRun_Log {
}
}
}
1;
# $error = __DbLog_SBP_commitOnly ($name, $dbh, $history);
#if ($error) {
# $rowlback = $cdata if($useta); # nicht gespeicherte Datensätze nur zurück geben wenn Transaktion ein
#}
};
if ($@) {
$error = $@;
}
or do { $error = $@;
Log3 ($name, 2, "DbLog $name - Error table $history - $error");
__DbLog_SBP_commitOnly ($name, $dbh, $history); # eingefügte Array-Daten bestätigen
if($useta) {
$rowlback = $cdata; # nicht gespeicherte Datensätze nur zurück geben wenn Transaktion ein
__DbLog_SBP_rollbackOnly ($name, $dbh, $history);
}
else {
if(defined $rowhref) { # nicht gespeicherte Datensätze ausgeben
Log3 ($name, 4, "DbLog $name - The following data are faulty and were not saved:");
@ -2973,8 +2976,9 @@ sub _DbLog_SBP_onRun_Log {
}
}
$rowlback = $cdata if($useta); # nicht gespeicherte Datensätze nur zurück geben wenn Transaktion ein
__DbLog_SBP_commitOnly ($name, $dbh, $history); # eingefügte Array-Daten bestätigen
}
};
}
if (lc($DbLogType) =~ m(current)) { # insert current mit/ohne primary key
@ -6737,8 +6741,8 @@ sub DbLog_commitMode {
my ($ac,$ta) = split "_", $cm;
$useac = ($ac =~ /off/) ? 0 :
($ac =~ /on/) ? 1 :
$useac = $ac =~ /off/xs ? 0 :
$ac =~ /on/xs ? 1 :
2;
$useta = 0 if($ta =~ /off/);