Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Algorithmen, Datenstrukturen und Klassendesign (https://www.delphipraxis.net/78-algorithmen-datenstrukturen-und-klassendesign/)
-   -   IBAN mit kurzen Kontonummern richtig berechnen (https://www.delphipraxis.net/175303-iban-mit-kurzen-kontonummern-richtig-berechnen.html)

dataspider 11. Jun 2013 16:16

IBAN mit kurzen Kontonummern richtig berechnen
 
Liste der Anhänge anzeigen (Anzahl: 1)
Hi,

ich habe einen Aussetzer...
Ich berechne IBAN' s für Deutschland und meine Routine ist falsch, wenn die Kontonummern weniger als 10 Stellen haben.

Überall ist zu lesen, dass Kontonummern mit FÜHRENDEN Nullen aufzufüllen sind.

Lasse ich es aber im Internet berechnen, macht er bei 7 - stelligen Kontonummern 1 Null davor und 2 dahinter (siehe Anhang).

Wie ist es denn nun richtig?

Frank

Panthrax 11. Jun 2013 18:25

AW: IBAN mit kurzen Kontonummern richtig berechnen
 
Die letzten (beiden) Stellen können ein Unterkonto bezeichnen. Diese sind aber nicht bei jeder Bank erforderlich, um das Hauptkonto zu identifizieren. Dann wären die Kontonummern "12345678" und "1234567800" gleichwertig und bezeichnen meist das Girokonto.

Das Tagesgeldkonto könnte etwa die Kontonummer "1234567805" haben und kann für eingehende Überweisungen meist direkt adressiert werden. Dass solche Konten als "Unterkonten" wahrgenommen werden liegt u.a. einfach daran, dass die nicht in "00" enden, meist in weniger Vorgängen verwendet werden und die Banken von dort häufig keine banküberschreitenden, ausgehenden Überweisungen erlauben. Technisch sind sie jedoch eigenständige Konten.

Wenn nun also die Kontonummer "12345" tatsächlich die Kurzform für "1234500" ist und aufgefüllt werden soll ergibt sich dann: "0001234500".

dataspider 11. Jun 2013 19:14

AW: IBAN mit kurzen Kontonummern richtig berechnen
 
Hi,

vielen Dank. Ich habe mal etwas recherchiert.
Da es die BLZ der deutschen Bank ist, hast du auf jeden Fall recht.
Es fehlt hier die Unterkontonummer 00. Dann passt wieder alles.

Die DB hat das Prüfzifferverfahren 63, woher ich auch die Länge 9 Stellen, letzten beiden Unterkonto...

Jetzt wird mir langsam klar, das die ganze Sache doch nicht so easy ist.

Unterkonten kommen auch bei anderen Prüfziffer - Berechnungsmethoden vor, manchmal auch am Anfang.

Das wird ja noch heiter...

Frank

katjah 11. Jun 2013 19:32

AW: IBAN mit kurzen Kontonummern richtig berechnen
 
Hallo dataspider,

es gibt Banken, die halten sich nicht an den Standard, wie IBANs in DE zusammenzusetzen sind.
Kennst Du das schon http://www.bundesbank.de/Navigation/...an_regeln.html ?
Vermutlich musst Du Dich dort für's Extranet registrieren, dort gibt es eine erweiterte Bankleitzahlendatei.

dataspider 12. Jun 2013 06:51

AW: IBAN mit kurzen Kontonummern richtig berechnen
 
Zitat:

Zitat von katjah (Beitrag 1218296)
Hallo dataspider,

es gibt Banken, die halten sich nicht an den Standard, wie IBANs in DE zusammenzusetzen sind.
Kennst Du das schon http://www.bundesbank.de/Navigation/...an_regeln.html ?
Vermutlich musst Du Dich dort für's Extranet registrieren, dort gibt es eine erweiterte Bankleitzahlendatei.

Danke,

hab ich gestern schon entdeckt und auch meine Mail schon abgeschickt.
Ich bin aber auch schon am Überlegen, ob ich lieber eine fertige Lösung (DLL oder Webservice) suche.

Frank

Jumpy 12. Jun 2013 08:09

AW: IBAN mit kurzen Kontonummern richtig berechnen
 
Hast du schon das Projekt von Amateurprofi dazu gesehen, vllt. hilft dir das weiter?

dataspider 12. Jun 2013 08:49

AW: IBAN mit kurzen Kontonummern richtig berechnen
 
Zitat:

Zitat von Jumpy (Beitrag 1218330)
Hast du schon das Projekt von Amateurprofi dazu gesehen, vllt. hilft dir das weiter?

Ja, hab ich schon gesehen.
Aber da mein Kunde die IBAN in meiner Software berechnet, nützt es mir nichts.
Allerdings...wenn Amateurprofi alles in eine DLL packt, wäre das schon sehr interessant...

Frank

sh17 12. Jun 2013 10:23

AW: IBAN mit kurzen Kontonummern richtig berechnen
 
er möchte keine kommerzielle Nutzung.

madas 12. Jun 2013 18:15

AW: IBAN mit kurzen Kontonummern richtig berechnen
 
Zitat:

Zitat von dataspider (Beitrag 1218261)
Hi,

ich habe einen Aussetzer...
Ich berechne IBAN' s für Deutschland und meine Routine ist falsch, wenn die Kontonummern weniger als 10 Stellen haben.

Überall ist zu lesen, dass Kontonummern mit FÜHRENDEN Nullen aufzufüllen sind.

Lasse ich es aber im Internet berechnen, macht er bei 7 - stelligen Kontonummern 1 Null davor und 2 dahinter (siehe Anhang).

Wie ist es denn nun richtig?

Frank

Da es sich bei Deinem Beispiel um eine Kontonummer von der Deutschen Bank handelt, ist es vollkommen richtig, dass am Ende 2 Nullen sind. Diese geben bei dieser Bank das Unterkonto an.
Bei der IBAN muss dieses jetzt immer mit an die sonst "übliche" Kontonummer der Deutschen Bank mit dran gesetzt werden.

Units zum Testen bzw. zur Berechnung von IBANs kann ich gegebenen Falls zur Verfügung stellen.

MfG

madas

dataspider 13. Jun 2013 13:45

AW: IBAN mit kurzen Kontonummern richtig berechnen
 
madas,

Das mit dem Unterkonto habe ich schon verstanden.
Das Problem ist, dass eine Berechnung der IBAN nur richtig funktionieren kann, wenn ich die Prüfzifferverfahren der Banken beachte.
So haben z.B. die ING Bank Frankfurt und die BFH Bank das PV 60. Hier ist das Unterkonto an den Stellen 1 und 2.
Richtig lustig wird es bei PZV 76, wo die Stammnummer 5, 6 oder 7 Stellig ist und u.U. mit führenden Nullen angegeben wird.
Unterkonto ist ab der 2. Stelle...

Es ist also nicht immer so einfach zu entscheiden, ob ich die angegebene Kontonummer noch an welcher Stelle mit evtl. nicht angegebener Unterkontonummer erweitern muss.

Wenn hierfür jemand Lösungsansätze in Form von Codeschnipseln anbieten kann, wäre ich sicher sehr interessiert.

Ich habe aber bis jetzt die ganze Berechnung als SP' s in einer Firebird - Datenbank.

Frank


Alle Zeitangaben in WEZ +1. Es ist jetzt 02:36 Uhr.

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz