[Hbci4java-help] GVRKUms.UmsLine.instref ändert sich?
Brought to you by:
kleiner77
|
From: Jan B. <ja...@mu...> - 2009-04-21 19:25:40
|
Hallo! Ich versuche, Kontoauszugsdaten zwecks längerfristiger Archivierung in einer Datenbank zu speichern. Dazu rufe ich einmal täglich einen Kontoauszug ab, prüfe, ob die darin enthaltenen Transaktionen schon in der Datenbank gespeichert sind und hänge jene Kontobewegungen, für die das nicht zutrifft an die Datenbanktabelle an. Um zu testen, ob eine Kontobewegung bereits in der Datenbank steht, brauche ich eine Möglichkeit der eindeutigen Identifizierung einer Kontobewegung. Bei Tests mit HBCIBatch habe ich festgestellt, dass bei zwei Abfragen der Kontoauszüge für die selbe Kontobewegung unterschiedliche Werte in GVRKUms.UmsLine.instref stehen können (das passiert selten aber nicht sehr selten). Ich war davon ausgegangen, dass dieser Wert eine Art ID der Kontobewegung darstellt und sich nie ändert. Ist das so gedacht oder ein Fehler der Bank? (in diesem Fall comdirect) Im Feld customerref steht bei dieser Bank übrigens durchgehend NONEREF. Da ausserdem in den Uhrzeitfeldern durchgehend 12:00 Uhr steht, fehlt mir ein Weg, eine eindeutige ID für eine Kontobewegung abzuleiten. Selbst ein Hash über valuta, value, saldo, usage wäre nicht eindeutig: Es können ja durchaus zwei unterschiedliche Transaktionen in all diesen Werten übereinstimmen, demnach den selben Hash haben, aber dennoch zwei unterscheidende Einträge sein. 04.03.2009 12:00 itunes -0,99 saldo: 100,00 EUR 04.03.2009 12:00 Überweisung +0,99 saldo: 100,99 EUR 04.03.2009 12:00 itunes -0,99 saldo: 100,00 EUR In diesem Beispiel sind alle Felder der ersten und dritten Kontobewegung identisch. Ausnahme: instref. Da insref für dieselbe Kontobewegung aber schon morgen einen anderen Wert haben kann, eignet sich dieser Wert nicht für die eindeutige Identifizierung. :( Was habe ich übersehen? dankbar für Ideen, Jan |