Reimplementierung von 55e9890a und 1465da30
authorSven Schöling <s.schoeling@linet-services.de>
Mon, 31 Jan 2011 17:02:35 +0000 (18:02 +0100)
committerSven Schöling <s.schoeling@linet-services.de>
Mon, 31 Jan 2011 17:02:35 +0000 (18:02 +0100)
Wurde in be40bd398c2911e87af5e9fd6025ea1faceb679c revertet.

Der ursprüngliche Bug 1056 wurde davon zwar behoben, aber beim Speichern von
Rechnungen wurden zum Teil Rechnungsdaten aus dem Auftrag überschrieben. Dieser
Patch übernimmt die Daten jetzt nur und ausschließlich, wenn ein Lieferschein
umgewandelt wird.

bin/mozilla/do.pl

index ae3436f..b9f7fc1 100644 (file)
@@ -751,6 +751,15 @@ sub invoice {
   my $currency = $form->{currency};
   invoice_links();
 
+  if ($form->{ordnumber}) {
+    require SL::DB::Order;
+    if (my $order = SL::DB::Manager::Order->find_by(ordnumber => $form->{ordnumber})) {
+      $order->load;
+      $form->{orddate} = $order->transdate_as_date;
+      $form->{$_}      = $order->$_ for qw(payment_id salesman_id taxzone_id quonumber);
+    }
+  }
+
   $form->{currency}     = $currency;
   $form->{exchangerate} = "";
   $form->{forex}        = $form->check_exchangerate(\%myconfig, $form->{currency}, $form->{invdate}, $buysell);