Zitat
mich wundert, dass die Fehlermeldung im Hibiscus die Zeile mit Punkt anstatt mit Komma ausgibt:
Das spielt hier keine Rolle. Das Komma wird beim Einlesen gegen einen Punkt ersetzt, um den Betrag als Dezimalzahl lesen zu koennen. Es hat aber nichts mit dem Problem zu tun.
Zitat
:61:0909300930C000000058430,29FMSCNONREF
OK, zerlegen wir die Zeile mal gemaess
https://www.ksk-koeln.de/datenstruktur_mt940_swift.pdfx (Seite 3):
:61: - Umsatzzeile
090930 - Valuta-Datum im Format JJMMTT
0930 - Buchungsdatum im Format MMTT
C - Soll-/Haben-Kennzeichen
58430,29 - Betrag
FMSC - Buchungsschluessel. Im PDF steht woertlich "Codes gem. Swift-User-Handbuch, dabei 1. Stelle konstant "N""
Faellt was auf? Da steht, dass der Buchungsschluessel mit "N" beginnen muss. Tut er aber nicht. Er beginnt mit "F". HBCI4Java sucht beim Parsen des Betrages nach dem naechsten "N", um herauszufinden, bis wohin der Betrag geht. Da der Buchungsschluessel jedoch nicht mit "N" sondern mit "F" beginnt, sucht HBCI4Java bis "NONREF". Effekt: Es versucht, den Text "58430,29FMSC" als Dezimal-Zahl zu parsen statt "58430,29".
Damit verstoesst die Datei gegen die im PDF genannte Spezifikation und kann daher auch nicht eingelesen werden.