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:
parent
5ca17f92d7
commit
94e8a1222f
@ -2585,7 +2585,6 @@ sub _DbLog_SBP_onRun_Log {
|
|||||||
my $history = $store->{dbparams}{history};
|
my $history = $store->{dbparams}{history};
|
||||||
my $current = $store->{dbparams}{current};
|
my $current = $store->{dbparams}{current};
|
||||||
|
|
||||||
my $errorh = q{};
|
|
||||||
my $error = q{};
|
my $error = q{};
|
||||||
my $doins = 0; # Hilfsvariable, wenn "1" sollen inserts in Tabelle current erfolgen (updates schlugen fehl)
|
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
|
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);
|
eval { $sth_ih = $dbh->prepare($sqlins);
|
||||||
$sth_ih->{TraceLevel} = "$tl|$tf" if($tl); # Tracelevel setzen
|
$sth_ih->{TraceLevel} = "$tl|$tf" if($tl); # Tracelevel setzen
|
||||||
$ins_hist = $sth_ih->execute();
|
$ins_hist = $sth_ih->execute();
|
||||||
|
$ins_hist = 0 if($ins_hist eq "0E0");
|
||||||
1;
|
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();
|
if($useta) {
|
||||||
delete $store->{dbh};
|
$rowlback = $cdata; # nicht gespeicherte Datensätze nur zurück geben wenn Transaktion ein
|
||||||
|
__DbLog_SBP_rollbackOnly ($name, $dbh, $history);
|
||||||
$rowlback = $cdata if($useta); # nicht gespeicherte Datensätze nur zurück geben wenn Transaktion ein
|
}
|
||||||
|
else {
|
||||||
|
__DbLog_SBP_commitOnly ($name, $dbh, $history);
|
||||||
|
}
|
||||||
|
|
||||||
$ret = {
|
$ret = {
|
||||||
name => $name,
|
name => $name,
|
||||||
msg => $errorh,
|
msg => $error,
|
||||||
ot => 0,
|
ot => 0,
|
||||||
oper => $operation,
|
oper => $operation,
|
||||||
rowlback => $rowlback
|
rowlback => $rowlback
|
||||||
@ -2720,9 +2723,6 @@ sub _DbLog_SBP_onRun_Log {
|
|||||||
return;
|
return;
|
||||||
};
|
};
|
||||||
|
|
||||||
$ins_hist = 0 if($ins_hist eq "0E0");
|
|
||||||
$error = __DbLog_SBP_commitOnly ($name, $dbh, $history);
|
|
||||||
|
|
||||||
if($ins_hist == $ceti) {
|
if($ins_hist == $ceti) {
|
||||||
Log3 ($name, 4, "DbLog $name - $ins_hist of $ceti events inserted into table $history".($usepkh ? " using PK on columns $pkh" : ""));
|
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++;
|
$nins_cur++;
|
||||||
}
|
}
|
||||||
|
|
||||||
if(!$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" : ""));
|
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 (6, [@value]);
|
||||||
$sth_ih->bind_param_array (7, [@unit]);
|
$sth_ih->bind_param_array (7, [@unit]);
|
||||||
|
|
||||||
$error = __DbLog_SBP_beginTransaction ($name, $dbh, $useta);
|
|
||||||
|
|
||||||
my @n2hist;
|
my @n2hist;
|
||||||
my $rowhref;
|
my $rowhref;
|
||||||
|
|
||||||
|
$error = __DbLog_SBP_beginTransaction ($name, $dbh, $useta);
|
||||||
|
|
||||||
eval {
|
eval {
|
||||||
($tuples, $rows) = $sth_ih->execute_array( { ArrayTupleStatus => \@tuple_status } );
|
($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);
|
# $error = __DbLog_SBP_commitOnly ($name, $dbh, $history);
|
||||||
|
|
||||||
#if ($error) {
|
#if ($error) {
|
||||||
# $rowlback = $cdata if($useta); # nicht gespeicherte Datensätze nur zurück geben wenn Transaktion ein
|
# $rowlback = $cdata if($useta); # nicht gespeicherte Datensätze nur zurück geben wenn Transaktion ein
|
||||||
#}
|
#}
|
||||||
};
|
}
|
||||||
|
or do { $error = $@;
|
||||||
if ($@) {
|
|
||||||
$error = $@;
|
|
||||||
|
|
||||||
Log3 ($name, 2, "DbLog $name - Error table $history - $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
|
if(defined $rowhref) { # nicht gespeicherte Datensätze ausgeben
|
||||||
Log3 ($name, 4, "DbLog $name - The following data are faulty and were not saved:");
|
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
|
if (lc($DbLogType) =~ m(current)) { # insert current mit/ohne primary key
|
||||||
@ -6737,8 +6741,8 @@ sub DbLog_commitMode {
|
|||||||
|
|
||||||
my ($ac,$ta) = split "_", $cm;
|
my ($ac,$ta) = split "_", $cm;
|
||||||
|
|
||||||
$useac = ($ac =~ /off/) ? 0 :
|
$useac = $ac =~ /off/xs ? 0 :
|
||||||
($ac =~ /on/) ? 1 :
|
$ac =~ /on/xs ? 1 :
|
||||||
2;
|
2;
|
||||||
|
|
||||||
$useta = 0 if($ta =~ /off/);
|
$useta = 0 if($ta =~ /off/);
|
||||||
|
Loading…
x
Reference in New Issue
Block a user