]> wagnertech.de Git - kivitendo-erp.git/commitdiff
single-dbh: Fehler in Transaktionen immer weiterwerfen
authorSven Schöling <s.schoeling@linet-services.de>
Wed, 17 Aug 2016 13:51:24 +0000 (15:51 +0200)
committerSven Schöling <s.schoeling@linet-services.de>
Fri, 2 Sep 2016 12:21:31 +0000 (14:21 +0200)
16 files changed:
SL/AM.pm
SL/AP.pm
SL/AR.pm
SL/ARAP.pm
SL/AccTransCorrections.pm
SL/BP.pm
SL/Common.pm
SL/DATEV.pm
SL/DO.pm
SL/FU.pm
SL/GL.pm
SL/IR.pm
SL/Notes.pm
SL/OE.pm
SL/SEPA.pm
SL/TODO.pm

index a17286711b953e7ccfe51bd0ff9c0e3c82244184..a1ad0bcf982bc196a3a8aba791aa11d8a0e33ed4 100644 (file)
--- a/SL/AM.pm
+++ b/SL/AM.pm
@@ -498,7 +498,8 @@ sub delete_lead {
   SL::DB->client->with_transaction(sub {
     $query = qq|DELETE FROM leads WHERE id = ?|;
     do_query($form, SL::DB->client->dbh, $query, $form->{id});
   SL::DB->client->with_transaction(sub {
     $query = qq|DELETE FROM leads WHERE id = ?|;
     do_query($form, SL::DB->client->dbh, $query, $form->{id});
-  });
+    1;
+  }) or do { die SL::DB->client->error };
 
   $main::lxdebug->leave_sub();
 }
 
   $main::lxdebug->leave_sub();
 }
@@ -606,7 +607,8 @@ sub save_language {
         ") VALUES (?, ?, ?, ?, ?, ?)";
     }
     do_query($form, $dbh, $query, @values);
         ") VALUES (?, ?, ?, ?, ?, ?)";
     }
     do_query($form, $dbh, $query, @values);
-  });
+    1;
+  }) or do { die SL::DB->client->error };
 
   $main::lxdebug->leave_sub();
 }
 
   $main::lxdebug->leave_sub();
 }
@@ -627,7 +629,8 @@ sub delete_language {
 
     $query = "DELETE FROM language WHERE id = ?";
     do_query($form, $dbh, $query, $form->{"id"});
 
     $query = "DELETE FROM language WHERE id = ?";
     do_query($form, $dbh, $query, $form->{"id"});
-  });
+    1;
+  }) or do { die SL::DB->client->error };
 
   $main::lxdebug->leave_sub();
 }
 
   $main::lxdebug->leave_sub();
 }
@@ -796,7 +799,8 @@ sub closebooks {
 
     # set close in defaults
     do_query($form, $dbh, $query, @values);
 
     # set close in defaults
     do_query($form, $dbh, $query, @values);
-  });
+    1;
+  }) or do { die SL::DB->client->error };
 
   $main::lxdebug->leave_sub();
 }
 
   $main::lxdebug->leave_sub();
 }
@@ -1097,7 +1101,8 @@ sub add_unit {
       }
       $sth->finish();
     }
       }
       $sth->finish();
     }
-  });
+    1;
+  }) or do { die SL::DB->client->error };
 
   $main::lxdebug->leave_sub();
 }
 
   $main::lxdebug->leave_sub();
 }
@@ -1375,7 +1380,8 @@ sub delete_tax {
   SL::DB->client->with_transaction(sub {
     $query = qq|DELETE FROM tax WHERE id = ?|;
     do_query($form, SL::DB->client->dbh, $query, $form->{id});
   SL::DB->client->with_transaction(sub {
     $query = qq|DELETE FROM tax WHERE id = ?|;
     do_query($form, SL::DB->client->dbh, $query, $form->{id});
-  });
+    1;
+  }) or do { die SL::DB->client->error };
 
   $main::lxdebug->leave_sub();
 }
 
   $main::lxdebug->leave_sub();
 }
@@ -1400,7 +1406,8 @@ sub save_price_factor {
     }
 
     do_query($form, $dbh, $query, @values);
     }
 
     do_query($form, $dbh, $query, @values);
-  });
+    1;
+  }) or do { die SL::DB->client->error };
 
   $main::lxdebug->leave_sub();
 }
 
   $main::lxdebug->leave_sub();
 }
