www.onlinebanking-forum.de Foren-Übersicht cyberJack e-com plus
Lexikon      FAQ      Einstellungen      Benutzergruppen      Registrieren      Profil      RSS-News
Impressum      Suchen      Neue Beiträge      Letzte Themen      Einloggen, um private Nachrichten zu lesen      Login
Kalender 
Nächstes Thema anzeigen
Vorheriges Thema anzeigen

Neues Thema eröffnenNeue Antwort erstellen Vorheriges Thema anzeigenDieses Thema verschickenZeige Benutzer, die dieses Thema gesehen habenDieses Thema als Datei sichernPrintable versionEinloggen, um private Nachrichten zu lesenNächstes Thema anzeigen
Autor Nachricht
teesee
0-10 Beiträge



Anmeldungsdatum: 19.01.2009
Beiträge: 5

germany.gif
BeitragVerfasst: 19/1/2009, 20:10  Titel:  Verwendungszweck abgeschnitten ":" Zeichenproblem? Antworten mit ZitatNach untenNach oben

Bin durch Zufall auf ein interessantes Problem gestoßen:
Lt. neuer Featurelist auf der Homepage
" Mehr als zwei Zeilen Verwendungszweck [#188] "
wird der vollständige Verwendunszweck dargestellt.
Ich habe in einem Verwendunszweck einen Doppelpunkt ":" mittendrin.
Will ich mir den Verwendungszweck anzeigen lassen, schneidet er den Rest incl. Doppelpunkt weg.
Bsp:

ERTRAEGNISGUTSCHRIFT VOM 10.01.09
DEPOTBESTAND: 90,000
XXXX. SHARES DL 3
8533445 USD 0,05

erscheint als:

ERTRAEGNISGUTSCHRIFT VOM 10.01.09
DEPOTBESTAND

Auf der Webpage der Bank wird alles korrekt angezeigt.




Zuletzt bearbeitet von teesee am 19/1/2009, 22:32, insgesamt einmal bearbeitet
   OfflinePersönliche Galerie von teeseeBenutzer-Profile anzeigenPrivate Nachricht senden
willow
über 1000 Beiträge



Anmeldungsdatum: 08.03.2005
Beiträge: 1466
Wohnort: Leipzig
blank.gif
BeitragVerfasst: 19/1/2009, 20:22  Titel:  (Kein Titel) Antworten mit ZitatNach untenNach oben

Werden in jameica.log irgendwelche Warnungen/Fehler dazu angezeigt? Mich wuerde interessieren, ob es sich ggf. nur um einen Anzeigefehler handelt oder die Daten tatsaechlich fehlen.


   OfflinePersönliche Galerie von willowBenutzer-Profile anzeigenPrivate Nachricht sendenWebsite dieses Benutzers besuchen
teesee
0-10 Beiträge



Anmeldungsdatum: 19.01.2009
Beiträge: 5

germany.gif
BeitragVerfasst: 19/1/2009, 23:58  Titel:  (Kein Titel) Antworten mit ZitatNach untenNach oben

Wenn ich die entspr. Transaktion bzw. Kontenbewegung auswähle erscheint (jameika debug level: info)
Code:
[Mon Jan 19 21:45:26 CET 2009][ERROR][de.willuhn.jameica.hbci.gui.controller.UmsatzDetailControl.getAddressbookEntry] unable to check, if address in addressbook


