DataMatrix o com etiquetar correctament les sabates

Des de l'1 de juliol de 2019, a Rússia s'ha introduït l'etiquetatge obligatori d'un grup de productes. A partir de l'1 de març de 2020, les sabates havien de quedar sota aquesta llei. No tothom va tenir temps de preparar-se i, com a resultat, el llançament es va ajornar a l'1 de juliol. Lamoda és un dels que ho van aconseguir.

Per això, volem compartir la nostra experiència amb aquells que encara no han d'etiquetar roba, pneumàtics, perfums, etc. L'article descriu una sèrie d'estàndards de la indústria, una mica de documentació normativa i experiència personal. L'article està pensat principalment per a integradors i desenvolupadors que encara no han entès aquest projecte.

DataMatrix o com etiquetar correctament les sabates

Tingueu en compte que el marc normatiu canvia amb freqüència i que l'autor no té l'oportunitat d'actualitzar constantment el material. Per tant, en el moment de la lectura, és possible que part de la informació ja estigui obsoleta.

L'autor va adquirir experiència personal tant en el marc del projecte Datamatrix a Lamoda com en el desenvolupament de la seva pròpia aplicació gratuïta per marcar BarCodesFx.

Des de l'1 de juliol de 2019, a Rússia està en vigor una llei sobre etiquetatge obligatori. La llei no s'aplica a tots els grups de béns, i el moment de l'entrada en vigor de l'etiquetatge obligatori per als grups de productes varia. Ara el tabac, els abrics de pell, les sabates i els medicaments estan subjectes a l'etiquetatge obligatori. En un futur proper s'introduiran pneumàtics, roba, perfums i bicicletes. Cada grup de béns està regulat per un decret governamental separat (GPR). Per tant, algunes afirmacions que són correctes per a les sabates poden no ser certes per a altres grups de productes. Però podem esperar que el component tècnic no variarà molt per a diferents grups de productes.

MarcatgeLa idea principal de l'etiquetatge és que a cada unitat de mercaderies se li assigna un número individual. Amb aquest número, podeu fer un seguiment de l'historial d'un article concret de mercaderies des del moment de la producció o importació al país, fins al moment de l'eliminació a la caixa. Sembla bé, però a la pràctica és extremadament difícil d'implementar.El concepte es descriu amb més detall al lloc web oficial del signe honest.

Termes i conceptes comuns

UOT - Participant en la circulació de mercaderies.
CRPT és un centre per al desenvolupament de tecnologies avançades. Empresa privada, l'única estatal. marcatge del contractista del projecte. Funciona sota l'esquema de col·laboració públic-privada (PPP). Malauradament, no hi ha informació sobre els altres participants en la licitació del projecte, així com sobre la licitació en si.
ТГ - Grup de mercaderies. Calçat, roba, pneumàtics, etc.
GTIN - de fet, l'article, tenint en compte el color i la mida. Emès a GS1 o al catàleg nacional per a cada importador o fabricant del seu producte. El fabricant o importador primer ha de descriure aquest producte.
PPR - Decret del Govern de la Federació Russa. Per a sabates - 860.
КМ - codi de marcatge. Un conjunt únic de caràcters assignats a un element concret. Per a les sabates, consta de GTIN, número de sèrie, codi de verificació i cua criptogràfica.
GS1 és una organització internacional que emet GTIN. També compiladors d'una sèrie d'estàndards per a l'etiquetatge.
Catàleg nacional - anàleg de GS1, desenvolupat per CRPT.
Cryptotail - un analògic d'una signatura digital, que confirmi la legalitat del CM. Ha d'estar a la matriu de dades del segell. L'emmagatzematge en forma de text està prohibit. Després de la impressió, s'ha de retirar el segell d'acord amb l'acord amb el CRPT. No es coneixen casos d'ús reals.
CPS - Estació de gestió de comandes. El sistema en què es demanen els KM per a l'article.
EDO - Gestió de documents electrònics.
UKEP — Signatura electrònica qualificada millorada.

Termes i conceptes dins l'àmbit d'aquest article

ЧЗ - un signe honest.
D'acord - Àrea personal.
Feu - codi de marcatge imprès.

