steuerfilterung.pl: nicht manuell früh committen, um Mehrfachausführung zu ermöglichen
authorMoritz Bunkus <m.bunkus@linet-services.de>
Mon, 29 Jul 2013 13:06:17 +0000 (15:06 +0200)
committerMoritz Bunkus <m.bunkus@linet-services.de>
Mon, 29 Jul 2013 13:10:18 +0000 (15:10 +0200)
Z.B. wenn der Benutzer den Zurück-Button benutzt oder so. Das Commit
wird von kivitendo später eh ausgeführt, sofern das Script erfolgreich
war.

sql/Pg-upgrade2/steuerfilterung.pl

index 8105c32..f5507e0 100644 (file)
@@ -15,6 +15,9 @@ sub run {
   my $categories;
   my $tax_id;
 
+  my $query = qq|ALTER TABLE tax ADD chart_categories TEXT|;
+  $self->db_query($query);
+
   if ( $::form->{continued_tax} ) {
     my $update_query;
     foreach my $i (1 .. $::form->{rowcount}) {
@@ -31,14 +34,9 @@ sub run {
     }
     $update_query = qq|ALTER TABLE tax ALTER COLUMN chart_categories SET NOT NULL|;
     $self->db_query($update_query);
-    $self->dbh->commit();
     return 1;
   }
 
-  my $query = qq|ALTER TABLE tax ADD chart_categories TEXT|;
-  $self->db_query($query);
-  $self->dbh->commit();
-
   my @well_known_taxes = (
       { taxkey => 0,  rate => 0,    taxdescription => qr{keine.*steuer}i,                       categories => 'ALQCIE' },
       { taxkey => 1,  rate => 0,    taxdescription => qr{frei}i,                                categories => 'ALQCIE' },