AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren

MT940 importieren

Ein Thema von mm1256 · begonnen am 11. Feb 2016 · letzter Beitrag vom 2. Jun 2016
Antwort Antwort
mm1256

Registriert seit: 10. Feb 2014
Ort: Wackersdorf, Bayern
642 Beiträge
 
Delphi 10.1 Berlin Professional
 
#1

MT940 importieren

  Alt 11. Feb 2016, 15:23
Hallo,

vorab, Tante Google hab ich schon befragt, und leider nichts gefunden ausser einer alten unbeantworteten Foren-Frage aus 2004

Ich möchte meinen Kontoauszug-Import um das Format MT940 (Dateierweiterung .sta) erweitern. Da es einfache Textdateien sind, ist das auch keine große technische Herausforderung. Wenn nur die liebe Zeit nicht wäre. Darum die Frage: Gibt es hierzu etwas?
Gruss Otto PS: Sorry wenn ich manchmal banale Fragen stelle. Ich bin Hobby-Programmierer und nicht zu faul die SuFu zu benutzen
  Mit Zitat antworten Zitat
mm1256

Registriert seit: 10. Feb 2014
Ort: Wackersdorf, Bayern
642 Beiträge
 
Delphi 10.1 Berlin Professional
 
#2

AW: MT940 importieren

  Alt 12. Feb 2016, 09:23
Die Frage hat sich erledigt, die Importfunktion ist schon fast fertig
Gruss Otto PS: Sorry wenn ich manchmal banale Fragen stelle. Ich bin Hobby-Programmierer und nicht zu faul die SuFu zu benutzen
  Mit Zitat antworten Zitat
kaju74

Registriert seit: 22. Okt 2003
185 Beiträge
 
#3

AW: MT940 importieren

  Alt 1. Jun 2016, 08:34
Moin.

Da ich eben vor demselben Problem stehe, hättest Du da evtl. was für die Gemeinschaft? )

LG,
kaju
  Mit Zitat antworten Zitat
rokli

Registriert seit: 21. Mär 2009
Ort: Rödinghausen
302 Beiträge
 
Delphi 10.4 Sydney
 
#4

AW: MT940 importieren

  Alt 1. Jun 2016, 10:59
Hallo Otto,

wäre schon sehr nett, wenn Du uns teilhaben lässt ...

da ich auch eine Anfrage liegen haben, ob wir das Format importieren können!

Gruß
Rolf
Rolf
wenn nicht anders angegeben, schreibe ich zu D7, XE2 und MS SQL - ansonsten fragen Sie ihren Administrator oder einen Operator. Update 06/2020: Delphi 10.4 Sydney
  Mit Zitat antworten Zitat
kaju74

Registriert seit: 22. Okt 2003
185 Beiträge
 
#5

AW: MT940 importieren

  Alt 1. Jun 2016, 11:34
...nur wenn's okay für Dich ist...man muss ja nicht alles doppelt machen

LG,
kaju
  Mit Zitat antworten Zitat
kaju74

Registriert seit: 22. Okt 2003
185 Beiträge
 
#6

AW: MT940 importieren

  Alt 1. Jun 2016, 13:51
Ich habe derweil mal angefangen. Benötige das zum Import von Zahlungsvorgängen (ähnlich wie beim Online-Banking). Habe für mich mal die relevanten Informationen aus den existierenden Format-Beschreibungen extrahiert. Vielleicht hilft's ja

Das MT940 Format beschreibt den Satzaufbau zur Übermittlung von Kontoauszugsdaten (SEPA).

Die Datei liegt üblicherweise im ASCII-Format vor und besteht aus reinem Text. Die "Datensätze" werden durch einleitende Steuerungszeichen identifiziert. Der Aufbau der Datei muss nicht zwangsweise Zeilen-basiert sein. Es könnten Dateien existieren, deren Inhalt auf eine oder wenige Zeilen komprimiert ist. Ein Parser muss in der Lage sein, dieses Format so lesen zu können.

Nachfolgend eine Beschreibung der wichtigsten Daten:

Zitat:
:20:[16-Auftraggeber Kennzeichen]

:25:[11-BIC]/[24-IBAN]
Bankleitzahl (BIC) / Kontonr. (IBAN)

