-
- #set expense_accno=inventory_accno if they are different => bilanz
- $vendor_accno = ($ref->{expense_accno}!=$ref->{inventory_accno}) ? $ref->{inventory_accno} :$ref->{expense_accno};
-
-
- # get tax rates and description
- $accno_id = ($form->{vc} eq "customer") ? $ref->{income_accno} : $vendor_accno;
- $query = qq|SELECT c.accno, c.description, t.rate, t.taxnumber
+ # in collective order, copy global ordnumber, transdate, cusordnumber into item scope
+ # unless already present there
+ # remove _oe entries afterwards
+ map { $ref->{$_} = $ref->{"${_}_oe"} if ($ref->{$_} eq '') }
+ qw|ordnumber transdate cusordnumber|
+ if (@ids);
+ map { delete $ref->{$_} } qw|ordnumber_oe transdate_oe cusordnumber_oe|;
+
+ # delete orderitems_id in collective orders, so that they get cloned no matter what
+ delete $ref->{orderitems_id} if (@ids);
+
+ #set expense_accno=inventory_accno if they are different => bilanz
+ $vendor_accno =
+ ($ref->{expense_accno} != $ref->{inventory_accno})
+ ? $ref->{inventory_accno}
+ : $ref->{expense_accno};
+
+ # get tax rates and description
+ $accno_id =
+ ($form->{vc} eq "customer") ? $ref->{income_accno} : $vendor_accno;
+ $query = qq|SELECT c.accno, c.description, t.rate, t.taxnumber