@@ -1443,7 +1450,8 @@ sub delete_price_factor {
 
   SL::DB->client->with_transaction(sub {
     do_query($form, SL::DB->client->dbh, qq|DELETE FROM price_factors WHERE id = ?|, conv_i($form->{id}));
 
   SL::DB->client->with_transaction(sub {
     do_query($form, SL::DB->client->dbh, qq|DELETE FROM price_factors WHERE id = ?|, conv_i($form->{id}));
-  });
+    1;
+  }) or do { die SL::DB->client->error };
 
   $main::lxdebug->leave_sub();
 }
 
   $main::lxdebug->leave_sub();
 }
@@ -1480,7 +1488,8 @@ sub save_warehouse {
 
       $sth->finish();
     }
 
       $sth->finish();
     }
-  });
+    1;
+  }) or do { die SL::DB->client->error };
 
   $main::lxdebug->leave_sub();
 }
 
   $main::lxdebug->leave_sub();
 }
@@ -1512,7 +1521,8 @@ sub save_bins {
     }
 
     $sth->finish();
     }
 
     $sth->finish();
-  });
+    1;
+  }) or do { die SL::DB->client->error };
 
   $main::lxdebug->leave_sub();
 }
 
   $main::lxdebug->leave_sub();
 }
index ae75dc909d1137d0578379f2a15abcd74be4785a..6de1b158b821f4dad3055e823a2bd30d347003e5 100644 (file)
--- a/SL/AP.pm
+++ b/SL/AP.pm
@@ -403,7 +403,8 @@ sub delete_transaction {
   SL::DB->client->with_transaction(sub {
     my $query = qq|DELETE FROM ap WHERE id = ?|;
     do_query($form, SL::DB->client->dbh, $query, $form->{id});
   SL::DB->client->with_transaction(sub {
     my $query = qq|DELETE FROM ap WHERE id = ?|;
     do_query($form, SL::DB->client->dbh, $query, $form->{id});
-  });
+    1;
+  }) or do { die SL::DB->client->error };
 
   $main::lxdebug->leave_sub();
 
 
   $main::lxdebug->leave_sub();
 
index 510cc5d29cec55c38da8edfc6a38379c45c3d132..3b795d49244c7019a55e7f687b57d9a9229a356c 100644 (file)
--- a/SL/AR.pm
+++ b/SL/AR.pm
@@ -452,7 +452,8 @@ sub delete_transaction {
     # acc_trans entries are deleted by database triggers.
     my $query = qq|DELETE FROM ar WHERE id = ?|;
     do_query($form, SL::DB->client->dbh, $query, $form->{id});
     # acc_trans entries are deleted by database triggers.
     my $query = qq|DELETE FROM ar WHERE id = ?|;
     do_query($form, SL::DB->client->dbh, $query, $form->{id});
-  });
+    1;
+  }) or do { die SL::DB->client->error };
 
   $main::lxdebug->leave_sub();
 
 
   $main::lxdebug->leave_sub();
 
index 4d5c564aa5ac6e390424989d48a511055881fcfc..121ea065ac40d4acb51a65711a0f6fc31afe017d 100644 (file)
@@ -154,7 +154,8 @@ sub close_orders_if_billed {
     SL::DB->client->with_transaction(sub {
       my $query = qq|UPDATE oe SET closed = TRUE WHERE id IN (| . join(', ', ('?') x scalar @close_oe_ids) . qq|)|;
       do_query($form, $dbh, $query, @close_oe_ids);
     SL::DB->client->with_transaction(sub {
       my $query = qq|UPDATE oe SET closed = TRUE WHERE id IN (| . join(', ', ('?') x scalar @close_oe_ids) . qq|)|;
       do_query($form, $dbh, $query, @close_oe_ids);
-    });
+      1;
+    }) or do { die SL::DB->client->error };
   }
 
   $main::lxdebug->leave_sub();
   }
 
   $main::lxdebug->leave_sub();
index 1dad0724f74dd7639009a4ba384ed0fa590b57bb..fff16f759e3489b0e18bfd52e771f51eaba58ebf 100644 (file)
@@ -796,7 +796,8 @@ sub fix_ap_ar_wrong_taxkeys {
 
       $h_taxkey_only->finish();
       $h_taxkey_chart_id->finish();
 
       $h_taxkey_only->finish();
       $h_taxkey_chart_id->finish();
-    });
+      1;
+    }) or do { die SL::DB->client->error };
   }
 
   $main::lxdebug->leave_sub();
   }
 
   $main::lxdebug->leave_sub();
@@ -872,7 +873,8 @@ sub fix_invoice_inventory_with_taxkeys {
       }
 
       $sth->finish();
       }
 
       $sth->finish();