El procés és el següent: primer, el participant (UOT) emet una signatura electrònica (ECES), es registra en un signe honest (CHZ), descriu el producte al catàleg nacional o GS1 i rep els GTIN del producte. Al lloc web del signe honest, aquests passos es descriuen detalladament, de manera que no ens detenem en ells.

Comandament i recepció de codis

Després de rebre els GTIN, el participant (UOT) fa una comanda de codis (KM) al sistema CPS.
Important, però no evident.

  1. Podeu sol·licitar codis de fins a 10 GTIN per comanda. En principi, una limitació incomprensible. Un importador amb 14 GTIN ha de crear 000 comandes.
  2. Es poden sol·licitar un màxim de 150 codis en una comanda.
  3. Hi ha un límit de 100 comandes en treball. És a dir, no es poden processar més de 100 comandes al mateix temps. Si n'hi ha més de 100, l'API començarà a retornar un error en lloc d'una llista de comandes. L'única manera de solucionar aquest error és tancar algunes de les comandes a través de la interfície web. L'API no proporciona un paràmetre per mostrar parcialment les comandes.
  4. Hi ha un límit en el nombre de sol·licituds: no més de 10 sol·licituds per segon. Segons les meves dades, aquesta restricció no apareix als documents, però existeix.

Des de l'experiència personal amb comandes de codis de marcatge KM a través de l'API CMS.

  1. La sol·licitud (el mateix json) s'ha de signar amb una signatura GOST. Això és treballar amb cryptopro. Hem de controlar acuradament que el marc o la biblioteca utilitzada no canviï el json original per a un sol byte. En cas contrari, la signatura deixa de ser vàlida immediatament.
  2. Signatura de la comanda. La comanda es pot signar amb qualsevol signatura de qualsevol client. Si la signatura és vàlida, el sistema KMS l'acceptarà. Durant la integració, va ser possible signar la sol·licitud amb la signatura d'una altra persona emesa a la prova CA. El circuit de combat del CPS va processar l'ordre i va publicar els codis. Al meu entendre, això és un forat de seguretat. Els desenvolupadors van reaccionar a l'informe d'error "ja veurem". Espero que s'hagi arreglat.

    Per tant, tingueu molta cura si més d'una entitat jurídica treballa en un mateix lloc de treball. cares. Avui, el CPS acceptarà aquestes sol·licituds, i demà es tornaran a comprovar les peticions i es retiraran la meitat dels codis per signatura d'una altra persona. I en principi, formalment tindran raó.

  3. La signatura automàtica de comandes és una funcionalitat que ja no està disponible al CMS. Per al seu funcionament, calia carregar la part privada de la clau al compte personal del signe honest. Aquest és un compromís clau. I d'acord amb la legislació vigent, en cas de compromís d'una signatura electrònica qualificada millorada, el titular ha d'informar al seu centre de certificació (CA) i revocar l'UKES. Si es torna aquesta funcionalitat, assegureu-vos acuradament que la part privada de la clau no surti de l'ordinador.
  4. Al febrer, el Centre per al Desenvolupament de Tecnologies Avançades (CRPT) va introduir silenciosament un límit en el nombre de sol·licituds a l'API KMS. No més d'una sol·licitud per segon. Aleshores, de manera tan inesperada i silenciosa, va aixecar aquesta restricció. Per tant, recomano posar al sistema la possibilitat de limitar el nombre de sol·licituds a l'API CRPT en cas de recaiguda. Ara hi ha informació sobre el límit de 10 sol·licituds per segon.
  5. També al febrer, el comportament de l'API KMS va canviar significativament sense previ avís. L'API té una sol·licitud per obtenir l'estat de les comandes. L'estat indicava els buffers i el seu estat. Un GTIN = un buffer. També va indicar quants codis hi ha disponibles per rebre del buffer. Un bon dia, tots els buffers tenien un recompte de -1. Vaig haver de consultar l'estat de cada buffer per separat mitjançant un mètode independent. En lloc d'una sol·licitud, vaig haver de fer onze.

Estructura dels codis

Així, els codis s'ordenen i es generen. Es poden recollir mitjançant API en forma de text, en pdf com a etiquetes per imprimir i com a fitxer csv amb text.

