DataMatrix ili kako pravilno označiti cipele

Od 1. jula 2019. godine u Rusiji je uvedeno obavezno označavanje grupe roba. Od 1. marta 2020. cipele su trebale potpasti pod ovaj zakon. Nisu svi imali vremena da se pripreme, pa je zbog toga lansiranje odgođeno za 1. jul. Lamoda je među onima koji su to uspjeli.

Stoga želimo podijeliti svoje iskustvo sa onima koji tek trebaju etiketirati odjeću, gume, parfeme itd. U članku se opisuje niz industrijskih standarda, određena regulatorna dokumentacija i lično iskustvo. Članak je prvenstveno namijenjen integratorima i programerima koji tek trebaju razumjeti ovaj projekat.

DataMatrix ili kako pravilno označiti cipele

Napominjemo da se regulatorni okvir često mijenja, te da autor nema mogućnost stalnog ažuriranja materijala. Stoga, do trenutka čitanja, neke informacije mogu već biti zastarjele.

Autor je lično iskustvo stekao kako u okviru Datamatrix projekta u Lamodi, tako iu razvoju vlastite besplatne aplikacije za označavanje BarCodesFx.

Od 1. jula 2019. godine u Rusiji je na snazi ​​zakon o obaveznom označavanju. Zakon se ne primjenjuje na sve grupe roba, a vrijeme stupanja na snagu obaveznog označavanja za grupe proizvoda varira. Sada duvan, bunde, cipele, lijekovi podliježu obaveznom označavanju. U bliskoj budućnosti će se predstaviti za gume, odjeću, parfeme i bicikle. Svaka grupa roba je regulisana posebnom uredbom vlade (GPR). Stoga, neke tvrdnje koje su točne za cipele možda neće biti istinite za druge grupe proizvoda. Ali možemo se nadati da tehnička komponenta neće mnogo varirati za različite grupe proizvoda.

OznačavanjeOsnovna ideja označavanja je da se svakoj jedinici robe dodjeljuje pojedinačni broj. Po ovom broju možete pratiti istoriju određenog artikla od trenutka proizvodnje ili uvoza u zemlju, do trenutka odlaganja na blagajni. Zvuči lijepo, ali u praksi je izuzetno teško implementirati.Koncept je detaljnije opisan na službenoj stranici poštenog znaka.

Uobičajeni pojmovi i koncepti

UOT - učesnik u prometu robe.
CRPT je centar za razvoj naprednih tehnologija. Privatna kompanija, jedina država. označavanje izvođača projekta. Djeluje u okviru šeme javno-privatnog partnerstva (JPP). Nažalost, nema podataka o ostalim učesnicima na tenderu za projekat, kao ni o samom tenderu.
TG - robna grupa. Cipele, odeća, gume itd.
GTIN - zapravo, artikl, uzimajući u obzir boju i veličinu. Izdaje se u GS1 ili nacionalnom katalogu za svakog uvoznika ili proizvođača za njegov proizvod. Proizvođač ili uvoznik mora prvo opisati ovaj proizvod.
PPR - Uredba Vlade Ruske Federacije. Za cipele - 860.
KM - kod za označavanje. Jedinstveni skup znakova dodijeljen određenoj stavci. Za cipele se sastoji od GTIN-a, serijskog broja, verifikacionog koda i kripto repa.
GS1 je međunarodna organizacija koja izdaje GTIN. Takođe sastavljači niza standarda za označavanje.
Nacionalni katalog - analog GS1, koji je razvio CRPT.
cryptotail - analog digitalnog potpisa, koji potvrđuje zakonitost CM-a. Mora biti u matrici podataka na pečatu. Pohranjivanje u tekstualnom obliku je zabranjeno. Nakon štampanja, pečat mora biti uklonjen u skladu sa dogovorom sa CRPT. Nisu poznati slučajevi stvarne upotrebe.
CPS - stanica za upravljanje narudžbama. Sistem u kojem se KM naručuju za artikl.
EDI - elektronsko upravljanje dokumentima.
UKEP — poboljšani kvalifikovani elektronski potpis.

Termini i koncepti u okviru ovog članka

ChZ - pošten znak.
uredu - Lični prostor.
Napravi - odštampani kod za označavanje.

Proces je sledeći: prvo, učesnik (UOT) izdaje elektronski potpis (ECES), registruje se u poštenom znaku (CHZ), opisuje proizvod u nacionalnom katalogu ili GS1 i dobija GTIN-ove za proizvod. Na web stranici poštenog znaka ovi koraci su detaljno opisani, tako da se nećemo zadržavati na njima.

