Moin,

es gibt inzwischen eine weitere wichtige Neuerung in AqBanking: Wir verwenden 
nun nicht mehr den Datentypen "double" um Betraege zu speichern. Stattdessen 
verwenden wir nun intern die "GNU Multiple Precision Arithmetic Library". 

Damit entfallen die bisher sporadisch auftretenden Rundungsfehler bei 
DTAUS-Records. Aehnlich macht es ja auch Gnucash seit langem - dort verwendet 
man ebanfalls rationale Zahlen, nur nicht ueber libgmp sondern mit einer 
eigenen Implementierung.

Nach aussen tritt diese Aenderung uebrigends kaum in Erscheinung, da ich ja 
dafuer extra den Datentypen AB_VALUE eingefuehrt hatte, mit genau der Idee, 
die interne Verwendung von "double" spaeter einmal durch eine bessere Loesung 
zu ersetzen. Und das ist nun passiert.

Allerdings representiert AB_VALUE solche Zahlen nun in den Umsatzdateien 
anders: Statt eine Zahl als "0,10" zu speichern, speichert AqBanking sie nun 
beispielsweise als "1/10".

Man kann weiterhin bestehende Dateien einlesen, weil AB_VALUE die Betraege 
auch als Fliesskommazahl einlesen kann. Aber gespeichert wird im neuen 
Format, damit die Genauigkeit auch beim Speichern erhalten bleibt.


Gruss
Martin

-- 
"Things are only impossible until they're not"

AqBanking - http://www.aqbanking.de/
LibChipcard - http://www.libchipcard.de/

-------------------------------------------------------------------------
Take Surveys. Earn Cash. Influence the Future of IT
Join SourceForge.net's Techsay panel and you'll get the chance to share your
opinions on IT & business topics through brief surveys - and earn cash
http://www.techsay.com/default.php?page=join.php&p=sourceforge&CID=DEVDEV
_______________________________________________
Aqbanking-devel mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/aqbanking-devel

Reply via email to