DataMatrix sau cum să etichetați corect pantofii

De la 1 iulie 2019, în Rusia a fost introdusă etichetarea obligatorie a unui grup de mărfuri. De la 1 martie 2020, pantofii trebuiau să intre sub incidența acestei legi. Nu toată lumea a avut timp să se pregătească și, drept urmare, lansarea a fost amânată pentru 1 iulie. Lamoda este printre cei care au făcut-o.

Prin urmare, dorim să împărtășim experiența noastră cu cei care încă nu au etichetat hainele, anvelopele, parfumurile etc. Articolul descrie o serie de standarde din industrie, unele documentații de reglementare și experiență personală. Articolul este destinat în primul rând integratorilor și dezvoltatorilor care încă nu au înțeles acest proiect.

DataMatrix sau cum să etichetați corect pantofii

Vă rugăm să rețineți că reglementările se modifică frecvent și nu este posibil ca autorul să actualizeze continuu materialul. Prin urmare, în momentul în care îl citiți, este posibil ca unele informații să fie deja depășite.

Autorul a câștigat experiență personală atât ca parte a lucrării la proiectul Datamatrix din Lamoda, cât și în dezvoltarea propriei aplicații gratuite de etichetare BarCodesFx.

De la 1 iulie 2019, în Rusia intră în vigoare o lege privind etichetarea obligatorie. Legea nu se aplică tuturor grupelor de mărfuri, iar datele de intrare în vigoare a etichetării obligatorii pentru grupele de produse variază. În prezent, tutunul, hainele de blană, pantofii și medicamentele sunt supuse etichetării obligatorii. Va fi introdus în curând pentru anvelope, îmbrăcăminte, parfumuri și biciclete. Fiecare grup de bunuri este reglementat de o rezoluție guvernamentală separată (GPR). Prin urmare, unele afirmații care sunt adevărate pentru pantofi pot să nu fie adevărate pentru alte grupuri de produse. Dar putem spera că componenta tehnică nu va varia foarte mult pentru diferite grupuri de produse.

marcareIdeea principală a etichetării este că fiecărei unități de mărfuri i se atribuie un număr individual. Folosind acest număr, puteți urmări istoricul unui anumit articol de marfă din momentul producției sau importului în țară, până în momentul eliminării la casă. Sună frumos, dar în practică este extrem de dificil de implementat Conceptul este descris mai detaliat pe site-ul oficial al semnului onest.

Termeni și concepte comune

UOT - participant la circulatia marfurilor.
CRPT — centru pentru dezvoltarea tehnologiilor promițătoare. Companie privată, singurul stat antreprenor pentru proiectul de marcare. Funcționează în cadrul unei scheme de parteneriat public-privat (PPP). Din păcate, nu există informații despre alți participanți la licitația pentru proiect, precum și despre licitația în sine.
TG - grupa de produse. Pantofi, îmbrăcăminte, anvelope etc.
GTIN - in esenta, un articol tinand cont de culoare si marime. Eliberat în GS1 sau catalogul național pentru fiecare importator sau producător pentru produsul său. Producătorul sau importatorul trebuie mai întâi să descrie produsul.
PPR - Decretul Guvernului Federației Ruse. Pentru pantofi - 860.
KM — codul de marcare. Un set unic de caractere atribuite unui anumit articol de produs. Pentru pantofi, acesta constă dintr-un GTIN, număr de serie, cod de verificare și cripto-tail.
GS1 este o organizație internațională care emite GTIN-uri. Ei sunt, de asemenea, compilatorii unui număr de standarde de etichetare.
Catalog national - un analog al GS1, dezvoltat de CRPT.
Cryptotail - un analog al unei semnături digitale care confirmă legalitatea CM. Trebuie să fie în matricea de date de pe ștampilă. Stocarea sub formă de text este interzisă. După tipărire, ștampilele trebuie îndepărtate în conformitate cu acordul cu CRPT. Nu există cazuri cunoscute de utilizare reală.
CPS — stație de gestionare a comenzilor. Sistemul în care sunt comandate KM-urile pentru mărfuri.
EDO - gestionarea documentelor electronice.
UKEP — semnătură electronică calificată îmbunătățită.

Termeni și concepte din domeniul de aplicare al acestui articol

ЧЗ - un semn cinstit.
ЛК - Zona personală.
Marcați — cod de marcare imprimat.

Procesul este următorul: mai întâi, participantul (UOT) emite o semnătură electronică (UKEP), se înregistrează într-o marcă sinceră (CH), descrie produsul în catalogul național sau GS1 și primește GTIN-uri pentru produs. Acești pași sunt descriși în detaliu pe site-ul web onest sign, așa că nu ne vom opri asupra lor.

