Das Notes Forum

Lotus Notes / Domino Sonstiges => Tipps und Tricks => Thema gestartet von: Schnubbel am 20.05.15 - 11:55:16

Titel: Iban Prüfung mit Formel-Sprache
Beitrag von: Schnubbel am 20.05.15 - 11:55:16
Hallo Gemeinde,
da ich das selbst mal gebraucht habe, habe ich eine Prüfung für IBANs (bisher nur Deutsche) in Formelsprache geschrieben. Evlt. braucht es ja auch mal einer von euch.

Das ganze habe ich von der Seite http://www.iban.de/iban-pruefsumme.html abgeleitet.

Gruß

Thorsten

Code
FeldInhalt:=@Text(@GetField("Iban"));
_pruef:=@Left(FeldInhalt;4);
_pruef:=@Right(_pruef;2);
_iban := FeldInhalt;
_land:=@Left(_iban;2);

_blz:=@Left(_iban;12);
_blz:=@Right(_blz;8);

_kto:=@Right(FeldInhalt;10);

_bban:=_blz + _kto;

_land:=@ReplaceSubstring(@UpperCase(_land);"D":"E";"13":"14");

_bban:=_bban + _land +"00";

_Div:=@TextToNumber(@Left(_bban;9));
_bban:=@Right(_bban;@Length(_bban)-9);
_c:=@Modulo(_Div;97);

@While(@Length(@Text(_bban))!=0;

@If(@Length(@Text(_bban))<9;@Do(_Div:=@Text(_c) + @Left(@Text(_bban);@Length(@Text(_bban)));_bban:="");@Do(_Div:=@Text(_c) + @Left(@Text(_bban);9-@Length(@Text(_c)));_bban:=@Right(@Text(_bban);@Length(@Text(_bban))-(9-@Length(@Text(_c))))));
_Div:=@TextToNumber(_Div);
_c:=@Modulo(_Div;97)
);
_c:=98-_c;
_c:=@If(@Length(@Text(_c))=1;"0" + @Text(_c);_c);
IBANpruefer:=@If(@Text(_c)=@Text(_pruef);1;0);
@If(IBANpruefer=1;@Prompt([Ok];"Ergebnis";"IBAN OK");@Prompt([Ok];"Ergebnis";"IBAN FALSCH"))