Einkaufs-/Verkaufsbelege: Spalte taxzone_id bereits beim INSERT befüllen
authorMoritz Bunkus <m.bunkus@linet-services.de>
Tue, 26 Aug 2014 11:19:41 +0000 (13:19 +0200)
committerMoritz Bunkus <m.bunkus@linet-services.de>
Tue, 26 Aug 2014 11:20:16 +0000 (13:20 +0200)
Ansonsten gibt es wegen der neuen NOT NULL-Restriktion einen Fehler.

SL/AP.pm
SL/AR.pm
SL/DO.pm
SL/IR.pm
SL/IS.pm
SL/OE.pm

index cc7e06f..4d651e4 100644 (file)
--- a/SL/AP.pm
+++ b/SL/AP.pm
@@ -167,10 +167,10 @@ sub post_transaction {
       ($form->{id}) = selectrow_query($form, $dbh, qq|SELECT nextval('glid')|);
  
       $query =
-        qq|INSERT INTO ap (id, invnumber, employee_id,currency_id) | .
+        qq|INSERT INTO ap (id, invnumber, employee_id,currency_id, taxzone_id) | .
         qq|VALUES (?, ?, (SELECT e.id FROM employee e WHERE e.login = ?),
-                      (SELECT id FROM currencies WHERE name = ?) )|;
-      do_query($form, $dbh, $query, $form->{id}, $form->{invnumber}, $form->{login}, $form->{currency});
+                      (SELECT id FROM currencies WHERE name = ?), (SELECT taxzone_id FROM vendor WHERE id = ?) )|;
+      do_query($form, $dbh, $query, $form->{id}, $form->{invnumber}, $form->{login}, $form->{currency}, $form->{vendor_id});
 
     }
 
index a842b9d..95aba26 100644 (file)
--- a/SL/AR.pm
+++ b/SL/AR.pm
@@ -135,8 +135,8 @@ sub post_transaction {
     } else {
       $query = qq|SELECT nextval('glid')|;
       ($form->{id}) = selectrow_query($form, $dbh, $query);
-      $query = qq|INSERT INTO ar (id, invnumber, employee_id, currency_id) VALUES (?, 'dummy', ?, (SELECT id FROM currencies WHERE name=?))|;
-      do_query($form, $dbh, $query, $form->{id}, $form->{employee_id}, $form->{currency});
+      $query = qq|INSERT INTO ar (id, invnumber, employee_id, currency_id, taxzone_id) VALUES (?, 'dummy', ?, (SELECT id FROM currencies WHERE name=?), (SELECT taxzone_id FROM customer WHERE id = ?))|;
+      do_query($form, $dbh, $query, $form->{id}, $form->{employee_id}, $form->{currency}, $form->{customer_id});
       if (!$form->{invnumber}) {
         my $trans_number   = SL::TransNumber->new(type => 'invoice', dbh => $dbh, number => $form->{partnumber}, id => $form->{id});
         $form->{invnumber} = $trans_number->create_unique;
index 0960ad7..f91f7ae 100644 (file)
--- a/SL/DO.pm
+++ b/SL/DO.pm
@@ -250,8 +250,8 @@ sub save {
     $query = qq|SELECT nextval('id')|;
     ($form->{id}) = selectrow_query($form, $dbh, $query);
 
-    $query = qq|INSERT INTO delivery_orders (id, donumber, employee_id, currency_id) VALUES (?, '', ?, (SELECT currency_id FROM defaults LIMIT 1))|;
-    do_query($form, $dbh, $query, $form->{id}, conv_i($form->{employee_id}));
+    $query = qq|INSERT INTO delivery_orders (id, donumber, employee_id, currency_id, taxzone_id) VALUES (?, '', ?, (SELECT currency_id FROM defaults LIMIT 1), ?)|;
+    do_query($form, $dbh, $query, $form->{id}, conv_i($form->{employee_id}), $form->{taxzone_id});
   }
 
   my $project_id;
index f880f86..b36e606 100644 (file)
--- a/SL/IR.pm
+++ b/SL/IR.pm
@@ -81,7 +81,7 @@ sub post_invoice {
       &reverse_invoice($dbh, $form);
     } else {
       ($form->{id}) = selectrow_query($form, $dbh, qq|SELECT nextval('glid')|);
-      do_query($form, $dbh, qq|INSERT INTO ap (id, invnumber, currency_id) VALUES (?, '', (SELECT id FROM currencies WHERE name=?))|, $form->{id}, $form->{currency});
+      do_query($form, $dbh, qq|INSERT INTO ap (id, invnumber, currency_id, taxzone_id) VALUES (?, '', (SELECT id FROM currencies WHERE name=?), ?)|, $form->{id}, $form->{currency}, $form->{taxzone_id});
     }
   }
 
index 51f3c1b..f429034 100644 (file)
--- a/SL/IS.pm
+++ b/SL/IS.pm
@@ -583,8 +583,8 @@ sub post_invoice {
       $query = qq|SELECT nextval('glid')|;
       ($form->{"id"}) = selectrow_query($form, $dbh, $query);
 
-      $query = qq|INSERT INTO ar (id, invnumber, currency_id) VALUES (?, ?, (SELECT id FROM currencies WHERE name=?))|;
-      do_query($form, $dbh, $query, $form->{"id"}, $form->{"id"}, $form->{currency});
+      $query = qq|INSERT INTO ar (id, invnumber, currency_id, taxzone_id) VALUES (?, ?, (SELECT id FROM currencies WHERE name=?), ?)|;
+      do_query($form, $dbh, $query, $form->{"id"}, $form->{"id"}, $form->{currency}, $form->{taxzone_id});
 
       if (!$form->{invnumber}) {
         my $trans_number   = SL::TransNumber->new(type => $form->{type}, dbh => $dbh, number => $form->{invnumber}, id => $form->{id});
index e2663c5..279b08c 100644 (file)
--- a/SL/OE.pm
+++ b/SL/OE.pm
@@ -393,8 +393,8 @@ sub save {
     $query = qq|SELECT nextval('id')|;
     ($form->{id}) = selectrow_query($form, $dbh, $query);
 
-    $query = qq|INSERT INTO oe (id, ordnumber, employee_id, currency_id) VALUES (?, '', ?, (SELECT currency_id FROM defaults))|;
-    do_query($form, $dbh, $query, $form->{id}, $form->{employee_id});
+    $query = qq|INSERT INTO oe (id, ordnumber, employee_id, currency_id, taxzone_id) VALUES (?, '', ?, (SELECT currency_id FROM defaults), ?)|;
+    do_query($form, $dbh, $query, $form->{id}, $form->{employee_id}, $form->{taxzone_id});
   }
 
   my $amount    = 0;