Kodovi za naručivanje i primanje

Nakon prijema GTIN-ova, učesnik (UOT) vrši narudžbu kodova (KM) u CPS sistemu.
Važno, ali nije očigledno.

  1. Možete zatražiti kodove za do 10 GTIN-ova po narudžbi. U principu, neshvatljivo ograničenje. Uvoznik sa 14 GTIN-ova mora kreirati 000 narudžbi.
  2. U jednoj narudžbi može se zatražiti najviše 150 kodova.
  3. Postoji ograničenje od 100 porudžbina u radu. Odnosno, ne može se obraditi više od 100 naloga istovremeno. Ako ih ima više od 100, tada će API početi vraćati grešku umjesto liste narudžbi. Jedini način da ispravite ovu grešku je da zatvorite neke narudžbe putem web sučelja. API ne pruža parametar za djelimično prikazivanje naloga.
  4. Postoji ograničenje broja zahtjeva - ne više od 10 zahtjeva u sekundi. Prema mojim podacima, ovo ograničenje se ne pojavljuje u dokumentima, ali postoji.

Iz ličnog iskustva sa narudžbama kodova za označavanje KM preko CMS API-ja.

  1. Zahtjev (sam json) mora biti potpisan GOST potpisom. Ovo je rad sa kriptopro. Moramo pažljivo pratiti da korišteni okvir ili biblioteka ne mijenjaju originalni json za jedan bajt. U suprotnom, potpis odmah prestaje da važi.
  2. Potpis naloga. Nalog se može potpisati bilo kojim potpisom bilo kog klijenta. Ako je potpis ispravan, KMS sistem će ga prihvatiti. Tokom integracije, bilo je moguće potpisati zahtjev tuđim potpisom izdanim na testnom CA. Borbeni krug CPS-a obradio je naređenje i pustio šifre. Po mom mišljenju, ovo je sigurnosna rupa. Programeri su reagovali na izveštaj o grešci „videćemo“. Nadam se da je popravljeno.

    Stoga budite izuzetno oprezni ako na jednom radnom mjestu radi više pravnih lica. lica. Danas će CPS prihvatiti ove zahtjeve, a sutra će zahtjevi biti ponovo provjereni i polovina kodova će biti povučena zbog tuđeg potpisa. I u principu, formalno će biti u pravu.

  3. Automatsko potpisivanje naloga je funkcija koja više nije dostupna u CMS-u. Za njegov rad bilo je potrebno učitati privatni dio ključa na lični račun poštenog znaka. Ovo je ključni kompromis. A prema važećem zakonodavstvu, u slučaju kompromitacije poboljšanog kvalifikovanog elektronskog potpisa, vlasnik mora obavijestiti svoj sertifikacijski centar (CA) i opozvati UKES. Ako se ova funkcija vrati, onda pažljivo pazite da privatni dio ključa ne napusti računalo.
  4. U februaru je Centar za razvoj naprednih tehnologija (CRPT) prećutno uveo ograničenje broja zahteva za KMS API. Ne više od jednog zahtjeva u sekundi. Zatim je, jednako neočekivano i tiho, ukinuo ovo ograničenje. Stoga preporučujem da se u sistem stavi mogućnost ograničavanja broja zahtjeva za CRPT API u slučaju relapsa. Sada postoje informacije o ograničenju od 10 zahtjeva u sekundi.
  5. Takođe u februaru, ponašanje KMS API-ja se značajno promenilo bez upozorenja. API ima zahtjev za dobivanje statusa narudžbi. Status je ukazao na bafere i njihovo stanje. Jedan GTIN = jedan bafer. Takođe je naznačilo koliko je kodova dostupno za primanje iz bafera. Jednog lijepog dana, svi baferi su imali -1. Morao sam da ispitam stanje svakog bafera posebno putem posebne metode. Umjesto jednog zahtjeva, morao sam dati jedanaest.

Struktura kodova

Dakle, kodovi su poređani i generisani. Mogu se preuzeti preko API-ja u tekstualnom obliku, u pdf-u kao naljepnice za štampanje i kao csv fajl sa tekstom.

API je već napisan gore. Što se tiče druga dva načina. U početku, CPS vam je dozvoljavao da podignete kodove samo jednom. A ako je uzeta pdf datoteka, onda je bilo moguće dobiti kodove u tekstualnom obliku samo ponovnim skeniranjem svih datamatrica iz pdf-a. Srećom, nekoliko puta su dodali mogućnost preuzimanja kodova i ovaj problem je riješen. U roku od dva dana, kodovi su i dalje dostupni za ponovno preuzimanje.