Comandarea si primirea codurilor

După primirea GTIN-urilor, participantul (UOT) plasează o comandă de coduri (KM) în sistemul CPS.
Important, dar nu evident.

  1. Puteți solicita coduri pentru maximum 10 GTIN-uri într-o singură comandă. În principiu, o limitare de neînțeles. Un importator cu 14 de GTIN-uri trebuie să creeze 000 de comenzi.
  2. Pot fi solicitate maxim 150 de coduri per comandă.
  3. Există o limită de 100 de comenzi în curs. Adică nu pot fi procesate mai mult de 100 de comenzi în același timp. Dacă sunt mai mult de 100, API-ul va începe să returneze o eroare în loc de o listă de comenzi. Singura modalitate de a remedia această eroare este închiderea unor comenzi prin interfața web. API-ul nu oferă un parametru pentru afișarea parțială a comenzilor.
  4. Există o limită a numărului de solicitări - nu mai mult de 10 solicitări pe secundă. Din informațiile mele, această restricție nu apare în documente, dar există.

Din experiența personală de lucru cu comenzi de coduri de marcare KM prin API-ul sistemului CPS.

  1. Solicitarea (json-ul în sine) trebuie să fie semnată cu o semnătură GOST. Acest lucru funcționează cu cryptopro. Trebuie să vă asigurați cu atenție că cadrul sau biblioteca utilizată nu schimbă jsonul original nici măcar cu un octet. În caz contrar, semnătura își încetează imediat valabilitatea.
  2. Semnătura comenzii. Comanda poate fi semnată prin orice semnătură a oricărui client. Dacă semnătura este validă, sistemul CPS o va accepta. În timpul integrării, a fost posibilă semnarea cererii cu semnătura altcuiva emisă la CA de testare. Circuitul de luptă al sistemului de control a procesat comanda și a emis coduri. În opinia mea, aceasta este o gaură de securitate. Dezvoltatorii au răspuns la raportul de eroare cu „vom vedea”. Sper sa fie reparat.

    Prin urmare, fiți extrem de atenți dacă mai multe persoane juridice lucrează la un loc de muncă. chipuri. Astăzi CPS va accepta aceste solicitări, iar mâine cererile vor fi verificate din nou și jumătate din coduri vor fi revocate din cauza semnăturii altcuiva. Și, în principiu, formal vor avea dreptate.

  3. Semnarea automată a comenzilor este o funcționalitate care nu mai este disponibilă în KMS. Pentru ca acesta să funcționeze, a fost necesar să încărcați partea privată a cheii în contul personal al semnului onest. Acesta este un compromis al cheii. Și conform legislației în vigoare, în cazul unui compromis al unei semnături electronice calificate îmbunătățite, proprietarul trebuie să își informeze centrul de certificare (CA) și să revoce ECEP. Dacă această funcționalitate este returnată, aveți grijă să vă asigurați că partea privată a cheii nu părăsește computerul.
  4. În februarie, Centrul pentru Dezvoltarea Tehnologiilor Avansate (CRPT) a introdus în tăcere o limită a numărului de solicitări către API-ul CPS. Nu mai mult de o cerere pe secundă. Apoi, la fel de neașteptat și tăcut, a ridicat această restricție. Prin urmare, recomand ca sistemul să fie integrat în capacitatea de a limita numărul de solicitări către API-ul CRPT în caz de recidivă. Acum există informații despre o limită de 10 solicitări pe secundă.
  5. Tot în februarie, comportamentul API-ului CPS s-a schimbat semnificativ fără avertisment. API-ul are o solicitare pentru a obține starea comenzilor. Starea a indicat tampoanele și starea acestora. Un GTIN = un buffer. De asemenea, a indicat câte coduri erau disponibile pentru a primi din buffer. Într-o bună zi, numărul tuturor tampoanelor a devenit -1. A trebuit să folosesc o metodă separată pentru a interoga starea fiecărui buffer separat. În loc de o singură cerere, a trebuit să fac unsprezece.

Structura codului

Deci, codurile au fost ordonate și generate. Ele pot fi obținute prin intermediul API-ului sub formă de text, în format pdf ca etichete pentru printare și ca fișier csv cu text.

API-ul a fost deja scris mai sus. Cât despre celelalte două metode. Inițial, sistemul de control vă permitea să colectați coduri o singură dată. Și dacă s-a luat un fișier pdf, atunci era posibil să se obțină codurile sub formă de text doar prin rescanarea tuturor matricelor de date din pdf. Din fericire, au adăugat posibilitatea de a colecta coduri de mai multe ori, iar această problemă a fost rezolvată. Codurile sunt încă disponibile pentru re-descărcare în două zile.

