From: Jan Büren Date: Mon, 2 Aug 2021 07:55:45 +0000 (+0200) Subject: Falls der WF Auftrag -> Lieferschein genutzt wird, min. 1 Position übernehmen X-Git-Tag: kivitendo-mebil_0.1-0~9^2~20 X-Git-Url: http://wagnertech.de/git?a=commitdiff_plain;h=7a364ba1ae70e219988264ca2b9aeb528e0cb14a;p=kivitendo-erp.git Falls der WF Auftrag -> Lieferschein genutzt wird, min. 1 Position übernehmen Damit auch wirklich der Geliefert Status pro Position korrekt gesetzt werden kann, muss mindestens eine Position aus dem Original-Auftrag im Workflow vorhanden sein. --- diff --git a/bin/mozilla/do.pl b/bin/mozilla/do.pl index 0905b4876..6adf190ea 100644 --- a/bin/mozilla/do.pl +++ b/bin/mozilla/do.pl @@ -943,7 +943,20 @@ sub save { } $form->{id} = 0 if $form->{saveasnew}; - + # we rely on converted_from_orderitems, if the workflow is used + # be sure that at least one position is linked to the original orderitem + if ($form->{convert_from_oe_ids}) { + my $has_linked_pos; + for my $i (1 .. $form->{rowcount}) { + if ($form->{"converted_from_orderitems_id_$i"}) { + $has_linked_pos = 1; + last; + } + } + if (!$has_linked_pos) { + $form->error($locale->text('Need at least one original position for the workflow Order to Delivery Order!')); + } + } DO->save(); # saving the history if(!exists $form->{addition}) {