(jameika debug level: debug)
Code:
[Mon Jan 19 21:46:23 CET 2009][DEBUG][de.willuhn.jameica.gui.GUI.startView] starting view: de.willuhn.jameica.hbci.gui.views.UmsatzDetail                                                                                                                                   
[Mon Jan 19 21:46:23 CET 2009][DEBUG][de.willuhn.jameica.messaging.NamedQueue.unRegisterMessageConsumer] unregistering message consumer de.willuhn.jameica.hbci.gui.controller.KontoControl$SaldoMessageConsumer
[Mon Jan 19 21:46:23 CET 2009][DEBUG][de.willuhn.jameica.gui.GUI$2.run] disposing previous view
[Mon Jan 19 21:46:23 CET 2009][DEBUG][de.willuhn.jameica.security.JameicaSecurityManager.checkFile] checking write permissions for file: "/home/tilo/.jameica/cfg/de.willuhn.jameica.gui.parts.AbstractTablePart.properties"
[Mon Jan 19 21:46:23 CET 2009][DEBUG][de.willuhn.jameica.gui.parts.TablePart$1.widgetDisposed] saving table order: !datum_pseudo
[Mon Jan 19 21:46:23 CET 2009][DEBUG][de.willuhn.jameica.security.JameicaSecurityManager.checkFile] checking write permissions for file: "/home/tilo/.jameica/cfg/de.willuhn.jameica.gui.parts.AbstractTablePart.properties"
[Mon Jan 19 21:46:23 CET 2009][DEBUG][de.willuhn.jameica.security.JameicaSecurityManager.checkFile] checking write permissions for file: "/home/tilo/.jameica/cfg/de.willuhn.jameica.gui.parts.AbstractTablePart.properties"
[Mon Jan 19 21:46:23 CET 2009][DEBUG][de.willuhn.jameica.security.JameicaSecurityManager.checkFile] checking write permissions for file: "/home/tilo/.jameica/cfg/de.willuhn.jameica.gui.parts.AbstractTablePart.properties"
[Mon Jan 19 21:46:23 CET 2009][DEBUG][de.willuhn.jameica.security.JameicaSecurityManager.checkFile] checking write permissions for file: "/home/tilo/.jameica/cfg/de.willuhn.jameica.gui.parts.AbstractTablePart.properties"
[Mon Jan 19 21:46:23 CET 2009][DEBUG][de.willuhn.jameica.security.JameicaSecurityManager.checkFile] checking write permissions for file: "/home/tilo/.jameica/cfg/de.willuhn.jameica.gui.parts.AbstractTablePart.properties"
[Mon Jan 19 21:46:23 CET 2009][DEBUG][de.willuhn.jameica.security.JameicaSecurityManager.checkFile] checking write permissions for file: "/home/tilo/.jameica/cfg/de.willuhn.jameica.gui.parts.AbstractTablePart.properties"
[Mon Jan 19 21:46:23 CET 2009][DEBUG][de.willuhn.jameica.security.JameicaSecurityManager.checkFile] checking write permissions for file: "/home/tilo/.jameica/cfg/de.willuhn.jameica.gui.parts.AbstractTablePart.properties"
[Mon Jan 19 21:46:23 CET 2009][DEBUG][de.willuhn.jameica.security.JameicaSecurityManager.checkFile] checking write permissions for file: "/home/tilo/.jameica/cfg/de.willuhn.jameica.gui.parts.AbstractTablePart.properties"
[Mon Jan 19 21:46:23 CET 2009][DEBUG][de.willuhn.jameica.messaging.NamedQueue.unRegisterMessageConsumer] unregistering message consumer de.willuhn.jameica.hbci.gui.parts.UmsatzList$UmsMessageConsumer
[Mon Jan 19 21:46:23 CET 2009][DEBUG][de.willuhn.jameica.gui.GUI$2.run] dispose finished
[Mon Jan 19 21:46:23 CET 2009][DEBUG][de.willuhn.jameica.gui.GUI$2.run] adding view de.willuhn.jameica.hbci.gui.views.KontoNew to history
[Mon Jan 19 21:46:23 CET 2009][DEBUG][de.willuhn.datasource.db.AbstractDBObject.load] executing query: select * from KONTO where ID =1
[Mon Jan 19 21:46:23 CET 2009][DEBUG][de.willuhn.datasource.db.DBIteratorImpl.init] executing sql query: prep91: select * from UMSATZTYP where umsatztyp = 1 or umsatztyp = 2 or umsatztyp is null ORDER BY nummer,name
[Mon Jan 19 21:46:23 CET 2009][DEBUG][de.willuhn.jameica.system.ServiceFactory.lookup] searching for service addressbook for plugin de.willuhn.jameica.hbci.HBCI
[Mon Jan 19 21:46:23 CET 2009][DEBUG][de.willuhn.jameica.system.ServiceFactory.lookup] found in cache
[Mon Jan 19 21:46:23 CET 2009][ERROR][de.willuhn.jameica.hbci.gui.controller.UmsatzDetailControl.getAddressbookEntry] unable to check, if address in addressbook

