X-Git-Url: http://wagnertech.de/git?a=blobdiff_plain;f=SL%2FIR.pm;h=d79e0fd5d9a10ebe68bc3c04111df7059358bf50;hb=60805cf20a495c1d408dbd5ed1e274ba21a71401;hp=56207bf1b96379cbb3587aa4ba9460ac19184fd6;hpb=2cd7062c523ff86c2d02e78aed58a8234262552b;p=kivitendo-erp.git diff --git a/SL/IR.pm b/SL/IR.pm index 56207bf1b..d79e0fd5d 100644 --- a/SL/IR.pm +++ b/SL/IR.pm @@ -107,8 +107,12 @@ sub post_invoice { if ($form->{storno}) { $form->{"qty_$i"} *= -1; } + + if ($main::eur) { + $form->{"inventory_accno_$i"} = $form->{"expense_accno_$i"}; + } - if ($form->{"qty_$i"} != 0) { + if ($form->{"id_$i"}) { # get item baseunit $query = qq|SELECT p.unit @@ -1218,7 +1222,7 @@ sub retrieve_item { sub vendor_details { $main::lxdebug->enter_sub(); - my ($self, $myconfig, $form) = @_; + my ($self, $myconfig, $form, @wanted_vars) = @_; # connect to database my $dbh = $form->dbconnect($myconfig); @@ -1245,6 +1249,14 @@ sub vendor_details { # remove id and taxincluded before copy back delete @$ref{qw(id taxincluded)}; + + @wanted_vars = grep({ $_ } @wanted_vars); + if (scalar(@wanted_vars) > 0) { + my %h_wanted_vars; + map({ $h_wanted_vars{$_} = 1; } @wanted_vars); + map({ delete($ref->{$_}) unless ($h_wanted_vars{$_}); } keys(%{$ref})); + } + map { $form->{$_} = $ref->{$_} } keys %$ref; $sth->finish;