From 99d8aaf4fd6df466ee540770cc7e80ae724dd4ad Mon Sep 17 00:00:00 2001 From: "G. Richardson" Date: Wed, 3 Sep 2014 16:19:20 +0200 Subject: [PATCH] netprice auf Anzahl von Nachkommastellen von sellprice runden MIME-Version: 1.0 Content-Type: text/plain; charset=utf8 Content-Transfer-Encoding: 8bit Es geht um die Anzeige der Einzelpreise von Positionen der Druckvorlagen. Bisher wurde netprice hart auf 2 Nachkommastellen gerundet, was zu Problemen bei Subcentpreisen führte. Dies hatte den Effekt, daß z.B. Menge 1000 und Sellprice 0.0036 eine linetotal von 3.6 ergab, und netprice mit 3.6/1000 auf 2 Nachkommastellen gerundet zu 0 wurde. In der Druckvorlage wurde dadurch der effektive Einzelpreis zu 0. Rundet man auf die Anzahl der Nachkommastellen von sellprice (in diesem Beispiel 4), wird daraus wieder 0.0036 und kann in der Druckvorlage korrekt angezeigt werden. --- SL/IS.pm | 2 +- SL/OE.pm | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/SL/IS.pm b/SL/IS.pm index f429034e8..6c5aa9ffe 100644 --- a/SL/IS.pm +++ b/SL/IS.pm @@ -238,7 +238,7 @@ sub invoice_details { my $discount_round_error = $discount + ($linetotal_exact - $nodiscount_exact_linetotal); # not used - $form->{"netprice_$i"} = $form->round_amount($form->{"qty_$i"} ? ($linetotal / $form->{"qty_$i"}) : 0, 2); + $form->{"netprice_$i"} = $form->round_amount($form->{"qty_$i"} ? ($linetotal / $form->{"qty_$i"}) : 0, $decimalplaces); push @{ $form->{TEMPLATE_ARRAYS}->{netprice} }, ($form->{"netprice_$i"} != 0) ? $form->format_amount($myconfig, $form->{"netprice_$i"}, $decimalplaces) : ''; push @{ $form->{TEMPLATE_ARRAYS}->{netprice_nofmt} }, ($form->{"netprice_$i"} != 0) ? $form->{"netprice_$i"} : ''; diff --git a/SL/OE.pm b/SL/OE.pm index 279b08cce..52a5a61d6 100644 --- a/SL/OE.pm +++ b/SL/OE.pm @@ -1236,7 +1236,7 @@ sub order_details { my $discount_round_error = $discount + ($linetotal_exact - $nodiscount_exact_linetotal); # not used - $form->{"netprice_$i"} = $form->round_amount($form->{"qty_$i"} ? ($linetotal / $form->{"qty_$i"}) : 0, 2); + $form->{"netprice_$i"} = $form->round_amount($form->{"qty_$i"} ? ($linetotal / $form->{"qty_$i"}) : 0, $decimalplaces); push @{ $form->{TEMPLATE_ARRAYS}->{netprice} }, ($form->{"netprice_$i"} != 0) ? $form->format_amount($myconfig, $form->{"netprice_$i"}, $decimalplaces) : ''; push @{ $form->{TEMPLATE_ARRAYS}->{netprice_nofmt} }, ($form->{"netprice_$i"} != 0) ? $form->{"netprice_$i"} : ''; -- 2.20.1