Anscheinend interpretiert das Prog ":" nicht als "normalen" Text sondern als Anweisung/Befehl etc.


   OfflinePersönliche Galerie von teeseeBenutzer-Profile anzeigenPrivate Nachricht senden
willow
über 1000 Beiträge



Anmeldungsdatum: 08.03.2005
Beiträge: 1466
Wohnort: Leipzig
blank.gif
BeitragVerfasst: 20/1/2009, 00:50  Titel:  (Kein Titel) Antworten mit ZitatNach untenNach oben

teesee hat folgendes geschrieben:
Wenn ich die entspr. Transaktion bzw. Kontenbewegung auswähle erscheint (jameika debug level: info)
Code:
[Mon Jan 19 21:45:26 CET 2009][ERROR][de.willuhn.jameica.hbci.gui.controller.UmsatzDetailControl.getAddressbookEntry] unable to check, if address in addressbook



Das kannst du ignorieren. Es bedeutet nur, dass Hibiscus im Adressbuch gesucht hat, ob dort eine Adresse mit der gleichen Bankverbindung wie die des Umsatzes existiert.

teesee hat folgendes geschrieben:

Anscheinend interpretiert das Prog ":" nicht als "normalen" Text sondern als Anweisung/Befehl etc.


Nein. Einen Text "versehentlich" als Befehl zu interpretieren, ist in Java (im Gegensatz zu diversen Scriptsprachen) gar nicht moeglich. Wie kommst du auf diese Vermutung?

Kannst du zum Test mal einen Umsatz als CSV-Datei exportieren, diese anschliessend in einem Texteditor oeffnen, im Verwendungszweck manuell einen Doppelpunkt einfuegen und die Datei dann wieder importieren? Wird es da korrekt angezeigt? Ich vermute fast, dass der Text hinter dem Doppelpunkt schon vorher verlorengegangen ist.


   OfflinePersönliche Galerie von willowBenutzer-Profile anzeigenPrivate Nachricht sendenWebsite dieses Benutzers besuchen
Captain FRAG
Bereich: Sparkassen



Anmeldungsdatum: 26.05.2003
Beiträge: 5096
Wohnort: Westfalen
blank.gif
BeitragVerfasst: 20/1/2009, 09:40  Titel:  (Kein Titel) Antworten mit ZitatNach untenNach oben

Wir der Verwendungszweck im Programm inhaltlich auf Gültigkeit geprüft?
Nur so ne Idee, weil der Doppelpunkt in DTAUS nicht erlaubt ist, in SWIFT aber schon.

_________________
Dunkel, die andere Seite ist seeehr dunkel...
Yoda, halt die Fresse und iss deinen Toast!

 Geschlecht:Männlich  OfflinePersönliche Galerie von Captain FRAGBenutzer-Profile anzeigenPrivate Nachricht senden
teesee
0-10 Beiträge



Anmeldungsdatum: 19.01.2009
Beiträge: 5

germany.gif
BeitragVerfasst: 20/1/2009, 11:36  Titel:  (Kein Titel) Antworten mit ZitatNach untenNach oben

Wie vorgeschlagen csv Export, Doppelpunkte in Verwendungszweck und "Weitere Verwendungszwecke" hinzugefügt, wieder csv Import (alles utf) der Doppelpunkt wurde angezeigt.
Also liegt es an der Bank. Die schneiden einfach die Zeichen nach dem ":" weg. Sad
Ich habe die Probleme mit der comdirect Bank. Könnt Ihr evtl. mal mit einer Testüberweisung auch an andere Banken das verifizieren?




