Wpisany przez Tomasz Lubiński,
28 sierpnia 2007 19:54
Kod UPC-A (ang. Universal Product Code) służy do oznaczania produktów i składa się z czterech obszarów:
Kod producenta - nadawany był przez UCC (ang. Uniform Code Council), teraz pieczę nad nim sprawuje GS1. Ponieważ przy pięciocyfrowym kodzie producenta można nadać 100000 kodów produktów, a nie każdy producent ma tak szeroką gamę asortymentu - powodowało to, że nie wszystkie kombinacje kodu UPC-A były wykorzystywane. Dlatego obecnie niektórzy mniejsi producenci otrzymują dłuższy kod producenta kosztem krótszego kodu produktu - czyli jeżeli producent dostanie 6 cyfrowy kod, to wówczas ma 4 (a nie 5) cyfr na swój kod produktu.
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ż GS1 gwarantuje, że kod producenta jest unikalny, 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:
By kod UPC-A mógł zostać automatycznie "przeczytany" przez urządzenia skanujące musi zostać przetworzony do postaci kodu kreskowego UPC-A.
Przeanalizujmy kod 054132691452:
Pierwsza cyfra oznacza numer systemu, jest to 0, co oznacza zwykły kod UPC.
Następnie 5 (lub więcej) cyfr to kod producenta: 54132.
Kolejne 5 (lub mniej) cyfr to kod produktu: 67145.
Ostatnia cyfra to cyfra kontrolna, sprawdźmy czy jest ona prawidłowa. Najpierw policzmy sumę ważoną: 3*0 + 1*5 + 3*4 + 1*1 + 3*3 + 1*2 + 3*6 + 1*9 + 3*1 + 1*4 + 3*5 = 0 + 5 + 12 + 1 + 9 + 2 + 18 + 9 + 3 + 4 + 15 = 78.
Teraz podzielimy wnik modulo 10: 78 mod 10 = 8.
Wynik odejmiemy od 10 i znów podzielimy modulo 10: 10 - 8 = 2, 2 mod 10 = 2.
Ostatnia cyfra jest zgodna z naszym wynikiem, zatem podany numer UPC-A jest prawidłowy.
- numer systemu (1 cyfra),
- kod producenta (5 cyfr)
- kod produktu (5 cyfr)
- cyfra kontrolna (1 cyfra)
Numer systemu | Rodzaj produktu |
0 | zwykły kod UPC |
1 | zarezerwowany |
2 | waga prduktów ważonych w sklepie |
3 | lekarstwa |
4 | artykuł nie będący żywnością |
5 | kupony |
6 | zarezerwowany |
7 | zwykły kod UPC |
8 | zarezerwowany |
9 | zarezerwowany |
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ż GS1 gwarantuje, że kod producenta jest unikalny, 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:
- obliczamy sumę ważoną wszyskich cyfr (poza cyfrą kontrolną) składających się na kod, wagi poszczególnych cyfr wynoszą: 3 1 3 1 3 1 3 1 3 1 3
- sumę ważoną należy podzielić modulo 10,
- wynik z poprzedniego kroku należy odjąć od 10 i znów podzielić modulo 10.
By kod UPC-A mógł zostać automatycznie "przeczytany" przez urządzenia skanujące musi zostać przetworzony do postaci kodu kreskowego UPC-A.
Przykład:
Przeanalizujmy kod 054132691452:
Pierwsza cyfra oznacza numer systemu, jest to 0, co oznacza zwykły kod UPC.
Następnie 5 (lub więcej) cyfr to kod producenta: 54132.
Kolejne 5 (lub mniej) cyfr to kod produktu: 67145.
Ostatnia cyfra to cyfra kontrolna, sprawdźmy czy jest ona prawidłowa. Najpierw policzmy sumę ważoną: 3*0 + 1*5 + 3*4 + 1*1 + 3*3 + 1*2 + 3*6 + 1*9 + 3*1 + 1*4 + 3*5 = 0 + 5 + 12 + 1 + 9 + 2 + 18 + 9 + 3 + 4 + 15 = 78.
Teraz podzielimy wnik modulo 10: 78 mod 10 = 8.
Wynik odejmiemy od 10 i znów podzielimy modulo 10: 10 - 8 = 2, 2 mod 10 = 2.
Ostatnia cyfra jest zgodna z naszym wynikiem, zatem podany numer UPC-A jest prawidłowy.
Implementacje
Autor | Język programowania | Komentarz | Otwórz | Pobierz | Ocena |
Tomasz Lubiński | C/C++ | .cpp | .cpp | ***** / 1 | |
Tomasz Lubiński | Delphi/Pascal | .pas | .pas | ***** / 1 | |
Tomasz Lubiński | Java | .java | .java | ***** / 1 |
Poprawiony: 29 sierpnia 2012 20:22