Seite 1 von 1

Fehler: QIF-Import

Verfasst: Mittwoch 1. Januar 2014, 22:45
von Nitram
Hallo,

ich bin auf einen Fehler beim QIF Import gestoßen.

Die QIF-Dateien wurden von Money 99 erstellt und enthalten die Datumsangaben in folgendem Format:

Code: Alles auswählen

D26/11'04
JVerein meldet das dieses Format nicht in Ordnung ist. Kann das Format hinzugefügt werden, bzw. kann mir hier gesagt werden welches Format JVerein erwartet (dann schreibe ich die Datei um).

Viele Grüße,
Martin

Re: Fehler: QIF-Import

Verfasst: Mittwoch 1. Januar 2014, 23:48
von heiner
Hallo Martin,

es wird das Datumsformat MM.dd.yy (MM=Monat, dd=Tag, yy=Jahr) verwendet.

Heiner

Re: Fehler: QIF-Import

Verfasst: Donnerstag 2. Januar 2014, 00:24
von Nitram
Hallo,

okay jetzt nimmt er das Datum zwar an, bricht den Import aber mit "Fehler beim Importieren der Daten aus..." ab.

Die Eintrag in der QIF sehen z.b. so aus:

Code: Alles auswählen

!Type:Bank
D11.26.04
T0.00
CX
POpening Balance
L[Girokonto]
^
D11.26.04
CX
M**********
T20.00
N2
P********
LMitgliedsbeitrag
^
(die **** sind das wo ich den echten Text ausgetauscht habe.)

Im Log steht folgendes:

Code: Alles auswählen

[Thu Jan 02 00:16:22 CET 2014][ERROR][de.jost_net.JVerein.gui.dialogs.ImportDialog$3.run] error while reading objects from C:\Users\Martin Karing\Downloads\Illarion e V Girokonto - konvertiert.qif
java.rmi.RemoteException: insert failed; nested exception is: 
	org.h2.jdbc.JdbcSQLException: Wert zu gross / lang für Feld "ZWECK VARCHAR(100)": "***********************************************************************************************************... (114)"
Value too long for column "ZWECK VARCHAR(100)": "STRINGDECODE('***********************************************************************************************************... (114)"; SQL statement:
insert into QIFIMPORTPOS (BETRAG,SPERRE,BUCHART,BELEG,MITGLIEDBAR,ZWECK,NAME,DATUM,BUCHARTEX,MITGLIED,HEADID) values (?,?,?,?,?,?,?,?,?,?,?) [22001-172]
	at de.willuhn.datasource.db.AbstractDBObject.insert(AbstractDBObject.java:662)
	at de.willuhn.datasource.db.AbstractDBObject.store(AbstractDBObject.java:308)
	at de.jost_net.JVerein.io.QIFQuickenImport.speichernBuchung(QIFQuickenImport.java:312)
	at de.jost_net.JVerein.io.QIFQuickenImport.inhaltEinlesen(QIFQuickenImport.java:216)
	at de.jost_net.JVerein.io.QIFQuickenImport.doImport(QIFQuickenImport.java:153)
	at de.jost_net.JVerein.gui.dialogs.ImportDialog$3.run(ImportDialog.java:236)
	at de.willuhn.jameica.gui.GUI$6.run(GUI.java:964)
Caused by: org.h2.jdbc.JdbcSQLException: Wert zu gross / lang für Feld "ZWECK VARCHAR(100)": "STRINGDECODE('***********************************************************************************************************... (114)"
Value too long for column "ZWECK VARCHAR(100)": "STRINGDECODE('***********************************************************************************************************... (114)"; SQL statement:
insert into QIFIMPORTPOS (BETRAG,SPERRE,BUCHART,BELEG,MITGLIEDBAR,ZWECK,NAME,DATUM,BUCHARTEX,MITGLIED,HEADID) values (?,?,?,?,?,?,?,?,?,?,?) [22001-172]
	at org.h2.message.DbException.getJdbcSQLException(DbException.java:329)
	at org.h2.message.DbException.get(DbException.java:169)
	at org.h2.table.Column.validateConvertUpdateSequence(Column.java:317)
	at org.h2.table.Table.validateConvertUpdateSequence(Table.java:699)
	at org.h2.command.dml.Insert.insertRows(Insert.java:122)
	at org.h2.command.dml.Insert.update(Insert.java:86)
	at org.h2.command.CommandContainer.update(CommandContainer.java:79)
	at org.h2.command.Command.executeUpdate(Command.java:235)
	at org.h2.jdbc.JdbcPreparedStatement.executeUpdateInternal(JdbcPreparedStatement.java:154)
	at org.h2.jdbc.JdbcPreparedStatement.executeUpdate(JdbcPreparedStatement.java:140)
	at de.willuhn.datasource.db.AbstractDBObject.insert(AbstractDBObject.java:616)
	... 6 more
Ich schätze das liegt einfach daran, dass der Verwendungszweck zu lang ist. Aber da der Verwendungszweck bei den Banken die ich kenne normalerweise auf 120 Zeichen festgelegt ist, ist es seltsam das er hier auf 100 Zeichen begrenzt ist.

Martin

Re: Fehler: QIF-Import

Verfasst: Donnerstag 2. Januar 2014, 20:13
von heiner
Hallo Martin,

ich habe den Bug ins Ticketsystem aufgenommen: https://sourceforge.net/p/jverein/tickets/25/

Heiner

Re: Fehler: QIF-Import

Verfasst: Sonntag 5. Januar 2014, 01:16
von Nitram
Danke,

das mit dem Datum ist aber auch noch seltsam.

Ich hab gerade mal die QIF spezifikationen zu Rate gezogen und dort werden folgende Datumsformate genannt:

Code: Alles auswählen

MM/DD/YY
MM/DD/YYYY
MM/DD'YY
wobei in jedem Fall eine 0 am Anfang bei Tag und Monat weggelassen werden kann. Das letzte Format ist nur für Daten ab 2000 gültig. Für 2000 bis 2009 kann auf ein Zeichen für die Jahresangabe reduziert werden. Also der 5. Januar 2001 wäre 1/5'1

Jetzt habe ich aber nochmal gesucht was andere Programme so ausgeben. Es scheint das vor allem deutsch lokalisierte Programme auch gerne mal Formate verwenden wie:

Code: Alles auswählen

MM.DD.YY
Aber es scheint "nur" das falsche Trennzeichen zu sein. Bei der Reihenfolge habe ich keine Änderungen finden können.

Martin