Zuletzt bearbeitet von teesee am 20/1/2009, 12:09, insgesamt einmal bearbeitet
   OfflinePersönliche Galerie von teeseeBenutzer-Profile anzeigenPrivate Nachricht senden
willow
über 1000 Beiträge



Anmeldungsdatum: 08.03.2005
Beiträge: 1466
Wohnort: Leipzig
blank.gif
BeitragVerfasst: 20/1/2009, 11:58  Titel:  (Kein Titel) Antworten mit ZitatNach untenNach oben

Captain FRAG hat folgendes geschrieben:
Wir der Verwendungszweck im Programm inhaltlich auf Gültigkeit geprüft?
Nur so ne Idee, weil der Doppelpunkt in DTAUS nicht erlaubt ist, in SWIFT aber schon.


Guter Tipp. Fuer einen Moment dachte ich: "Jepp, das koente es sein". Aber beim Abrufen der Umsaetze pruefe ich das nicht.


   OfflinePersönliche Galerie von willowBenutzer-Profile anzeigenPrivate Nachricht sendenWebsite dieses Benutzers besuchen
Captain FRAG
Bereich: Sparkassen



Anmeldungsdatum: 26.05.2003
Beiträge: 5096
Wohnort: Westfalen
blank.gif
BeitragVerfasst: 20/1/2009, 12:07  Titel:  (Kein Titel) Antworten mit ZitatNach untenNach oben

teesee hat folgendes geschrieben:
Also liegt es an der Bank. Die schneiden eifach die Zeichen nach dem ":" weg. Sad


Das müsste man in der "nackten" HBCI-Kommunikation sehen können. Ich weiss nicht, ob diese von der Software per Default aufgezeichnet und mitgeloggt wird. Ich schätze aber mal, das es dafür einen Parameter gibt.

Willow, was sagst du?

_________________
Dunkel, die andere Seite ist seeehr dunkel...
Yoda, halt die Fresse und iss deinen Toast!

 Geschlecht:Männlich  OfflinePersönliche Galerie von Captain FRAGBenutzer-Profile anzeigenPrivate Nachricht senden
willow
über 1000 Beiträge



Anmeldungsdatum: 08.03.2005
Beiträge: 1466
Wohnort: Leipzig
blank.gif
BeitragVerfasst: 20/1/2009, 12:53  Titel:  (Kein Titel) Antworten mit ZitatNach untenNach oben

