Wechselkurs wird falsch ausgelesen
authorJoachim Zach <info@ceos-gmbh.de>
Wed, 3 Nov 2010 11:03:11 +0000 (12:03 +0100)
committerSven Schöling <s.schoeling@linet-services.de>
Wed, 3 Nov 2010 11:03:11 +0000 (12:03 +0100)
Es hat sich herausgestellt, dass der Fehler nicht in der Formatierung lag. Das
Procedere ist wie folgt: Bei post_invoice wird geprüft, ob ein
Wechselkurseintrag für das fragliche Datum existiert:

Ja   -> diese Zahl wird genommen.
Nein -> $form->{exchangerate} wird als lokalisierter Eingabestring
        interpretiert und in eine Zahl konvertiert.

Fehlerhaft war die Abfrage: Es wurde $form->{transdate} statt $form->{invdate}
genommen. $form->{transdate} wird vom Aufrufer (in is.pl) aber vor dem Aufruf
nicht gesetzt, weshalb die Abfrage immer den "Nein"-Fall produzierte.

SL/IS.pm

index e5b4036..53de890 100644 (file)
--- a/SL/IS.pm
+++ b/SL/IS.pm
@@ -561,7 +561,7 @@ sub post_invoice {
   if ($form->{currency} eq $defaultcurrency) {
     $form->{exchangerate} = 1;
   } else {
-    $exchangerate = $form->check_exchangerate($myconfig, $form->{currency}, $form->{transdate}, 'buy');
+    $exchangerate = $form->check_exchangerate($myconfig, $form->{currency}, $form->{invdate}, 'buy');
   }
 
   $form->{exchangerate} =