Workflow quotation -> order. Quell-Beleg schließen.
authorJan Büren <jan@kivitendo.de>
Tue, 2 Oct 2018 07:54:27 +0000 (09:54 +0200)
committerJan Büren <jan@kivitendo.de>
Tue, 2 Oct 2018 07:54:27 +0000 (09:54 +0200)
Angebote|Preisanfrage werden immer geschlossen, falls
es ein Auftrag oder Lieferantenauftrag daraus generiert wird.
Die ursprüngliche Funktion in OE.pm kann als Quelle noch
mehrere Belege haben, dies ist im aktuellen Workflow nur eine
1:1 Beziehungen. TODO: Testfall.

SL/Controller/Order.pm

index 56326b5..894f119 100644 (file)
@@ -1405,7 +1405,11 @@ sub save {
 
     # link records
     if ($::form->{converted_from_oe_id}) {
-      SL::DB::Order->new(id => $::form->{converted_from_oe_id})->load->link_to_record($self->order);
+      my $quo = SL::DB::Order->new(id => $::form->{converted_from_oe_id})->load;
+      # implement OE::_close_quotations_rfqs - this a 1 : 1 connection
+      # close only if workflow: quotation -> order. TODO test case
+      $quo->update_attributes(closed => 1) if $quo->type =~ /_quotation$/;
+      $quo->link_to_record($self->order);
 
       if (scalar @{ $::form->{converted_from_orderitems_ids} || [] }) {
         my $idx = 0;