Einzelnen Beitrag anzeigen

Benutzerbild von kwhk
kwhk

Registriert seit: 25. Mär 2009
Ort: Dresden
168 Beiträge
 
Delphi 10.3 Rio
 
#1

Prüfziffer für IBAN berechnen

  Alt 12. Sep 2013, 10:11
Um die Prüfziffer einer deutschen Bankverbindung zu ermitteln, muß man folgendermassen vorgehen
(Hier eine sehr gute Beschreibung)
http://www.iban.de/iban-pruefsumme.html

(1) BLZ (8-stellig) 12345678
(2) Konto (10-stellig, ggf mit Vornullen auffüllen) : 1234567890
(3) Land Deutschland DE : 13 14 (für DE)
(4) Prüfziffer (zunächst 00) : 00

Daraus muss man eine 24-stellige Zahl bilden (1) (2) (3) (4)
12345678 1234567890 13 14 00 => 123456781234567890131400
Diese Zahl muss man durch 97 dividieren (modulo 97)
Es entsteht ein Rest von 00..96
Die Prüfziffer ist : 98 - Rest, sie ist 2-stellig (ggf. Vornull), z.B. 09

Die IBAN ergibt sich danach

Land Prüfziffer BLZ KontoNr
DE 09 12345678 1234567890 => DE09123456781234567890

Ich habe das mit Delphi 7 gemacht, dabei bekam ich ein Problem mit der langen 24-stelligen Zahl.
Die war zunächst ein String und sollte mit VAL(s,v,i) in eine INT64-Zahl gewandelt werden.
Die VAL-Funktion lieferte dabei den Fehlercode i mit 20.
In V werden nur die ersten 18 Stellen dargestellt (ohne 131400).
Ich habe eine andere Lösung gefunden.

Jedoch meine Frage, kann man mit Delphi 7 mit so großen Zahlen arbeiten ?
Hartmut

Geändert von kwhk (12. Sep 2013 um 10:16 Uhr)
  Mit Zitat antworten Zitat