Dacă îl luați în format csv, atunci niciodată, sub nicio formă, nu îl deschideți în Excel. Și nu lăsa pe nimeni. Excel are o funcție de salvare automată. În momentul salvării, Excel vă poate modifica codurile în cele mai imprevizibile moduri. Recomand să utilizați notepad++ pentru a vizualiza codurile.

Dacă deschideți un fișier din CMS în notepad++, puteți vedea linii ca aceasta. Al treilea cod este invalid (nu are delimitatori GS).

DataMatrix sau cum să etichetați corect pantofii

Partenerii noștri ne-au dat coduri pentru a-și eticheta produsele. Ochiul liber poate vedea ce fișiere au fost generate folosind Excel - până la 5% dintre coduri erau invalide.

Recomand cu căldură să citiți despre standarde GS1. Descrierea standardului conține răspunsuri la multe întrebări referitoare la formarea DataMatrix.

Codul de identificare constă dintr-un GTIN și un număr de serie. Conform standardului GS1, acestea corespund identificatorilor de aplicație (AI) 01 și 21. Vă rugăm să rețineți că identificatorii de aplicație nu fac parte din GTIN și din numărul de serie. Acestea indică faptul că identificatorul aplicației (UI) este urmat de un GTIN sau de un număr de serie. Acest lucru este deosebit de important atunci când programați software-ul de casă de marcat. Pentru a completa eticheta 1162, aveți nevoie doar de GTIN și numărul de serie, fără identificatorii aplicației.

Pentru UTD (document de transfer universal) și alte documente, dimpotrivă, cel mai adesea aveți nevoie de întreaga înregistrare cu identificatori de aplicație.

DataMatrix sau cum să etichetați corect pantofii

Standardul GS1 prevede că GTIN-ul are o lungime fixă ​​de 14 caractere și poate consta numai din numere. Numărul de serie are o lungime variabilă și este descris la pagina 155 din standard. Există, de asemenea, un link către un tabel cu simboluri care pot apărea în numărul de serie.

Deoarece numărul de serie are o lungime variabilă, separatorul GS indică sfârșitul numărului de serie. În tabelul ASCII are codul 29. Fără acest separator, niciun program nu va înțelege în ce moment sa încheiat numărul de serie și au început alte grupuri de date.

Mai multe detalii despre codul de marcare (KM) pot fi găsite în documentație oficială.

Pentru pantofi, numărul de serie este fixat la 13 caractere, cu toate acestea, dimensiunea acestuia poate fi schimbată oricând. Pentru alte grupuri de produse (TG), lungimea numărului de serie poate diferi.

Generarea DataMatrix

DataMatrix sau cum să etichetați corect pantofii

Următorul pas este convertirea datelor în cod DataMatrix. Decretul Guvernului Rusiei 860 specifică GOST, conform căruia este necesar să se creeze un DataMatrix. De asemenea, PPR 860 specifică utilizarea obligatorie a identificatorilor aplicației. Vă rugăm să rețineți că standardul DataMatrix nu are conceptul de „identificatori de aplicație”. Sunt disponibile numai în standardul GS-1 DataMatrix. Rezultă că PPR 860 obligă implicit utilizarea GS-1 DataMatrix. Din fericire, standardele sunt similare. Diferența cheie: în GS-1 DataMatrix, primul caracter trebuie să fie FNC1. Simbolul GS nu ar trebui să apară primul în DataMatrix, ci doar FNC1.

FNC1 nu poate fi adăugat la linie ca GS. Acesta trebuie adăugat de către programul care generează DataMatrix. Sunt mai multe postate pe resursele Alliance Forts aplicatii mobile, cu care puteți verifica corectitudinea codurilor DataMatrix generate.

Important. Aplicația de semnă onest acceptă un DataMatrix nevalid. Chiar și coduri QR. Faptul că marca a fost recunoscută și informațiile despre produs au fost afișate nu indică faptul că DataMatrix este format corect. Chiar și atunci când cripto-tailul a fost înlocuit, aplicația ChZ a recunoscut marca și a afișat date pe produs.

Mai târziu a fost lansat ChZ explicaţie, cum se generează corect codurile. Datorită numărului mare de coduri cu erori, au recunoscut codurile fără FNC1 ca fiind valide, dar totuși recomandă generarea unui GS-1 DataMatrix.

