Wpisany przez Tomasz Lubiński,
27 października 2005 21:37
Kod EAN-13 służy do oznaczania produktów i składa się z czterech obszarów:
Dzięki zastosowaniu zmiennej długości kodu wytwórcy, można lepiej wykorzystać dostępne kody. Mały wytwórca dostanie długi kod wytwórcy i krótki kod produktu. Nastomiast duży producent, który ma w swoim asortymencie tysiące prodkutów, dostanie krótszy kod producenta, tak by był w stanie ponumerować wszystkie swoje wyroby.
Kod produktu jest unikalnym kodem przydzielonym przez producenta. W przeciwieństwie do kodu wytwórcy, producent przydziela kod produktu na własną rękę. Ponieważ EAN gwarantuje, że pierwsza część kodu (kod producenta wraz z systemem numerowania) jest unikalna, to wytwórca musi się tylko upewnić, że do nowych produktów nie używa kodów produktu używanych przez siebie wcześniej.
Cyfra kontrolna umożliwia sprawdzenie poprawności danego kodu. Oblicza się ją następująco. Dla identyfikatora EAN-13 wagi przez które mnożymy kolejne cyfry wynoszą: 1 3 1 3 1 3 1 3 1 3 1 3. Następnie wynik dzielimy modulo 10, i odejmujemy go od 10. Nastepnie ten wynik dzielimy znów modulo 10. Wynik musi być zgodny z ostatnią cyfrą kodu EAN-13.
By kod EAN-13 mógł zostać automatycznie "przeczytany" przez urządzenia skanujące musi zostać przetworzony do postaci kodu kreskowego EAN-13.
Sprawdźmy poprawność kodu: 4902030187729
Mnożymy zatem cyfry przez odpowiednie wagi:
4*1 + 9*3 + 0*1 + 2*3 + 0*1 + 3*3 + 0*1 + 1*3 + 8*1 +7*3 + 7*1 + 2*3 = 4 + 27 + 0 + 6 + 0 + 9 + 0 + 3 + 8 + 21 + 7 + 6 = 91
Teraz dzielimy wynik przez modulo 10
91 mod 10 = 1
Wynik odejmujemy od 10
10 - 1 = 9
I znów dzielimy przez modulo 10 (to zabezpieczenie gdyby w kroku powyżej wyszło nam 10 - wówczas cyfra kontrolna powinna wynosić 0)
9 mod 10 = 9
Sprawdzamy czy ostania cyfra to 9? Tak, a więc podany kod EAN-13 jest prawidłowy.
Ponadto, z tabeli poniżej możemy odczytać iż producentem tego produktu jest Japonia (490).
- 3 pierwsze cyfry - system numerowania, oznaczający kod kraju ew. rodzaj produktu (patrz. tabela poniżej)
- kolejne 4 do 7 cyfr - kod wytwórcy
- następne 2 do 5 cyfr - kod produktu
- ostatnia cyfra to cyfra kontrolna
system numerowania |
kod wytwórcy |
kod produktu |
cyfra kontrolna |
XXX | XXXX | XXXXX | X |
XXX | XXXXX | XXXX | X |
XXX | XXXXXX | XXX | X |
XXX | XXXXXXX | XX | X |
Dzięki zastosowaniu zmiennej długości kodu wytwórcy, można lepiej wykorzystać dostępne kody. Mały wytwórca dostanie długi kod wytwórcy i krótki kod produktu. Nastomiast duży producent, który ma w swoim asortymencie tysiące prodkutów, dostanie krótszy kod producenta, tak by był w stanie ponumerować wszystkie swoje wyroby.
Kod produktu jest unikalnym kodem przydzielonym przez producenta. W przeciwieństwie do kodu wytwórcy, producent przydziela kod produktu na własną rękę. Ponieważ EAN gwarantuje, że pierwsza część kodu (kod producenta wraz z systemem numerowania) jest unikalna, to wytwórca musi się tylko upewnić, że do nowych produktów nie używa kodów produktu używanych przez siebie wcześniej.
Cyfra kontrolna umożliwia sprawdzenie poprawności danego kodu. Oblicza się ją następująco. Dla identyfikatora EAN-13 wagi przez które mnożymy kolejne cyfry wynoszą: 1 3 1 3 1 3 1 3 1 3 1 3. Następnie wynik dzielimy modulo 10, i odejmujemy go od 10. Nastepnie ten wynik dzielimy znów modulo 10. Wynik musi być zgodny z ostatnią cyfrą kodu EAN-13.
By kod EAN-13 mógł zostać automatycznie "przeczytany" przez urządzenia skanujące musi zostać przetworzony do postaci kodu kreskowego EAN-13.
Przykład:
Sprawdźmy poprawność kodu: 4902030187729
Mnożymy zatem cyfry przez odpowiednie wagi:
4*1 + 9*3 + 0*1 + 2*3 + 0*1 + 3*3 + 0*1 + 1*3 + 8*1 +7*3 + 7*1 + 2*3 = 4 + 27 + 0 + 6 + 0 + 9 + 0 + 3 + 8 + 21 + 7 + 6 = 91
Teraz dzielimy wynik przez modulo 10
91 mod 10 = 1
Wynik odejmujemy od 10
10 - 1 = 9
I znów dzielimy przez modulo 10 (to zabezpieczenie gdyby w kroku powyżej wyszło nam 10 - wówczas cyfra kontrolna powinna wynosić 0)
9 mod 10 = 9
Sprawdzamy czy ostania cyfra to 9? Tak, a więc podany kod EAN-13 jest prawidłowy.
Ponadto, z tabeli poniżej możemy odczytać iż producentem tego produktu jest Japonia (490).
Implementacje
Autor | Język programowania | Komentarz | Otwórz | Pobierz | Ocena |
Tomasz Lubiński | C/C++ | .cpp | .cpp | ***** / 2 | |
Tomasz Lubiński | Delphi/Pascal | .pas | .pas | ***** / 4 | |
Tomasz Lubiński | Java | .java | .java | ***** / 1 |
Kody systemu numerowania EAN-13
|
|
Poprawiony: 29 sierpnia 2012 20:19
Komentarze
0
#
maus
2009-09-09 14:18
na zaliczeniu mialam pyt typu: od czego zalezy ze jedno panstwo otrzyma 2 cyfrowy system numerowania a inne 3 cyfrowy??No wlasnie moze ktos odpowie...
Odpowiedz | Odpowiedz z cytatem | Cytować
+3
#
Tomek
2009-09-09 19:19
Państwa większe i bardziej rozwinięte gospodarczo, będą miały system numerowania 2-cyfrowy, np: Japonia (wszystko co zaczyna się na 49 zostało wyprodukowane w Japonii, patrz tabelka powyżej - ma przyporządkowan e numery 490-499). Państwa mniejsze i mniej rozwinięte gospodarczo np: Polska (590) mają numer 3-cyfrowy. Wynika to z tego, że mając numerację 2 cyfrową więcej miejsca pozostaje na numerację producentów i produktów (12-2=10 cyfr, zatem potencjalnie można oznaczyć 10 miliardów produktów), duże rozwinięte państwa produkują większą gamę produktów, które trzeba jakoś oznaczyć. Analogicznie mając numerację 3 cyfrową mniej miejsca pozostaje na producentów i produkty (12-3=9 cyfr, potencjalnie można oznaczyć 1 miliard różnych produktów).
Odpowiedz | Odpowiedz z cytatem | Cytować
Dodaj komentarz