Feature: Bei Save as new von Aufträgen werden jetzt die folgenden Felder beachtet:
authorSven Schöling <s.schoeling@linet-services.de>
Thu, 3 Sep 2009 13:41:08 +0000 (15:41 +0200)
committerSven Schöling <s.schoeling@linet-services.de>
Thu, 3 Sep 2009 13:41:08 +0000 (15:41 +0200)
- Lieferdatum wird geleert, solange nicht geändert.
- Bearbeiter wird auf den aktuellen Benutzer gesetzt.
- Zusätzlich zum geschlossen Status wird jetzt auch der geliefert Status
  geleert.

Fix zu Bug 1110.

bin/mozilla/oe.pl

index 094c3cd..9de5cde 100644 (file)
@@ -1478,8 +1478,7 @@ sub save_as_new {
   check_oe_access();
 
   $form->{saveasnew} = 1;
-  $form->{closed}    = 0;
-  map { delete $form->{$_} } qw(printed emailed queued);
+  map { delete $form->{$_} } qw(printed emailed queued delivered closed);
 
   # Let Lx-Office assign a new order number if the user hasn't changed the
   # previous one. If it has been changed manually then use it as-is.
@@ -1491,6 +1490,17 @@ sub save_as_new {
     delete($form->{$idx});
   }
 
+  # clear reqdate unless changed
+  if ($form->{reqdate} && $form->{id}) {
+    my $saved_order = OE->retrieve_simple(id => $form->{id});
+    if ($saved_order && $saved_order->{reqdate} eq $form->{reqdate}) {
+      delete $form->{reqdate};
+    }
+  }
+
+  # update employee
+  $form->get_employee();
+
   &save;
 
   $lxdebug->leave_sub();