Nachdem ich schon vor einiger Zeit eine kleine Ungereimtheit in der Santander Abfrage gefunden, kam ich nun endlich dazu diese zu beheben. Das Problem betrifft die Zwischensalden der einzellen Buchungen. Da die Webseite der Bank diese bei den Buchungen nicht mit angibt, muss sie irgendwie berechnet werden. Dazu gibt es zwei Möglichkeiten, ersten ausgeht von der letzten eingetragen Buchung, zweites ausgehend von dem auf der Webseite angegebenen Saldo. Beide haben Nachteile.
Die erste Möglichkeit kann bei einem Erstabruf nicht eingesetzt werden. Ebenso nicht, wenn der letzte Abruf mehr als 360 Tage zurückliegt, da dannnicht sichergestellt werden kann, dass das Salo der letzten gespeicherten Buchung auch noch richtig ist. Es könnten ja noch Buchungen fehlen, diemehr als 360 Tage zurückliegen.
Bei der zweiten Möglichkeit kann es vorkommen, das im Saldo auf der Webseite schon Buchungen enthalten sind, die aber noch nicht angezeigt werden. Das passiert zum Beispiel, wenn man eine Überweisung auf der Webseite durchführt und direkt im Anschluss die Synchronisation startet. Dann ist die zur Überweisung zugehörige Buchung noch nicht sichbar aber schon im Saldo berücksichtigt. Berechnet man nun die Zwischensaldo auf Grundlage des falschen Saldo der Webseite, sind natürlich alle Zwischensalden falsch.
Also Lösung habe ich nun einen differenzierten Ansatz gewählt.
- Erste Abfrage/Letzte Abfrage vor mehr als 360 Tagen
Die Zwischensalden werden auf Grundlade des Saldos der Webseite berechnet. Der Anwender erhält eine Sicherheitsabfrage, in der darauf hingewiesen wird, dass das Saldo der Webseite vor Abfrage auf Korrektheitgeprüft werden soll. - Alle anderen Abfragen
Die Zwischensalden werden auf Basis des Zwischensaldos der letzten gespeicherten Buchung berechnet. Das Zwischensaldo der aktuelles Buchung wird dann mit dem Saldo der Webseite verglichen. Sind beide identisch (Normalfall) werden die Buchungen im Konto gespeichert. Sind sie nicht identisch, erhält der Anwender wieder eine Warnungmeldung. Nun kann er entscheiden, ob die Buchungen gespeichert werden soll oder nicht, abhängig davon, ob bekannt ist, wo die unterschiedlichen Salden herkommen. Stichwort fehlende Buchung.
Die neue Version kann, wie üblich, von der Downloadseite geladen oder besser über die Updateverwaltung von Jameica aktualisiert werden.