Hallo Martin und aqbanking-Leser,
der momentane DTAUS-importer von aqbanking akzeptiert nur hunderprozent
korrekte DTAUS-Dateien. Im Rahmen von diversen Testaktionen hatte ich aber
den Fall, dass die Checksums zwar falsch, der Rest der Daten aber korrekt und
sinnvoll war. Der momentane DTAUS-Importer verweigert auf Grund der falschen
checksums aber jeglichen Import. Kann man das nicht etwas lockern?
Im angehängten patch hab ich die jeweiligen Abbrüche komplett rauskommentiert;
man würde also nur auf der console entsprechende Fehlermeldungen lesen,
könnte sich in der importierenden Applikation aber ansonsten selber
überlegen, ob man die Buchungen will und vor allem welche davon. Beim
testweisen Import von DTAUS nach gnucash einer Datei, die man manuell aber
mächtig bearbeitet hatte, las man auf der console dann:
3:2006/09/19 21-15-04:aqbanking(6565):dtaus-import.c: 741: Bad number of C
sets (is 3, should be 23)
3:2006/09/19 21-15-04:aqbanking(6565):dtaus-import.c: 790: Bad account id
checksum (is 8017637352,000000, should be 0,000000)
3:2006/09/19 21-15-04:aqbanking(6565):dtaus-import.c: 818: Bad bank code
checksum (is 44761380,000000, should be 0,000000)
3:2006/09/19 21-15-04:aqbanking(6565):dtaus-import.c: 846: Bad EUR checksum
(is 56,37, should be 0,00)
Nur weil die Abbrüche rauskommentiert waren, hat man überhaupt mehr als die
erste Meldung gesehen und die Buchungen dann in der Applikation gehabt. Wäre
das eine Option? Alternativ: Gäbe es eine Möglichkeit, wenn man den
AB_IMEXPORTER hat, dass man da sagt "Checksum-Fehler etc. bitte ignorieren"?
In der momentanen Struktur vom dtaus-importer sieht mir das nicht ganz so
einfach aus. Da würde ich eher dafür stimmen, die checksum-Fehler nicht zum
Abbruch zu machen. Meinungen?
Christian
Index: src/plugins/parsers/dtaus/dtaus-import.c
===================================================================
--- src/plugins/parsers/dtaus/dtaus-import.c (Revision 1058)
+++ src/plugins/parsers/dtaus/dtaus-import.c (Arbeitskopie)
@@ -739,8 +739,8 @@
}
if (i!=csets) {
DBG_ERROR(AQBANKING_LOGDOMAIN, "Bad number of C sets (is %d, should be %d)", csets, i);
- GWEN_Buffer_free(tmp);
- return -1;
+ /* GWEN_Buffer_free(tmp);
+ return -1; */
}
/* checksum of DEM values */
@@ -788,8 +788,8 @@
if (sumAccountIds!=dd) {
DBG_ERROR(AQBANKING_LOGDOMAIN, "Bad account id checksum (is %f, should be %f)",
sumAccountIds, dd);
- GWEN_Buffer_free(tmp);
- return -1;
+ /* GWEN_Buffer_free(tmp);
+ return -1; */
}
else {
DBG_DEBUG(AQBANKING_LOGDOMAIN, "Account id checksum ok");
@@ -816,8 +816,8 @@
if (sumBankCodes!=dd) {
DBG_ERROR(AQBANKING_LOGDOMAIN, "Bad bank code checksum (is %f, should be %f)",
sumBankCodes, dd);
- GWEN_Buffer_free(tmp);
- return -1;
+ /* GWEN_Buffer_free(tmp);
+ return -1; */
}
else {
DBG_DEBUG(AQBANKING_LOGDOMAIN, "Bank code checksum ok");
@@ -844,8 +844,8 @@
if (sumEUR!=dd) {
DBG_ERROR(AQBANKING_LOGDOMAIN, "Bad EUR checksum (is %.2f, should be %.2f)",
sumEUR/100.0, dd/100.0);
- GWEN_Buffer_free(tmp);
- return -1;
+ /* GWEN_Buffer_free(tmp);
+ return -1; */
}
else {
DBG_DEBUG(AQBANKING_LOGDOMAIN, "EUR checksum ok");
-------------------------------------------------------------------------
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