Ako preuzimate u csv formatu, nikada ga, ni pod kojim okolnostima, ne otvarajte u excelu. I ne dozvoli nikome. Excel ima funkciju automatskog spremanja. U vrijeme spremanja, Excel može izmijeniti vaše kodove na najnepredvidljiviji način. Preporučujem korištenje notepad++ za pregled kodova.

Ako otvorite datoteku iz CMS-a u notepadu ++, možete vidjeti ovakve linije. Treći kod je nevažeći (nema GS graničnike).

DataMatrix ili kako pravilno označiti cipele

Partneri su nam dali šifre za označavanje njihove robe. Golim okom možete vidjeti koje su datoteke generirane pomoću Excela - do 5% kodova je bilo nevažećih.

Toplo preporučujem čitanje o standardima GS1. Opis standarda sadrži odgovore na mnoga pitanja o formiranju DataMatrix-a.

Identifikacioni kod se sastoji od GTIN-a i serijskog broja. Prema GS1 standardu, oni odgovaraju identifikatorima aplikacije (UI) 01 i 21. Imajte na umu da identifikatori aplikacije nisu dio GTIN-a i serijskog broja. Oni ukazuju na to da iza identifikatora aplikacije (UI) slijedi GTIN ili serijski broj. Ovo je posebno važno kod programiranja POS softvera. Za popunjavanje oznake 1162 potreban vam je tačno GTIN i serijski broj, bez identifikatora aplikacije.

Za UTD (univerzalni prijenosni dokument) i druge dokumente, naprotiv, najčešće je potreban kompletan zapis sa identifikatorima aplikacije.

DataMatrix ili kako pravilno označiti cipele

GS1 standard navodi da GTIN ima fiksnu dužinu od 14 znakova i da se može sastojati samo od brojeva. Serijski broj je promjenjive dužine i opisan je na stranici 155 standarda. Tu je i link do tabele sa simbolima koji se nalaze u serijskom broju.

Pošto serijski broj ima promjenjivu dužinu, separator GS označava njegov završetak. U ASCII tabeli ima kod 29. Bez ovog separatora, nijedan program neće razumjeti u kom trenutku je serijski broj završio, a druge grupe podataka započele.

Više detalja o kodu za označavanje (KM) možete pronaći u službena dokumentacija.

Za cipele, serijski broj je fiksiran na 13 znakova, međutim, njegova veličina se može promijeniti u bilo kojem trenutku. Za druge grupe proizvoda (TG), dužina serijskog broja može varirati.

Generacija DataMatrix-a

DataMatrix ili kako pravilno označiti cipele

Sljedeći korak je pretvaranje podataka u DataMatrix kod. Uredba Vlade Ruske Federacije 860 navodi GOST, prema kojem je potrebno formirati DataMatrix. Takođe, PPR 860 specificira obaveznu upotrebu identifikatora aplikacije. Imajte na umu da u DataMatrix standardu ne postoji koncept "identifikatora aplikacije". Oni su samo u GS-1 DataMatrix standardu. Ispostavilo se da PPR 860 implicitno zahtijeva korištenje GS-1 DataMatrix-a. Na sreću, standardi su slični. Glavna razlika: U GS-1 DataMatrix-u, prvi znak mora biti FNC1. GS simbol ne mora biti prvi u DataMatrix-u, samo FNC1.

FNC1 se ne može jednostavno uzeti i dodati u liniju kao GS. Mora ga dodati program koji generiše DataMatrix. Nekoliko mobilne aplikacije, pomoću kojih možete provjeriti ispravnost generiranih DataMatrix kodova.

Važno je. Aplikacija poštenog znaka prihvata nevažeći DataMatrix. Čak i QR kodovi. Činjenica da je brend prepoznat i da su prikazane informacije o proizvodu ne znači da je DataMatrix pravilno formiran. Čak i kada je kripto-rep zamijenjen, CZ aplikacija je prepoznala brend i prikazala podatke na proizvodu.

Kasnije objavljen CZ objašnjenjekako pravilno generirati kodove. Zbog velikog broja kodova grešaka, prepoznali su kodove bez FNC1 kao važeće, ali ipak preporučuju generisanje GS-1 DataMatrixa.