Din păcate, un procent destul de mare de matrice de date de la parteneri a venit cu erori. Datorită explicațiilor de la ChZ, întrebarea „Este posibil să tranzacționezi un astfel de produs după 1 iulie sau nu?”. Spoiler - poți.

imprimare

Acordați atenție modului în care sunt imprimate ștampilele. Când este imprimată pe o imprimantă termică, ștampila se estompează rapid și produsul nu mai poate fi vândut. O ștampilă care nu poate fi citită este o încălcare a PPR 860. Aceasta duce la confiscarea bunurilor, amenzi și răspundere penală.

Utilizați imprimarea prin transfer termic. În acest caz, marca nu este atât de susceptibilă de a se estompa. Materialul etichetei determină, de asemenea, cât de susceptibilă este marca la deteriorarea mecanică. Dacă codul nu poate fi citit din cauza deteriorării mecanice, aceasta echivalează cu absența unei mărci cu toate consecințele care decurg.

DataMatrix sau cum să etichetați corect pantofii

Selectați o imprimantă din volumele de imprimare planificate. Imprimantele de birou nu sunt proiectate pentru a imprima 100 de etichete pe zi.

Oprirea și pornirea imprimării crește uzura imprimantei. Unele programe trimit o lucrare de imprimare câte o etichetă. Este mai bine să nu folosiți astfel de programe.

Lucrați cu documente

După ce ștampilele sunt tipărite și lipite, toate tranzacțiile ulterioare cu acestea au loc prin documente sau contul personal al semnului onest.

Când lucrați cu un număr mare de coduri, puteți crea fișiere xml care conțin codurile necesare și puteți încărca aceste fișiere prin API-ul sau interfața web a contului dvs. personal.

Schema XSD poate fi descărcată în secțiunea „ajutor” a ChZ LC.

Vă rugăm să rețineți următoarele puncte.

  1. Schemele Xsd din LC ChZ conțin erori în validarea TIN și restricții privind lungimea liniei. Numai după corectarea erorilor puteți utiliza diagramele. Din fericire, greșelile sunt evidente, așa că nu este greu de făcut.
  2. Schema constă cel mai adesea din două părți - comune pentru toate tipurile de documente și separate pentru un anumit tip. Schema generală se adaugă prin import la cea specifică. Ambele diagrame sunt postate în secțiunea de ajutor a ChZ LC.
  3. Regulile de evadare pentru CM diferă de cele acceptate în general pentru XML, acest lucru este scris în documentația oficială de la ChZ, acordați atenție acestui lucru. Aici aici Toate regulile sunt la pagina 4.
  4. Nu ar trebui să încercați să introduceți 150 de coduri în circulație într-un singur fișier. Potrivit martorilor oculari, dosarele de peste 000 sunt de obicei trecute prin...
  5. Un fișier XML poate fi împachetat cu eroarea „eroare de validare xml”, iar cinci minute mai târziu, același fișier poate fi acceptat fără probleme.
  6. Dacă fișierul conține un cod care a fost deja pus în circulație, atunci cel mai probabil fișierul pus în circulație nu va fi acceptat.
  7. Documentele de expediere și primire sunt folosite ca soluție temporară. În viitor, intenționează să le elimine și să treacă la UPD în conformitate cu PPR 860.
  8. Mitul despre 60 de zile. Există o părere că codurile care nu sunt puse în circulație se „ard” după 60 de zile. Acesta este un mit, sursă necunoscută. Codurile expiră doar dacă nu le-ați colectat de la sistemul de control în termen de 60 de zile. Durata de viață a codurilor colectate este nelimitată.

Concluzie

Când am dezvoltat aplicația mea gratuită de etichetare BarCodesFX, sa făcut inițial integrarea cu API-ul CPS. Când un semn onest a schimbat în mod neașteptat logica API-ului pentru a doua oară, integrarea a trebuit să fie abandonată. Sper că în viitor ChZ va putea stabiliza dezvoltarea și API-ul, pentru că Pentru un produs necomercial, este foarte costisitor pentru mine să verific în fiecare zi dacă au existat modificări în API și să-l îmbunătățesc prompt.

Când implementați marcajele, citiți cu atenție documentația de reglementare pentru grupul dvs. de produse TG, tipăriți corect GS1-DataMatrix și fiți pregătit pentru orice modificări neprevăzute din partea mărcii oneste ChZ.

Fort Alliance a creat un spațiu de informare (вики, chat-uri în telegramă, seminarii, seminarii web), unde puteți găsi informații utile și relevante despre etichetare în toate industriile.

Sursa: www.habr.com

Adauga un comentariu