:28C:[5-NR]/[5-BLATT]
Auszugsnummer / Blattnummer (optional)

:60F:[C|D][JJMMTT]EUR[Betrag]
Anfangssaldo:
C=Haben|D=Soll, Datum, Betrag (xx,yy)

:61:[JJMMTT][MMTT][C|D|RC|RD][Betrag]N[3-BU][16-REF]
Umsatzdetails #1:Valutadatum,Buchungsdatum(optional), Soll|Haben|Storno Soll|Storno Haben, Betrag (xx,yy), Buchungsschlüssel, Kundenreferenz

:86:[3-CODE]?00[27-Buchungstext]
?20-?29[27-Verwendungszweck]
?60-?63[27-Verwendungszweck]
?30[12-Auftraggeber-BIC]
?31[24-Auftraggeber-IBAN]
?32-?33 [27-Auftraggeber Name]
?34 [27-Rücklastschriften]
Umsatzdetails #2:Geschäftsvorfall-Code (3-stellig, bei SEPA als 1xx)
@All: Wie zum Geier nutzt man hier die Table-Tags?

Gruß,
kaju

Geändert von kaju74 ( 1. Jun 2016 um 13:54 Uhr)
  Mit Zitat antworten Zitat
mm1256

Registriert seit: 10. Feb 2014
Ort: Wackersdorf, Bayern
642 Beiträge
 
Delphi 10.1 Berlin Professional
 
#7

AW: MT940 importieren

  Alt 1. Jun 2016, 14:33
Hallo Kollegen,

klar hab ich was für euch. Die Frage ist, ob ihr viel damit anfangen könnt. Hinzu kommt, dass ich heute (und voraussichtlich den Rest der Woche) so viel um die Ohren habe, dass ich euch leider kein fertiges Beispiel geben kann.

Die RuMT940.pas enthält die Deklarationen des MT940-Formats und die MT940Import.pas ist ein Auszug aus der Unit, welche meine eigentliche Importroutine enthält. Diese Unit ist wie gesagt nicht compilierfähig, weil es nur ein Auszug ist. Die komplette Unit würde euch nichts nützen, weil ich die MT940-Daten natürlich in die Datenbank schreibe, und da hat wohl jeder seinen eigenen Aufbau.

Hinzu kommt: Da ich Auszüge in mehreren Formaten importiere (dBase, CSV, MT940...) und das dazu noch von verschiedenen Banking-Programmen habe ich das Problem erkennen zu müssen, ob ein Auszug bereits einmal importiert wurde. Darum schreibe ich die wichtigsten (zu importierenden) Daten erst mal in den Record "TBBXHashDat". Dann bilde ich aus den Daten im Record einen String und bilde daraus einen MD5-Hash. Dieser MD5 wird in der Datenbank als String-Feld mit gespeichert und ist indiziert, wodurch ich beim Import mit einem einzigen Index sehr schnell feststellen kann, ob ein Auszug bereits importiert worden ist.

Das funktioniert auch, wenn der User den Datenexport in seinem Banking-Programm in verschiedenen Formaten durchgeführt hat. Macht zwar keinen Sinn, aber, ich möchte mir meine Kontoauszug-Datenbank nicht mit Müll zuschießen. Schließlich wird daraus die Fibu bebucht.

Wenn ihr noch Fragen habt, jederzeit gerne, aber bitte berücksichtigen, momentan brennt meine Hütte und darum kann es etwas dauern. Mir ist auch klar, dass man den Import bzw. die Importroutine etwas eleganter gestalten und effektiver schreiben könnte. Wenn ich mal mehr Zeit dazu habe, dann passiert das auch
Angehängte Dateien
Dateityp: pas MT940Import.pas (17,6 KB, 103x aufgerufen)
Dateityp: pas RuMT940.pas (4,5 KB, 89x aufgerufen)
Gruss Otto PS: Sorry wenn ich manchmal banale Fragen stelle. Ich bin Hobby-Programmierer und nicht zu faul die SuFu zu benutzen
  Mit Zitat antworten Zitat
Antwort Antwort

Themen-Optionen Thema durchsuchen
Thema durchsuchen:

Erweiterte Suche
Ansicht

Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 13:35 Uhr.
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz