Angebote/Aufträge: Beim "als neu Speichern" Wechselkurs richtig übernehmen.
authorBernd Bleßmann <bernd@kivitendo-premium.de>
Fri, 19 Feb 2016 11:38:56 +0000 (12:38 +0100)
committerBernd Bleßmann <bernd@kivitendo-premium.de>
Fri, 19 Feb 2016 11:38:56 +0000 (12:38 +0100)
Vorher ging die Formatierung kaputt, wenn zum aktuellen Datum (das des neuen
Belegs) noch kein Wechselkurs hinterlegt war.

Generell ist hier die Handhabung schlecht, denn man kann beim
"als neu Speichern" keinen neuen Wechselkurs eingeben, falls für den aktuellen
Tag noch keiner hinterlegt ist, sondern es wird der des alten Belegs
gespeichert.

Gleiches gilt beim Speichern des Belegs mit neuem Datum.

SL/OE.pm

index 1e6a47c..f192c1d 100644 (file)
--- a/SL/OE.pm
+++ b/SL/OE.pm
@@ -653,7 +653,10 @@ SQL
     $exchangerate = $form->check_exchangerate($myconfig, $form->{currency}, $form->{transdate}, ($form->{vc} eq 'customer') ? 'buy' : 'sell');
   }
 
-  $form->{exchangerate} = $exchangerate || $form->parse_amount($myconfig, $form->{exchangerate});
+  # from inputfield (exchangerate) or hidden (forex)
+  my $exchangerate_from_form = $form->{forex} || $form->parse_amount($myconfig, $form->{exchangerate});
+
+  $form->{exchangerate} = $exchangerate || $exchangerate_from_form;
 
   my $quotation = $form->{type} =~ /_order$/ ? 'f' : 't';