From: G. Richardson Date: Tue, 4 Nov 2014 11:04:43 +0000 (+0100) Subject: Rundung bei Debitorenbuchung, Kreditorenbuchung und Dialogbuchung X-Git-Tag: release-3.2.0beta~278 X-Git-Url: http://wagnertech.de/gitweb/gitweb.cgi/mfinanz.git/commitdiff_plain/0e68056cbc17b531266c16454f3a74ae1e57dea6?ds=inline;hp=0e68056cbc17b531266c16454f3a74ae1e57dea6 Rundung bei Debitorenbuchung, Kreditorenbuchung und Dialogbuchung Zwei neue Hilfsfunktionen für Form eingeführt die von ap/ar/gl genutzt werden: * calculate_tax wird zur Berechnung der Steuer bei ** update in ar, ap und gl ** post_transaction in AR.pm und AP.pm innerhalb von calculate_arap * calculate_arap berechnet netamount, amount und totaltax anhand einer vorhandenen $form in ar/ap, und formatiert und rundet die amount_$i and tax_$i in der $form. Das Ziel war es, daß diese drei Belege mit den gleichen Formeln zur Steuerberechnung bei Steuer inkl./exkl. arbeiten. Ein Vorteil im Vergleich zur Einkaufs- und Verkaufsrechnung ist, daß es hier keine Positionen/Mengen/Rabatte/etc gibt, sondern direkt Werte auf Konten bebucht werden, man muß nur Währungskurse berücksichtigen und beim Schreiben in die Datenbank auf die Vorzeichen achten. Einkaufs- und Verkaufsrechnungen werden hiervon nicht beeinflußt. Vor allem bei der Einstellung "MwSt. inkl" wird die Steuer nun immer auf zwei Stellen gerundet in die Datenbank geschrieben, und nicht (wie bisher in manchen Fällen) mit 5 Nachkommastellen, was zu mehreren Bugs geführt hat. Es gibt einen neuen Test t/form/arap.t der die Berechnungen dieser beiden Funktionen testet, nicht aber das eigentliche Buchen der Belege. Mit diesem Commit sollten für zukünftige Buchungen folgende Bugs behoben sein: 1691 - Rundung bei Berichten bei Buchungen mit MwSt inkl. 2029 - Rundungsfehler bei Dialogbuchung 2033 - Unterschiede in Rundungen durch taxincluded 2094 - Rundungsprobleme in Kreditorenbuchungen: Cent "kippt" bei Zahlungseinbuchung 2435 - Rundungsfehler in Kreditorenbuchungen (Netto vs. Brutto) Dieser Commit greift in die Eingeweide von Uraltcode ein, wo die diversen Stellen alle mal mit copy&paste entstanden und dann langsam divergiert sind, hat also hohes Fehlerpotential. Es lohnt sich, den DATEV-Check anzuschalten. ---