Zur Hauptseite ... Zum Onlinearchiv ... Zum Abonnement ... Zum Newsletter ... Zu den Tools ... Zum Impressum ... Zum Login ...

Achtung: Dies ist nicht der vollständige Artikel, sondern nur ein paar Seiten davon. Wenn Sie hier nicht erfahren, was Sie wissen möchten, finden Sie am Ende Informationen darüber, wie Sie den ganzen Artikel lesen können.

Kompletten Artikel lesen?

Einfach für den Newsletter anmelden, dann lesen Sie schon in einer Minute den kompletten Artikel und erhalten die Beispieldatenbanken.

E-Mail:

Gedrucktes Heft

Diesen Beitrag finden Sie in Ausgabe 1/2010.

Unser Angebot für Sie!

Lesen Sie diesen Beitrag und 500 andere sofort im Onlinearchiv, und erhalten Sie alle zwei Monate brandheißes Access-Know-how auf 72 gedruckten Seiten! Plus attraktive Präsente, zum Beispiel das bald erscheinende Buch 'Access 2010 - Das Grundlagenbuch für Entwickler'!

Diesen Beitrag twittern

Zusammenfassung

Erstellen Sie eine Datei, mit der Sie Lastschriften bequem per Datenträger zu Ihrem Kreditinstitut schicken können.

Techniken

Tabellen, VBA

Voraussetzungen

Access 2000 und höher

Beispieldateien

Datentraegeraustausch.mdb

Shortlink

www.access-im-unternehmen.de/704

Lastschrifteinzug per Datenträgeraustausch

André Minhorst, Duisburg

Mitgliedsbeiträge in Vereinen, Versicherungsbeiträge und andere regelmäßig anfallende Zahlungen zieht der Begünstigte am einfachsten per Lastschrift ein. Voraussetzung für den Lastschrifteinzug ist die Erteilung einer Einzugsermächtigung durch den Zahlungspflichtigen. Fallen nur wenige Lastschrifteinzüge an, verwendet man der Einfachheit halber ein entsprechendes Papierformular, aber wer etwa Kassenwart eines Vereins mit vielen Mitgliedern ist, möchte vielleicht mit weniger Arbeit auskommen.

Abgesehen von den nötigen Einzugsermächtigungen erfordert das Vereinfachen des Lastschrifteinzugs das Vorhandensein einiger Daten der Zahlungspflichtigen, am besten in Tabellenform:

  • Name
  • Bankleitzahl
  • Kontonummer

Damit ausgerüstet widmen Sie sich dann dem sogenannten Datenträgeraustauschverfahren (abgekürzt DTA beziehungsweise DTAUS) und dem damit verbundenen Format. Das Datenträgeraustauschverfahren dient der Ausführung bargeldloser Zahlungen wie etwa von Gutschriften oder der in diesem Beitrag betrachteten Lastschriften.

Kern dieses Verfahrens ist die Zusammenfassung der Informationen, die normalerweise auf dem Überweisungsträger landen, in einer Textdatei und deren Übermittlung per Speichermedium oder via Internet an die Bank des Begünstigten.

Das in dieser Textdatei zu verwendende Format wird zum Beispiel im Internet an verschiedenen Stellen beschrieben, etwa bei Wikipedia unter dem Stichwort Datenträgeraustauschverfahren.

Die Textdatei besteht aus drei Teilen:

  • Der A-Satz enthält Informationen über die Art der Transaktion (Lastschrift oder Gutschrift) und die Auftraggeberdaten sowie das Auftragsdatum und die Währung.
  • Der C-Satz enthält Informationen über die einzelnen Vorgänge. Dazu gehören - im Falle der Lastschrift - die Daten des Zahlungspflichtigen (also Name, Bankleitzahl und Kontonummer), Verwendungszweck und Währung.
  • Der E-Satz enthält die Anzahl der Transaktionen sowie diverse Prüfsummen wie etwa die Summe der Beträge.

Nun stellen sich zwei Fragen: Woher kommen die Daten und wie gelangen diese in die benötigte Textdatei?

  • Die Auftraggeberdaten speichern wir am besten in einer Optionen-Tabelle.
  • Die Transaktionsdaten stammen aus einer weiteren Tabelle. Bei Institutionen wie Sportvereinen liegen diese meist in Form einer Excel-Tabelle vor. Diese können Sie verknüpfen oder importieren, um sie in Access verfügbar zu machen. Dazu später mehr - erstmal kümmern wir uns um die grundsätzliche Erstellung der Datenaustauschdatei.

Einschränkungen

Die hier vorgestellte Lösung zum Erstellen von Datenträgeraustauschdateien hat folgende Einschränkungen, die sich jedoch durch Änderung des Codes beheben lassen - im Kontext der Erstellung einer solchen Datei etwa für den Einzug von Mitgliedsbeiträgen ist dies jedoch vermutlich nicht nötig:

  • Sie können damit nur Lastschriften anstoßen, keine anderen Vorgänge.
  • Bankleitzahl von Zahlungsempfänger und ausführender Bank sind identisch.
  • Die Angabe des Namens des Empfängers und des Begünstigten sowie der Verwendungszweck unterliegt Einschränkungen bezüglich der maximal zulässigen Zeichenanzahl (jeweils 27 Zeichen, theoretisch könnten diese Informationen um weitere 27 Zeichen erweitert werden).