-    });
+      1;
+    }) or do { die SL::DB->client->error };
   }
 
   $main::lxdebug->leave_sub();
   }
 
   $main::lxdebug->leave_sub();
@@ -922,7 +924,8 @@ sub fix_wrong_taxkeys {
     $h_taxkey_only->finish();
     $h_taxkey_chart->finish();
     $h_transdate->finish();
     $h_taxkey_only->finish();
     $h_taxkey_chart->finish();
     $h_transdate->finish();
-  });
+    1;
+  }) or do { die SL::DB->client->error };
 
   $main::lxdebug->leave_sub();
 }
 
   $main::lxdebug->leave_sub();
 }
@@ -949,7 +952,8 @@ sub delete_transaction {
     do_query($form, $dbh, qq|DELETE FROM ap        WHERE id       = ?|, conv_i($params{trans_id}));
     do_query($form, $dbh, qq|DELETE FROM gl        WHERE id       = ?|, conv_i($params{trans_id}));
     do_query($form, $dbh, qq|DELETE FROM acc_trans WHERE trans_id = ?|, conv_i($params{trans_id}));
     do_query($form, $dbh, qq|DELETE FROM ap        WHERE id       = ?|, conv_i($params{trans_id}));
     do_query($form, $dbh, qq|DELETE FROM gl        WHERE id       = ?|, conv_i($params{trans_id}));
     do_query($form, $dbh, qq|DELETE FROM acc_trans WHERE trans_id = ?|, conv_i($params{trans_id}));
-  });
+    1;
+  }) or do { die SL::DB->client->error };
 
   $main::lxdebug->leave_sub();
 }
 
   $main::lxdebug->leave_sub();
 }
index 711b988e75eabce70181d86695b50aeaafda3996..9cf0750e8322f31ae1357bb7c6b014b9184cfe74 100644 (file)
--- a/SL/BP.pm
+++ b/SL/BP.pm
@@ -261,7 +261,8 @@ sub delete_spool {
         unlink(qq|$spool/$form->{"spoolfile_$i"}|);
       }
     }
         unlink(qq|$spool/$form->{"spoolfile_$i"}|);
       }
     }
-  });
+    1;
+  }) or do { die SL::DB->client->error };
 
   $main::lxdebug->leave_sub();
   return 1;
 
   $main::lxdebug->leave_sub();
   return 1;
index 31fbba9fee6092621d47fa128c689f9e7be4a3f3..28a3d5a14dd1d90d9c74150e34a63daf7a09ec7d 100644 (file)
@@ -434,7 +434,8 @@ sub save_email_status {
     do_query($form, $dbh, qq|UPDATE $table SET intnotes = ? WHERE id = ?|, $intnotes, $form->{id});
 
     $form->save_status($dbh);
     do_query($form, $dbh, qq|UPDATE $table SET intnotes = ? WHERE id = ?|, $intnotes, $form->{id});
 
     $form->save_status($dbh);
-  });
+    1;
+  }) or do { die SL::DB->client->error };
 
   $main::lxdebug->leave_sub();
 }
 
   $main::lxdebug->leave_sub();
 }
index eb23cf28467ef505bf741126938cb56326bc3acc..be3ec958cc6152220fe3043a9d7ccbbf70e33432 100644 (file)
@@ -293,7 +293,8 @@ sub save_datev_stamm {
 
     my $query = "INSERT INTO datev (" . join(', ', @columns) . ") VALUES (" . join(', ', ('?') x @columns) . ")";
     do_query($::form, $self->dbh, $query, map { $data->{$_} } @columns);
 
     my $query = "INSERT INTO datev (" . join(', ', @columns) . ") VALUES (" . join(', ', ('?') x @columns) . ")";
     do_query($::form, $self->dbh, $query, map { $data->{$_} } @columns);
-  });
+    1;
+  }) or do { die SL::DB->client->error };
 }
 
 sub export {
 }
 
 sub export {
index 0e143192ea77510cf1df51f47bac52923e85682c..4ba4828509494fbc07b930efb89fa003bd2095dc 100644 (file)
--- a/SL/DO.pm
+++ b/SL/DO.pm
@@ -578,7 +578,8 @@ sub mark_orders_if_delivered {
     foreach my $oe_id (keys %ship) {
         do_query($form, $dbh,"UPDATE oe SET delivered = ".($ship{$oe_id}->{delivered}?"TRUE":"FALSE")." WHERE id = ?", $oe_id);
     }
     foreach my $oe_id (keys %ship) {
         do_query($form, $dbh,"UPDATE oe SET delivered = ".($ship{$oe_id}->{delivered}?"TRUE":"FALSE")." WHERE id = ?", $oe_id);
     }
-  });
+    1;
+  }) or do { die SL::DB->client->error };
 
   $main::lxdebug->leave_sub();
 }
 
   $main::lxdebug->leave_sub();
 }