Einfach mal Log-Level in Datei->Einstellungen auf "DEBUG" stellen, dann Rechtsklick auf das betreffende Konto und "Kontoauszugsdatum zuruecksetzen..." klicken (das fuehrt dazu, dass bereits abgerufene Umsaetze nochmal geholt werden, insofern sie bei der Bank noch vorliegen.

Anschliessend in ~/.jameica/jameica.log schauen.


   OfflinePersönliche Galerie von willowBenutzer-Profile anzeigenPrivate Nachricht sendenWebsite dieses Benutzers besuchen
willow
über 1000 Beiträge



Anmeldungsdatum: 08.03.2005
Beiträge: 1466
Wohnort: Leipzig
blank.gif
BeitragVerfasst: 20/1/2009, 16:47  Titel:  (Kein Titel) Antworten mit ZitatNach untenNach oben

teesee hatte mir die Daten per PM zukommen lassen. Hier der relevante und IMHO fehlerverursachende Teil:

Code:

:20:MT940-0901200102
:21:NONREF
:25:****************
:28C:0/38
:60M:**********
:61:*****************
:86:300?20KUPON?21ERTRAEGNISGUTSCHRIFT VOM 15?22.01.09?23DEPOTBESTAND
:             9?240,000?25MOTOROLA INC. SHARES DL 3?26853936
        USD 0,05?32
:62F:***********


Entweder die Bank schickt kaputtes Swift oder Swift ist wirklich ein so derart kaputtes Format, dass sowas erlaubt ist. Zeile 8 beginn mit einem Doppelpunkt. Der laeutet aber nicht das naechste Tag ein sondern ist Bestandteil des Content (steht eigentlich hinter "DEPOTBESTAND"). Ich nehme an, der Fehler waere nicht aufgetreten, wenn der Doppelpunkt noch auf die vorherige Zeile gepasst haette.

@Stefan: Ich hab in org.kapott.hbci.swift.Swift#getTagValue(String, String, int) (Zeile 53) mal etwas mit folgendem Regex rumprobiert, um Zeilen mit einzuschliessen, wenn sie zwar mit Doppelpunkt beginnen, aber aber darauf kein Tag folgt:

^\r\n:[0-9]{2}\\w?:[\\s\\S]+

Bin mit den anschliessenden Offsets fuer startpos und endpos dann aber etwas durcheinandergekommen. Willst du es dir mal anschauen?


   OfflinePersönliche Galerie von willowBenutzer-Profile anzeigenPrivate Nachricht sendenWebsite dieses Benutzers besuchen
Captain FRAG
Bereich: Sparkassen



Anmeldungsdatum: 26.05.2003
Beiträge: 5096
Wohnort: Westfalen
blank.gif
BeitragVerfasst: 20/1/2009, 17:54  Titel:  (Kein Titel) Antworten mit ZitatNach untenNach oben

Das von der Bank erzeugte Swift dürfte kaputt sein:

FinTS.org hat folgendes geschrieben:
B. S.W.I.F.T.-FORMATE
Da für Homebanking nicht die kompletten S.W.I.F.T.-Fomate erforderlich sind, handelt es sich bei den nachfolgenden Formaten nicht um die Originalbeschreibung von S.W.I.F.T., sondern um modifizierte Belegungsrichtlinien. Es werden nur die notwendigen Felder belegt. Nicht benötigte Felder werden entweder konstant belegt oder ausgelassen. Gleichwohl stellen alle anhand dieser Vorschriften erzeugten Datensätze gültige S.W.I.F.T-Formate dar.

-Allgemeine Syntaxvereinbarungen:
[...viel Text...]
• Der Inhalt eines Feldes darf am Anfang einer Zeile nicht mit einem Doppelpunkt oder einem Bindestrich beginnen.
[...viel Text...]

_________________
Dunkel, die andere Seite ist seeehr dunkel...
Yoda, halt die Fresse und iss deinen Toast!

 Geschlecht:Männlich  OfflinePersönliche Galerie von Captain FRAGBenutzer-Profile anzeigenPrivate Nachricht senden
willow
über 1000 Beiträge



Anmeldungsdatum: 08.03.2005
Beiträge: 1466
Wohnort: Leipzig
blank.gif
BeitragVerfasst: 20/1/2009, 18:08  Titel:  (Kein Titel) Antworten mit ZitatNach untenNach oben

Captain FRAG hat folgendes geschrieben:
Das von der Bank erzeugte Swift dürfte kaputt sein:


Da muss ich mir ja jetzt echt ein hämisches Grinsen verkneifen ;)


   OfflinePersönliche Galerie von willowBenutzer-Profile anzeigenPrivate Nachricht sendenWebsite dieses Benutzers besuchen
kleiner77
über 500 Beiträge


Alter: 33
Anmeldungsdatum: 09.08.2004
Beiträge: 759
Wohnort: Leipzig
germany.gif
BeitragVerfasst: 21/1/2009, 20:15  Titel:  (Kein Titel) Antworten mit ZitatNach untenNach oben

Der DTAUS-Parser von HBCI4Java geht davon aus, dass keine Doppelpunkte in "payload"-Texten vorkommen. Da hier doch ein Doppelpunkt auftaucht, kommt der Parser durcheinander...

