Kockák vagyunk, és ezt tudjuk. Folyamatosan eszünk, alszunk, viccelődünk és kritizáljuk a vonalkódcímkéket, itt az EIM-nél. Egyikünknek még egy pár vonalkódcímke mandzsettagombja is van. Az egyik ünnepi partinkon lebukott, amikor viselte őket. Tudjuk, tudjuk. Szánalmas.
A kockaságunkban azonban az a jó, hogy – mivel olyan jól ismerjük a szakmánkat – nem kell megizzadni. Mi gondoskodunk rólad. Persze, meg tudjuk csinálni a szokásos dolgokat, mint a Code 39 és a Code 128. Mégis rengeteg speciális, sőt egyenesen különös vonalkód létezik a vonalkódok országában. Olyan kódok, mint az Interleaved 2 of 5, CPC Binary, EAN, ISBN, Azték, Datamatrix, Chromocode (amely a nyár szép, élénk színeit és zöldjeit adja – oké, ez egy Paul Simon dal) és a QR-kód. Ezek közül néhány 1 dimenziós (szigorúan lineáris) és néhány 2 dimenziós (nem lineáris). Dimenziók egy vonalkódban? Mit tegyen egy vonalkód-újonc?
Az üzenetek és a vonalkódok közötti leképezést szimbológiának nevezzük. A szimbológia specifikációja magában foglalja az üzenet egyes számjegyeinek vagy karaktereinek kódolását, valamint a kezdő- és zárójelek sávokká és szóközökké történő kódolását, a vonalkód előtt és után szükséges csendes zóna méretét, és bizonyos típusú vonalkódok esetében az ellenőrző összeg kiszámítását.
Mi is az ellenőrző összeg?
Az ellenőrző összeg egy adattömbből kiszámított érték, amelyet – vonalkódok esetében – az adatokkal együtt tárolnak, hogy az adatok sérülését észleljék. Az ellenőrző összegek az olyan vonalkódok kötelező elemei, mint a Code 128 vagy a UPC.
Az ellenőrző számjegy a vonalkódhoz a hibák felismerésére redundanciaellenőrzésként hozzáadott extra karakter – a vonalkódoknál használt “digitális ujjlenyomat”. Egyetlen számjegyből áll, amelyet az üzenet többi számjegyéből számolnak ki. Az ellenőrző számjegy segítségével fel lehet fedezni az egyszerű hibákat egy számsorozat bevitelében, például egyetlen hibásan beírt számjegyet vagy két egymást követő számjegy permutációját.
A (kiskereskedelmi termékeken használt) UPC-vonalkód utolsó számjegye például az ellenőrző számjegy. Tegyük fel, hogy az ellenőrző számjegyünk 4, és ezt a következőképpen ellenőrizzük:
1. Adjuk össze a páratlan (első, harmadik, ötödik stb.) számjegyeket (az ellenőrző számjegyig, de nem beleértve azt), és szorozzuk meg hárommal (4 x 3 = 12)
2. Adjuk össze a páros számhelyeken (második, negyedik, hatodik stb.) lévő számjegyeket (az ellenőrző számjegyig, de nem beleértve) (1+0+0+0+0+0+3=4)
3. Adjuk össze a két eredményt, hogy megkapjuk az összeget. (12 + 4 = 16)
4. Az ellenőrző számjegy a legkisebb szám lesz, amely ahhoz szükséges, hogy az összeget a legközelebbi 10 többszörösére kerekítsük. (16 kerekít 20-ra; 20 – 16 = 4 = az ellenőrző számjegy)
Kérdezned kellett, ugye? Ha elvégzi ezeket a számításokat, és az eredmény nem egyezik az ellenőrző számjeggyel, akkor nagy az esélye, hogy a billentyűzetkezelő valahol rossz számot ütött be a vonalkódhoz.