Proračun kontrolnog broja Modulo 43

Opis izračunavanja kontrolnih znamenaka



InfoActiveBarcode automatski izračunava kontrolne znamenke za većinu kodova.
Ova dokumentacija je samo radi potpunosti.

Modulo 43

Izračun kontrolne sume prema modulu 43:
Kontrolni znak prema Modulu 43 koristi se npr. kod koda 39.

Prvo se referentnim brojevima označavaju svi znakovi koda. Ovi referentni brojevi dodaju se ukupnom iznosu. Ovaj iznos se dijeli sa 43. Ostatak ove divizije odgovara kontrolnoj sumi, koja se zatim zamjenjuje znakom koji odgovara referentnom broju.

Primjer izračuna:

Cifre: 1 5 9 A Z
Referentni brojevi: 1 +5 +9 +10 +35
Zbroj referentnih brojeva: 60
Izračunaj kontrolnu sumu: 60 / 43 = 1 Ostatak 17
Provjerbeni znak "H" (Referentni broj 17)

Referentni brojevi:
00 0
01 1
02 2
03 3
04 4
05 5
06 6
07 7
08 8
09 9
10 A
11 B
12 C
13 D
14 E
15 F
16 G
17 H
18 I
19 J
20 K
21 L
22 M
23 N
24 O
25 P
26 Q
27 R
28 S
29 T
30 U
31 V
32 W
33 X
34 Y
35 Z
36 -
37 .
38 Space
39 $
40 /
41 +
42 %


Primjer koda za izračunavanje kontrolne sume prema modulu 43

Excel VBA kôd za izračun kontrolne sume prema modulu 43, npr. za HIBC kod:
' calc modulo 43
‘ returns the input string plus the check character
' demo for www.activebarcode.com
Public Function MOD43CheckChar(sValue As String) As String
    Const charSet As String = "0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ-. $/+%"
    Dim i As Integer
    Dim T As Long
    For i = 1 To Len(Trim(UCase(sValue)))
        T = InStr(charSet, Mid(sValue, i, 1)) - 1 + T
    Next i
    MOD43CheckChar = sValue & Mid$(charSet, (T Mod 43 + 1), 1)
End Function