@@ -605,7 +606,8 @@ sub close_orders {
     my $query    = qq|UPDATE delivery_orders SET closed = TRUE WHERE id IN (| . join(', ', ('?') x scalar(@{ $params{ids} })) . qq|)|;
 
     do_query($form, $dbh, $query, map { conv_i($_) } @{ $params{ids} });
     my $query    = qq|UPDATE delivery_orders SET closed = TRUE WHERE id IN (| . join(', ', ('?') x scalar(@{ $params{ids} })) . qq|)|;
 
     do_query($form, $dbh, $query, map { conv_i($_) } @{ $params{ids} });
-  });
+    1;
+  }) or die { SL::DB->client->error };
 
   $form->new_lastmtime('delivery_orders');
 
 
   $form->new_lastmtime('delivery_orders');
 
index b98687f3e69c3096b32a557ead6f109dbf75f14e..8a2f2698a73dcf3883ec632edcf816412854be37 100644 (file)
--- a/SL/FU.pm
+++ b/SL/FU.pm
@@ -81,7 +81,8 @@ sub finish {
 
   SL::DB->client->with_transaction(sub {
     do_query($form, SL::DB->client->dbh, qq|UPDATE follow_ups SET done = TRUE WHERE id = ?|, conv_i($params{id}));
 
   SL::DB->client->with_transaction(sub {
     do_query($form, SL::DB->client->dbh, qq|UPDATE follow_ups SET done = TRUE WHERE id = ?|, conv_i($params{id}));
-  });
+    1;
+  }) or do { die SL::DB->client->error };
 
   $main::lxdebug->leave_sub();
 }
 
   $main::lxdebug->leave_sub();
 }
@@ -105,7 +106,8 @@ sub delete {
     do_query($form, $dbh, qq|DELETE FROM follow_up_links WHERE follow_up_id = ?|,                         $id);
     do_query($form, $dbh, qq|DELETE FROM follow_ups      WHERE id = ?|,                                   $id);
     do_query($form, $dbh, qq|DELETE FROM notes           WHERE (trans_id = ?) AND (trans_module = 'fu')|, $id);
     do_query($form, $dbh, qq|DELETE FROM follow_up_links WHERE follow_up_id = ?|,                         $id);
     do_query($form, $dbh, qq|DELETE FROM follow_ups      WHERE id = ?|,                                   $id);
     do_query($form, $dbh, qq|DELETE FROM notes           WHERE (trans_id = ?) AND (trans_module = 'fu')|, $id);
-  });
+    1;
+  }) or do { die SL::DB->client->error };
 
   $main::lxdebug->leave_sub();
 }
 
   $main::lxdebug->leave_sub();
 }
@@ -444,7 +446,8 @@ sub save_access_rights {
     }
 
     $sth->finish();
     }
 
     $sth->finish();
-  });
+    1;
+  }) or do { die SL::DB->client->error };
 
   $main::lxdebug->leave_sub();
 }
 
   $main::lxdebug->leave_sub();
 }
index bd8113eaf06fcce7c668a0ddc58cfb4403d423c9..1b71c94406a58c97353b7799335ec15622956d97 100644 (file)
--- a/SL/GL.pm
+++ b/SL/GL.pm
@@ -52,7 +52,8 @@ sub delete_transaction {
 
   SL::DB->with_transaction(sub {
     do_query($form, SL::DB->client->dbh, qq|DELETE FROM gl WHERE id = ?|, conv_i($form->{id}));
 
   SL::DB->with_transaction(sub {
     do_query($form, SL::DB->client->dbh, qq|DELETE FROM gl WHERE id = ?|, conv_i($form->{id}));
-  });
+    1;
+  }) or do { die SL::DB->client->error };
 
   $main::lxdebug->leave_sub();
 }
 
   $main::lxdebug->leave_sub();
 }
index f1a1b7c171c02e32f2ef36a09d2f4964ff4dcd89..4a5b22e1528b1317e305c93fe3d50f473d8306f7 100644 (file)
--- a/SL/IR.pm
+++ b/SL/IR.pm
@@ -933,7 +933,8 @@ sub delete_invoice {
     );
 
     map { do_query($form, $dbh, $_, @values) } @queries;
     );
 
     map { do_query($form, $dbh, $_, @values) } @queries;