Um das "sauber" zu lösen, müsste ich ein entsprechendes Rewriter-Modul für "kaputte DTAUS-Streams" schreiben und der betreffenden Bank die Rechnung dafür zukommen lassen...

Grüße
-stefan-

_________________
http://hbci4java.kapott.org

Fische Geschlecht:Männlich Schlange VerstecktPersönliche Galerie von kleiner77Benutzer-Profile anzeigenPrivate Nachricht sendenWebsite dieses Benutzers besuchen
kleiner77
über 500 Beiträge


Alter: 33
Anmeldungsdatum: 09.08.2004
Beiträge: 759
Wohnort: Leipzig
germany.gif
BeitragVerfasst: 21/1/2009, 20:22  Titel:  (Kein Titel) Antworten mit ZitatNach untenNach oben

Sorry, mein letztes Posting ist nicht ganz korrekt.

Im MT940 (SWIFT-Format für "Kontoauszüge") sind theoretisch ":" in den Verwendungszweckzeilen erlaubt. Beim Erzeugen von Überweisungsaufträgen via HBCI sind in den Verwendungszweckzeilen jedoch KEINE ":" erlaubt, weil das Format als "DTAUS" spezifiziert, wobei ":" kein gültiges Zeichen ist.

Letzere Aussage gilt übrigens genomen erst ab HBCI-2.1 - in HBCI-2.01 war diese Einschränkung noch nicht da...

Streng genommen handelt es sich also um einen Bug im SWIFT-MT940-Parser von HBCI4Java - also ein TODO für mich...

-stefan-

_________________
http://hbci4java.kapott.org

Fische Geschlecht:Männlich Schlange VerstecktPersönliche Galerie von kleiner77Benutzer-Profile anzeigenPrivate Nachricht sendenWebsite dieses Benutzers besuchen
Captain FRAG
Bereich: Sparkassen



Anmeldungsdatum: 26.05.2003
Beiträge: 5096
Wohnort: Westfalen
blank.gif
BeitragVerfasst: 21/1/2009, 22:44  Titel:  (Kein Titel) Antworten mit ZitatNach untenNach oben

Ja, Doppelpunkte sind in SWIFT prinzipiell erlaubt, jedoch innerhalb eines Feldes (hier das Mehrzweckfeldes :86:) nicht zu Beginn eines Zeile bzw. nach CR+LF.

Ich sehe das so, das die Bank fehlerhaft liefert. Es sei denn, ich habe in den Swift-Rules innerhalb FinTS3 etwas übersehen. Hab ja nicht alles gelesen...

_________________
Dunkel, die andere Seite ist seeehr dunkel...
Yoda, halt die Fresse und iss deinen Toast!

 Geschlecht:Männlich  OfflinePersönliche Galerie von Captain FRAGBenutzer-Profile anzeigenPrivate Nachricht senden
Beiträge der letzten Zeit anzeigen:      
Neues Thema eröffnenNeue Antwort erstellen Vorheriges Thema anzeigenDieses Thema verschickenZeige Benutzer, die dieses Thema gesehen habenDieses Thema als Datei sichernPrintable versionEinloggen, um private Nachrichten zu lesenNächstes Thema anzeigen

Nächstes Thema anzeigen
Vorheriges Thema anzeigen
Du kannst keine Beiträge in dieses Forum schreiben.
Du kannst auf Beiträge in diesem Forum nicht antworten.
Du kannst deine Beiträge in diesem Forum nicht bearbeiten.
Du kannst deine Beiträge in diesem Forum nicht löschen.
Du kannst an Umfragen in diesem Forum nicht mitmachen.
Du kannst Dateien in diesem Forum nicht posten
Du kannst Dateien in diesem Forum nicht herunterladen


Alle Zeiten sind GMT + 1 Stunde

Forensicherheit

Powered by phpBB2 Plus based on phpBB © 2001, 2005 phpBB Group :: FI Theme