Nažalost, prilično veliki postotak datamatrica od partnera dolazi s greškama. Zahvaljujući pojašnjenjima iz CZ-a, pitanje “Da li je moguće trgovati takvim proizvodom nakon 1. jula ili ne?” u potpunosti je riješeno. Spojler - možete.

Štampanje

Obratite pažnju na način štampanja markica. Kada se štampa na termalnom štampaču, pečat brzo bledi i ovaj proizvod se više ne može prodavati. Nečitak pečat predstavlja kršenje PPR 860. Što dovodi do zaplene robe, novčanih kazni i krivične odgovornosti.

Koristite termo transfer štampanje. U ovom slučaju pečat nije toliko sklon blijeđenju. Materijal etikete također određuje koliko je marka osjetljiva na mehanička oštećenja. Ako kod nije čitljiv zbog mehaničkog oštećenja, to je jednako odsustvu marke sa svim posljedicama koje iz toga proizlaze.

DataMatrix ili kako pravilno označiti cipele

Izaberite štampač od planiranih količina štampanja. Stoni štampači nisu dizajnirani za štampanje 100 naljepnica dnevno.

Zaustavljanje i pokretanje štampanja povećava trošenje štampača. Neki programi šalju zadatak za štampanje jednu po jednu etiketu. Bolje je ne koristiti takve programe.

Rad sa dokumentima

Nakon štampanja i lijepljenja markica, sve dalje operacije sa njima odvijaju se putem dokumenata ili ličnog računa poštene marke.

Kada radite s velikim brojem kodova, možete kreirati xml datoteke koje sadrže potrebne kodove i prenijeti te datoteke putem API-ja ili web sučelja vašeg ličnog naloga.

XSD šema se može preuzeti u odjeljku "pomoć" LC CZ.

Obratite pažnju na sledeće tačke.

  1. Xsd šeme u LC CZ sadrže greške u validaciji TIN-a i ograničenja dužine linije. Samo ispravljanjem grešaka možete koristiti šeme. Na sreću, greške su očigledne, pa to nije teško uraditi.
  2. Shema se najčešće sastoji od dva dijela - zajedničkog za sve vrste dokumenata i zasebnog za određenu vrstu. Opća šema se dodaje putem uvoza specifičnoj. Obje šeme se nalaze u odjeljku pomoći u LC ChZ.
  3. Pravila izbjegavanja za CM se razlikuju od onih općenito prihvaćenih za XML, to piše u službenoj dokumentaciji iz CZ, obratite pažnju na ovo. Evo ovdje na strani 4 sva pravila.
  4. Ne treba pokušavati da unesete 150 kodova u promet u jednom fajlu. Prema riječima očevidaca, obično se prođe dosije od preko 000.
  5. Xml fajl se može umotati sa greškom “xml validation error”, a pet minuta kasnije ista datoteka se prihvata bez problema.
  6. Ako datoteka sadrži šifru koja je već stavljena u promet, tada datoteka stavljena u promet najvjerovatnije neće biti prihvaćena.
  7. Dokumenti o otpremi i prijemu koriste se kao privremeno rješenje. U budućnosti planiraju da ih ukinu i pređu na UPD u skladu sa PPR 860.
  8. Mit o 60 dana. Postoji mišljenje da kodovi koji nisu pušteni u promet "izgaraju" nakon 60 dana. Ovo je mit, izvor nepoznat. Kodovi "izgaraju" samo ako ih niste preuzeli od CPS-a u roku od 60 dana. Životni vijek prikupljenih kodova nije ograničen.

zaključak

Prilikom razvoja moje besplatne aplikacije za označavanje BarCodesFX, inicijalno je urađena integracija sa KMS API-jem. Kada je pošten znak po drugi put neočekivano promijenio logiku API-ja, integracija je morala biti napuštena. Nadam se da će u budućnosti CZ uspjeti stabilizirati razvoj i API, jer. za nekomercijalni proizvod mi je jako skupo da svaki dan dvaput provjeravam da li je došlo do promjena u API-ju i brzo ga usavršavam.

Kada provodite označavanje, pažljivo pročitajte regulatornu dokumentaciju za vašu TG grupu proizvoda, ispravno odštampajte GS1-DataMatrix i budite spremni na sve nepredviđene promjene u odnosu na poštenu CZ znak.

Fort Alliance je stvorio informativni prostor (wiki, sobe za razgovor telegram, seminari, webinari), gdje možete pronaći korisne i ažurne informacije o označavanju u svim industrijama.

izvor: www.habr.com

Dodajte komentar