Datenaustauschdatei erstellen

Das Format der Datenaustauschdatei können Sie für eine eingeschränkte Anzahl von Fällen direkt den nachfolgend vorgestellten Funktionen entnehmen. Die erste Funktion (s. Listing 1) liefert den A-Satz der Datenträgeraustauschdatei und erwartet die folgenden Parameter:

Listing 1: Diese Funktion liefert den ersten von mindestens drei Teilen der Datenträgeraustauschdatei.

Public Function ASatz(strBLZAuftraggeber As String, strNameAbsender As String, _

    strKontoAuftraggeber As String) As String

    Dim str As String

    str = str & "0128" 'Satzlänge

    str = str & "A" 'Satzart

    str = str & "LK" 'Kennzeichen: L = Lastschrift, K = Kundendiskette

    str = str & strBLZAuftraggeber

    str = str & "00000000"

    str = str & Auffuellen(strNameAbsender, " ", 27) 'Name Absender

    str = str & Format(Date, "DDMMYY") 'Erstellungsdatum

    str = str & " "

    str = str & Auffuellen("", "0", 10 - Len(strKontoAuftraggeber)) _

    & strKontoAuftraggeber 'Kontonummer Auftraggeber

    str = str & Auffuellen("", "0", 10) 'Sammel-Referenznummer, hier Nullen)

    str = str & Auffuellen("", " ", 47)

    str = str & "1" 'Währung, Euro entspricht 1

    Debug.Print Len(str), str

    ASatz = str

End Function

  • strBLZAuftraggeber: Bankleitzahl des Auftraggebers
  • strNameAuftraggeber: Name des Auftraggebers
  • strKontoAuftraggeber: Kontonummer des Auftraggebers

Die Prozedur verwendet eine String-Variable namens str, um den Inhalt des A-Satzes zusammenzustellen. Den Start macht bei A-, C- und E-Satz jeweils die Satzlänge mit vier Stellen. Diese enthält die Länge der einzulesenden Zeichenkette. Das nächste Zeichen enthält jeweils einen Kennbuchstaben (A für A-Satz, C für C-Satz und E für E-Satz). Die folgenden beiden Zeichen des A-Satzes enthalten die Zeichenkombination LK für Lastschrift/Kundendiskette. Nach der Bankleitzahl des Auftraggebers (immer achtstellig) und einer Reihe Nullen, die keine Bedeutung hat, folgt die Kontonummer des Empfängers. Diese kann maximal zehn Stellen aufweisen, Kontonummern haben aber oft auch weniger Stellen.

Die fehlenden Stellen sollen vorne mit Nullen aufgefüllt werden. Zu diesem Zweck verwenden wir eine kleine Hilfsfunktion namens Auffuellen, die Sie in Listing 2 finden und welche die folgenden Parameter erwartet:

Listing 3: Der C-Satz enthält die eigentlichen Buchungsinformationen und kann je Datenträgeraustauschdatei mehrmals vorkommen.

Public Function CSatz(strBLZEmpfaenger As String, _

    strKontoZahler As String, _

    strKontoEmpfaenger As String, _

    curBetrag As Currency, _

    strNameZahler As String, _

    strVerwendungszweck As String, _

    strNameEmpfaenger As String, _

    strBLZZahler As String)

    Dim str As String

    Dim strBetrag As String

    str = str & "0187" 'Satzlänge

    str = str & "C" 'Satzart

    str = str & Auffuellen("", "0", 8) 'BLZ erstbeteiligte Bank, optional

    str = str & strBLZZahler 'BLZ Begünstigter

    str = str & Auffuellen(strKontoZahler, "0", 10, False) 'Kontonummer Zahlungsverpflichteter

    str = str & Auffuellen("", "0", 13) 'interne Kundennummer

    str = str & "05" 'Textschlüssel: 04 - Abbuchung, 05 - Einzug, 51 - Überweisung, 53 - Gehalt,

Sie haben das Ende des frei verfügbaren Teils des Artikels erreicht. Lesen Sie weiter, um zu erfahren, wie Sie den vollständigen Artikel lesen und auf viele hundert weitere Artikel zugreifen können.

Sind Sie Abonnent?Jetzt einloggen ...
 

Kompletten Artikel lesen?

Einfach für den Newsletter anmelden, dann lesen Sie schon in einer Minute den kompletten Artikel und erhalten die Beispieldatenbanken.

E-Mail:

Verwandte Beiträge:

Textvorlagen mit Daten füllen

Tilgen mit Access und Excel

Preise und Mehrwertsteuer verwalten

Projektzeitmanager

Fahrtenbuch mit Import- und Stornierungsfunktion

Der Euro-Assistent

Fahrtenbuch

Einnahmen-Überschussrechnung mit Access

Offline-Banking mit Access (und Quicken)

© 2003-2015 André Minhorst Alle Rechte vorbehalten.