L'API ja s'ha escrit més amunt. Pel que fa a les altres dues vies. Inicialment, el CPS us permetia recollir els codis només una vegada. I si es va agafar un fitxer pdf, només era possible obtenir els codis en forma de text tornant a escanejar totes les matrius de dades del pdf. Afortunadament, van afegir la possibilitat de recollir codis diverses vegades i aquest problema es va resoldre. En dos dies, els codis encara estan disponibles per tornar-los a baixar.

Si recolliu en format csv, mai, sota cap circumstància, l'obriu en excel. I no deixis que ningú. Excel té una funció de desat automàtic. En el moment de desar, Excel pot modificar els vostres codis de la manera més imprevisible. Recomano utilitzar el bloc de notes ++ per veure els codis.

Si obriu un fitxer des del CMS al bloc de notes ++, podreu veure línies com aquesta. El tercer codi no és vàlid (no té delimitadors GS).

DataMatrix o com etiquetar correctament les sabates

Els socis ens van donar codis per marcar els seus productes. A simple vista, podeu veure quins fitxers es van generar amb Excel: fins a un 5% dels codis no eren vàlids.

Recomano molt llegir sobre estàndards GS1. La descripció de l'estàndard conté respostes a moltes preguntes sobre la formació de DataMatrix.

El codi d'identificació consta del GTIN i el número de sèrie. Segons l'estàndard GS1, corresponen als identificadors d'aplicació (UI) 01 i 21. Tingueu en compte que els identificadors de l'aplicació no formen part del GTIN ni del número de sèrie. Indiquen que l'identificador d'aplicació (UI) va seguit del GTIN o número de sèrie. Això és especialment important quan es programa el programari POS. Per omplir l'etiqueta 1162, necessiteu exactament el GTIN i el número de sèrie, sense els identificadors de l'aplicació.

Per a l'UTD (document de transferència universal) i altres documents, per contra, sovint es necessita un registre complet amb els identificadors de l'aplicació.

DataMatrix o com etiquetar correctament les sabates

L'estàndard GS1 estableix que el GTIN té una longitud fixa de 14 caràcters i només pot constar de números. El número de sèrie és de longitud variable i es descriu a la pàgina 155 de la norma. També hi ha un enllaç a una taula amb símbols que es poden trobar al número de sèrie.

Com que el número de sèrie té una longitud variable, el separador GS indica el seu final. A la taula ASCII, té el codi 29. Sense aquest separador, cap programa entendrà en quin moment va acabar el número de sèrie i van començar altres grups de dades.

Podeu trobar més detalls sobre el codi de marcatge (KM) a documentació oficial.

Per a les sabates, el número de sèrie es fixa en 13 caràcters, però la seva mida es pot canviar en qualsevol moment. Per a altres grups de productes (TG), la longitud del número de sèrie pot variar.

Generació de DataMatrix

DataMatrix o com etiquetar correctament les sabates

El següent pas és convertir les dades en codi DataMatrix. El decret governamental de la Federació Russa 860 especifica GOST, segons el qual és necessari formar una DataMatrix. A més, el PPR 860 especifica l'ús obligatori dels identificadors d'aplicació. Tingueu en compte que no hi ha cap concepte d'"identificadors d'aplicació" a l'estàndard DataMatrix. Només es troben a l'estàndard GS-1 DataMatrix. Resulta que PPR 860 requereix implícitament l'ús de GS-1 DataMatrix. Afortunadament, els estàndards són similars. Diferència principal: a GS-1 DataMatrix, el primer caràcter ha de ser FNC1. El símbol GS no ha de ser primer a DataMatrix, només FNC1.

FNC1 no es pot prendre simplement i afegir a la línia com a GS. L'ha d'afegir el programa que genera el DataMatrix. Diversos aplicacions mòbils, amb la qual podeu comprovar la correcció dels codis DataMatrix generats.

És important. L'aplicació de signe honest accepta DataMatrix no vàlid. Fins i tot codis QR. El fet que la marca sigui reconeguda i es mostri la informació del producte no vol dir que el DataMatrix estigui format correctament. Fins i tot quan es va substituir la cua criptogràfica, l'aplicació CZ va reconèixer la marca i va mostrar les dades del producte.

Més tard es va llançar CZ explicaciócom generar codis correctament. A causa del gran nombre de codis d'error, van reconèixer els codis sense FNC1 com a vàlids, però, tanmateix, recomanen generar un DataMatrix GS-1.

