Die Systemfunktion 'sysLib.calculateChkDigitMod11()' stellt eine Modulus-11-Prüfziffer in eine numerische Variable (NUM) oder in eine Zeichenvariable (CHAR), die mit einer Reihe von numerischen Zeichen beginnt.
sysLib.calculateChkDigitMod11(
Text CHAR | NUM inOut,
Prüflänge INT in,
Ergebnis SMALLINT inOut)
Im folgenden Beispiel wird anhand der Funktion 'sysLib.calculateChkDigitMod11' geprüft, ob eine Kontonummer (acctNo) präzise übertragen wurde:
program CheckDigit11 type BasicProgram
acctNo CHAR(10) = "56621869";
len SMALLINT = 8;
result SMALLINT = 0;
function main()
sysLib.calculateChkDigitMod11 (acctNo, len, result);
if (result != 0)
sysLib.writeStdout("Check digit not created");
end
sysLib.writeStdout(acctNo);
// 'acctNo' ist 56621865
end // Ende von 'main'
end // Ende von 'program'
6 x 2 = 12
8 x 3 = 24
1 x 4 = 4
2 x 5 = 10
6 x 6 = 36
6 x 7 = 42
5 x 2 = 10
(12 + 24 + 4 + 10 + 36 + 42 + 10) / 11
= 138 / 11
= 12 Rest 6
11 - 6 = 5
Ist der Rest 0 oder 1, lautet die Prüfziffer 0.
56621865
| Plattform | Problem |
|---|---|
| JavaScript-Generierung | Die Funktion 'sysLib.calculateChkDigitMod11()' wird nicht unterstützt. |