Presenter-Module für Listen von Verkaufs-/Einkaufsobjekte
[kivitendo-erp.git] / SL / IR.pm
index d8569ac..04e071e 100644 (file)
--- a/SL/IR.pm
+++ b/SL/IR.pm
@@ -44,6 +44,7 @@ use SL::DO;
 use SL::GenericTranslations;
 use SL::IO;
 use SL::MoreCommon;
+use SL::DB::Default;
 use List::Util qw(min);
 
 use strict;
@@ -210,7 +211,7 @@ sub post_invoice {
 
       # update parts table by setting lastcost to current price, don't allow negative values by using abs
       $query = qq|UPDATE parts SET lastcost = ? WHERE id = ?|;
-      @values = (abs($form->{"sellprice_$i"}), conv_i($form->{"id_$i"}));
+      @values = (abs($form->{"sellprice_$i"} / $basefactor), conv_i($form->{"id_$i"}));
       do_query($form, $dbh, $query, @values);
 
       # check if we sold the item already and
@@ -338,7 +339,7 @@ sub post_invoice {
 
       # update lastcost
       $query = qq|UPDATE parts SET lastcost = ? WHERE id = ?|;
-      do_query($form, $dbh, $query, $form->{"sellprice_$i"}, conv_i($form->{"id_$i"}));
+      do_query($form, $dbh, $query, $form->{"sellprice_$i"} / $basefactor, conv_i($form->{"id_$i"}));
     }
 
     next if $payments_only;
@@ -502,7 +503,7 @@ sub post_invoice {
   for my $i (1 .. $form->{paidaccounts}) {
     if ($form->{"acc_trans_id_$i"}
         && $payments_only
-        && ($::lx_office_conf{features}->{payments_changeable} == 0)) {
+        && (SL::DB::Default->get->payments_changeable == 0)) {
       next;
     }
 
@@ -685,7 +686,7 @@ sub post_invoice {
                                'table'   => 'ap',);
 
   # safety check datev export
-  if ($::lx_office_conf{datev_check}{check_on_purchase_invoice}) {
+  if ($::instance_conf->get_datev_check_on_purchase_invoice) {
     my $transdate = $::form->{invdate} ? DateTime->from_lxoffice($::form->{invdate}) : undef;
     $transdate  ||= DateTime->today;
 
@@ -1437,7 +1438,7 @@ sub post_payment {
   $old_form = save_form();
 
   # Delete all entries in acc_trans from prior payments.
-  if ($::lx_office_conf{features}->{payments_changeable} != 0) {
+  if (SL::DB::Default->get->payments_changeable != 0) {
     $self->_delete_payments($form, $dbh);
   }