Malauradament, un percentatge força gran de matrius de dades dels socis va presentar errors. Gràcies a les aclariments de CZ, la pregunta "És possible comercialitzar aquest producte després de l'1 de juliol o no?" es va resoldre completament. Spoiler: pots.

Imprimir

Preste atenció a la manera com s'imprimeixen els segells. Quan s'imprimeix en una impressora tèrmica, el segell s'esvaeix ràpidament i aquest producte ja no es pot vendre. Un segell il·legible és una violació del PPR 860. La qual cosa comporta la confiscació de béns, multes i responsabilitat penal.

Utilitzeu la impressió per transferència tèrmica. En aquest cas, el segell no és tant propens a esvair-se. El material de l'etiqueta també determina fins a quin punt la marca és susceptible a danys mecànics. Si el codi no és llegible a causa d'un dany mecànic, això equival a l'absència d'una marca amb totes les conseqüències que se'n deriven.

DataMatrix o com etiquetar correctament les sabates

Trieu una impressora entre els volums d'impressió planificats. Les impressores d'escriptori no estan dissenyades per imprimir 100 etiquetes al dia.

Aturar i iniciar la impressió augmenta el desgast de la impressora. Alguns programes envien el treball d'impressió una etiqueta a la vegada. És millor no utilitzar aquests programes.

Treballar amb documents

Després d'imprimir i enganxar els segells, totes les operacions posteriors amb ells es realitzen mitjançant documents o un compte personal d'una marca honesta.

Quan treballeu amb un gran nombre de codis, podeu crear fitxers xml que continguin els codis necessaris i penjar aquests fitxers mitjançant l'API o la interfície web del vostre compte personal.

L'esquema XSD es pot descarregar a la secció "ajuda" del LC CZ.

Preste atenció als punts següents.

  1. Els esquemes Xsd de la LC CZ contenen errors en la validació del TIN i restriccions a la longitud de la línia. Només corregint errors, podeu utilitzar els esquemes. Afortunadament, els errors són evidents, així que això no és difícil de fer.
  2. L'esquema sovint consta de dues parts: comuns per a tot tipus de documents i separades per a un tipus específic. L'esquema general s'afegeix mitjançant importació a l'específic. Tots dos esquemes es troben a la secció d'ajuda del LC ChZ.
  3. Les regles d'escapament per a CM difereixen de les generalment acceptades per a XML, això està escrit a la documentació oficial de CZ, pareu-hi. Aquí aquí a la pàgina 4 totes les normes.
  4. No intenteu introduir 150 codis en circulació en un fitxer. Segons testimonis presencials, solen passar més de 000 fitxers.
  5. Un fitxer XML es pot embolicar amb un error "error de validació xml" i cinc minuts més tard s'accepta el mateix fitxer sense problemes.
  6. Si el fitxer conté un codi que ja s'ha posat en circulació, probablement no s'acceptarà el fitxer posat en circulació.
  7. Els documents d'enviament i recepció s'utilitzen com a solució temporal. En el futur, tenen previst suprimir-los i passar a UPD d'acord amb el PPR 860.
  8. Mite d'uns 60 dies. Hi ha l'opinió que els codis que no es posen en circulació "esgoten" després de 60 dies. Aquest és un mite, font desconeguda. Els codis només "esgoten" si no els heu recollit al CPS en un termini de 60 dies. La vida útil dels codis recollits no està limitada.

Conclusió

En desenvolupar la meva aplicació d'etiquetatge gratuïta BarCodesFX, inicialment es va fer la integració amb l'API KMS. Quan un signe honest per segona vegada va canviar inesperadament la lògica de l'API, es va haver d'abandonar la integració. Espero que en el futur la CZ pugui estabilitzar el desenvolupament i l'API, perquè. per a un producte no comercial, em costa molt comprovar cada dia si hi ha hagut canvis a l'API i perfeccionar-lo ràpidament.

Quan implementeu el marcatge, llegiu atentament la documentació normativa del vostre grup de productes TG, imprimiu correctament el GS1-DataMatrix i estigueu preparat per a qualsevol canvi imprevist de la marca CZ justa.

La Fort Alliance ha creat un espai d'informació (wiki, xats telegrama, seminaris, seminaris web), on podeu trobar informació útil i actualitzada sobre l'etiquetatge en tots els sectors.

Font: www.habr.com

Afegeix comentari