-  });
+    1;
+  }) or do { die SL::DB->client->error };
 
   return 1;
 }
 
   return 1;
 }
index d7d657ce4cb35cbe202428e1e3b94b5537a58b9d..1d768f3754a417ee167001a05d150675e9b3c312 100644 (file)
@@ -34,7 +34,8 @@ sub save {
     push @values, $params{subject}, $params{body}, conv_i($params{id});
 
     do_query($form, $dbh, $query, @values);
     push @values, $params{subject}, $params{body}, conv_i($params{id});
 
     do_query($form, $dbh, $query, @values);
-  });
+    1;
+  }) or do { die SL::DB->client->error };
 
   $main::lxdebug->leave_sub();
 
 
   $main::lxdebug->leave_sub();
 
@@ -79,7 +80,8 @@ sub delete {
     do_query($form, $dbh, qq|DELETE FROM follow_up_links WHERE follow_up_id IN (SELECT DISTINCT id FROM follow_ups WHERE note_id = ?)|, $id);
     do_query($form, $dbh, qq|DELETE FROM follow_ups      WHERE note_id = ?|, $id);
     do_query($form, $dbh, qq|DELETE FROM notes           WHERE id = ?|, $id);
     do_query($form, $dbh, qq|DELETE FROM follow_up_links WHERE follow_up_id IN (SELECT DISTINCT id FROM follow_ups WHERE note_id = ?)|, $id);
     do_query($form, $dbh, qq|DELETE FROM follow_ups      WHERE note_id = ?|, $id);
     do_query($form, $dbh, qq|DELETE FROM notes           WHERE id = ?|, $id);
-  });
+    1;
+  }) or do { die SL::DB->client->error };
 
   $main::lxdebug->leave_sub();
 }
 
   $main::lxdebug->leave_sub();
 }
index 0e671bd38307ff2942149fea72bdfbca33adef50..cc285174001329f597b9730e0847da06594f1d38 100644 (file)
--- a/SL/OE.pm
+++ b/SL/OE.pm
@@ -885,8 +885,8 @@ sub _close_quotations_rfqs {
       $query = qq|UPDATE oe SET closed = TRUE WHERE id IN (| . join(', ', ('?') x scalar @close_ids) . qq|)|;
       do_query($form, $dbh, $query, @close_ids);
     }
       $query = qq|UPDATE oe SET closed = TRUE WHERE id IN (| . join(', ', ('?') x scalar @close_ids) . qq|)|;
       do_query($form, $dbh, $query, @close_ids);
     }
-
-  });
+    1;
+  }) or do { die SL::DB->client->error };
 
   $main::lxdebug->leave_sub();
 }
 
   $main::lxdebug->leave_sub();
 }
@@ -905,7 +905,7 @@ sub delete {
     unlink map { "$spool/$_" } @spoolfiles if $spool;
 
     1;
     unlink map { "$spool/$_" } @spoolfiles if $spool;
 
     1;
-  });
+  }) or do { die SL::DB->client->error };
 
   $main::lxdebug->leave_sub();
 
 
   $main::lxdebug->leave_sub();
 
index 0746732615f00af2f44e8d08da4bc8e5503dd2e8..b8cdee03f2235923ee62a3f597a8ab701e9e2f0d 100644 (file)
@@ -280,7 +280,8 @@ sub close_export {
     my $query        = qq|UPDATE sepa_export SET closed = TRUE WHERE id IN ($placeholders)|;
 
     do_query($form, $dbh, $query, map { conv_i($_) } @ids);
     my $query        = qq|UPDATE sepa_export SET closed = TRUE WHERE id IN ($placeholders)|;
 
     do_query($form, $dbh, $query, map { conv_i($_) } @ids);
-  });
+    1;
+  }) or do { die SL::DB->client->error };
 
   $main::lxdebug->leave_sub();
 }
 
   $main::lxdebug->leave_sub();
 }
index c575fa847ce1ef2c2f33070104b62a63ecd45cce..ff29abb0aebd1930a2bdc25fc805dfbcf8dbc1d1 100644 (file)
@@ -95,7 +95,8 @@ sub save_user_config {
     push @values, $id;
 
     do_query($form, $dbh, $query, @values);
     push @values, $id;
 
     do_query($form, $dbh, $query, @values);
-  });
+    1;
+  }) or do { die SL::DB->client->error };
 
   $main::lxdebug->leave_sub();
 }
 
   $main::lxdebug->leave_sub();
 }