DataMatrix o come etichettare correttamente le scarpe

Dal 1 luglio 2019 in Russia è stata introdotta l'etichettatura obbligatoria di un gruppo di merci. Dal 1 marzo 2020, le scarpe dovevano rientrare in questa legge. Non tutti hanno avuto il tempo di prepararsi e, di conseguenza, il lancio è stato posticipato al 1 luglio. Lamoda è tra quelli che ci sono riusciti.

Pertanto, vogliamo condividere la nostra esperienza con coloro che devono ancora etichettare vestiti, pneumatici, profumi, ecc. L'articolo descrive una serie di standard del settore, alcuni documenti normativi ed esperienze personali. L'articolo è destinato principalmente agli integratori e agli sviluppatori che devono ancora comprendere questo progetto.

DataMatrix o come etichettare correttamente le scarpe

Si noti che il quadro normativo cambia frequentemente e l'autore non ha l'opportunità di aggiornare costantemente il materiale. Pertanto, al momento della lettura, alcune informazioni potrebbero essere già obsolete.

L'autore ha acquisito esperienza personale sia nell'ambito del progetto Datamatrix in Lamoda sia nello sviluppo della propria applicazione gratuita per la marcatura BarCodesFx.

Dal 1° luglio 2019 in Russia è in vigore una legge sull'etichettatura obbligatoria. La legge non si applica a tutti i gruppi di merci e la tempistica dell'entrata in vigore dell'etichettatura obbligatoria per i gruppi di prodotti varia. Ora tabacco, pellicce, scarpe, medicinali sono soggetti a etichettatura obbligatoria. Nel prossimo futuro verranno introdotti pneumatici, abbigliamento, profumi e biciclette. Ogni gruppo di merci è regolato da un decreto governativo separato (GPR). Pertanto, alcune affermazioni corrette per le scarpe potrebbero non essere vere per altri gruppi di prodotti. Ma possiamo sperare che la componente tecnica non varierà molto per i diversi gruppi di prodotti.

marcaturaL'idea principale dell'etichettatura è che a ciascuna unità di merce viene assegnato un numero individuale. Con questo numero è possibile tracciare la storia di un particolare articolo di merce dal momento della produzione o importazione nel Paese, fino al momento dello smaltimento alla cassa. Sembra carino, ma in pratica è estremamente difficile da implementare.Il concetto è descritto in modo più dettagliato sul sito ufficiale del segno onesto.

Termini e concetti comuni

UOT - partecipante alla circolazione delle merci.
TSRPT è un centro per lo sviluppo di tecnologie avanzate. Società privata, l'unico stato. appaltatore del progetto di marcatura. Opera nell'ambito del regime di partenariato pubblico privato (PPP). Sfortunatamente, non ci sono informazioni su altri offerenti per il progetto, così come sulla gara stessa.
TG - gruppo merceologico. Scarpe, abbigliamento, pneumatici, ecc.
GTIN - infatti, l'articolo, tenendo conto del colore e della taglia. Rilasciato in GS1 o nel catalogo nazionale per ogni importatore o produttore per il suo prodotto. Il produttore o l'importatore deve prima descrivere questo prodotto.
PPR - Decreto del governo della Federazione Russa. Per le scarpe - 860.
KM - codice di marcatura. Un set univoco di caratteri assegnato a un particolare elemento. Per le scarpe, è composto da GTIN, numero di serie, codice di verifica e crypto tail.
GS1 è un'organizzazione internazionale che emette GTIN. Anche compilatori di una serie di standard per l'etichettatura.
Catalogo nazionale - analogo di GS1, sviluppato da CRPT.
cryptotail - un analogo di una firma digitale, a conferma della legalità del CM. Deve essere nel datamatrix sul timbro. La memorizzazione in forma di testo è vietata. Dopo la stampa, il timbro deve essere rimosso in conformità con l'accordo con il CRPT. Non sono noti casi d'uso effettivi.
CPS - stazione di gestione degli ordini. Il sistema in cui vengono ordinati i KM per l'articolo.
EDI - gestione elettronica dei documenti.
UKEP — firma elettronica qualificata avanzata.

Termini e concetti nell'ambito di questo articolo

ЧЗ - un segno onesto.
LK - Area personale.
Mark - codice di marcatura stampato.

Il processo è il seguente: in primo luogo, il partecipante (UOT) emette una firma elettronica (ECES), si registra in un segno onesto (CHZ), descrive il prodotto nel catalogo nazionale o GS1 e riceve i GTIN per il prodotto. Sul sito web del segno onesto, questi passaggi sono descritti in dettaglio, quindi non ci soffermeremo su di essi.

Ordinare e ricevere codici

Dopo aver ricevuto i GTIN, il partecipante (UOT) effettua un ordine per i codici (KM) nel sistema CPS.
Importante, ma non scontato.

  1. Puoi richiedere codici per un massimo di 10 GTIN per ordine. In linea di principio, una limitazione incomprensibile. Un importatore con 14 GTIN deve creare 000 ordini.
  2. È possibile richiedere un massimo di 150 codici in un ordine.
  3. C'è un limite di 100 ordini in lavorazione. Ciò significa che non è possibile elaborare più di 100 ordini contemporaneamente. Se ce ne sono più di 100, l'API inizierà a restituire un errore anziché un elenco di ordini. L'unico modo per correggere questo errore è chiudere alcuni degli ordini tramite l'interfaccia web. L'API non fornisce un parametro per visualizzare parzialmente gli ordini.
  4. C'è un limite al numero di richieste: non più di 10 richieste al secondo. Secondo i miei dati, questa restrizione non compare nei documenti, ma esiste.

Dall'esperienza personale con gli ordini per i codici di marcatura KM tramite l'API CMS.

  1. La richiesta (json stessa) deve essere firmata con una firma GOST. Questo è lavorare con cryptopro. Dobbiamo monitorare attentamente che il framework o la libreria utilizzata non modifichi il json originale per un singolo byte. In caso contrario, la firma perde immediatamente validità.
  2. Firma dell'ordine. L'ordine può essere firmato da qualsiasi firma di qualsiasi cliente. Se la firma è valida, il sistema KMS la accetterà. Durante l'integrazione è stato possibile sottoscrivere la richiesta con la firma di qualcun altro rilasciata sulla CA di prova. Il circuito di combattimento del CPS ha elaborato l'ordine e rilasciato i codici. Secondo me, questa è una falla di sicurezza. Gli sviluppatori hanno reagito alla segnalazione di bug "vedremo". Spero che sia stato risolto.

    Pertanto, fai molta attenzione se più di una persona giuridica lavora in un posto di lavoro. facce. Oggi il CPS accetterà queste richieste e domani le richieste verranno ricontrollate e metà dei codici verrà ritirata a causa della firma di qualcun altro. E in linea di principio, formalmente avranno ragione.

  3. La firma automatica degli ordini è una funzionalità non più disponibile nel CMS. Per il suo funzionamento era necessario caricare la parte privata della chiave nell'account personale del segno onesto. Questo è un compromesso chiave. E secondo la normativa vigente, in caso di compromissione di una firma elettronica qualificata avanzata, il titolare deve informare il proprio centro di certificazione (CA) e revocare l'UKES. Se questa funzionalità viene restituita, assicurati attentamente che la parte privata della chiave non lasci il computer.
  4. A febbraio, il Center for the Development of Advanced Technologies (CRPT) ha introdotto silenziosamente un limite al numero di richieste all'API KMS. Non più di una richiesta al secondo. Quindi, altrettanto inaspettatamente e silenziosamente, ha revocato questa restrizione. Pertanto, consiglio di inserire nel sistema la possibilità di limitare il numero di richieste all'API CRPT in caso di ricaduta. Ora ci sono informazioni sul limite di 10 richieste al secondo.
  5. Sempre a febbraio, senza preavviso, il comportamento dell'API KMS è cambiato in modo significativo. L'API ha una richiesta per ottenere lo stato degli ordini. Lo stato indicava i buffer e il loro stato. Un GTIN = un buffer. Indicava anche quanti codici sono disponibili per ricevere dal buffer. Un bel giorno, tutti i buffer avevano un conteggio di -1. Ho dovuto interrogare separatamente lo stato di ciascun buffer tramite un metodo separato. Invece di una richiesta, ho dovuto farne undici.

Struttura dei codici

Quindi, i codici vengono ordinati e generati. Possono essere prelevati tramite api in formato testo, in pdf come etichette per la stampa e come file csv con testo.

L'API è già stata scritta sopra. Per quanto riguarda gli altri due modi. Inizialmente, il CPS ti permetteva di ritirare i codici solo una volta. E se veniva prelevato un file pdf, era possibile ottenere i codici in formato testo solo riscansionando tutti i datamatrice dal pdf. Fortunatamente, hanno aggiunto più volte la possibilità di raccogliere i codici e questo problema è stato risolto. Entro due giorni, i codici sono ancora disponibili per essere nuovamente scaricati.

Se raccogli in formato csv, non aprirlo mai, in nessuna circostanza, in excel. E non permettere a nessuno. Excel ha una funzione di salvataggio automatico. Al momento del salvataggio, Excel può modificare i tuoi codici nel modo più imprevedibile. Consiglio di utilizzare notepad ++ per visualizzare i codici.

Se apri un file dal CMS in Notepad ++, puoi vedere righe come questa. Il terzo codice non è valido (non ha delimitatori GS).

DataMatrix o come etichettare correttamente le scarpe

I partner ci hanno fornito i codici per contrassegnare le loro merci. Ad occhio nudo, puoi vedere quali file sono stati generati utilizzando Excel: fino al 5% dei codici non erano validi.

Consiglio vivamente di leggere su standard GS1. La descrizione dello standard contiene le risposte a molte domande sulla formazione di DataMatrix.

Il codice identificativo è composto dal GTIN e dal numero di serie. Secondo lo standard GS1, corrispondono agli identificatori dell'applicazione (UI) 01 e 21. Si prega di notare che gli identificatori dell'applicazione non fanno parte del GTIN e del numero di serie. Indicano che l'identificatore dell'applicazione (UI) è seguito dal GTIN o dal numero di serie. Ciò è particolarmente importante durante la programmazione del software POS. Per compilare il tag 1162, è necessario esattamente il GTIN e il numero di serie, senza identificatori dell'applicazione.

Per UTD (documento di trasferimento universale) e altri documenti, invece, molto spesso è necessario un record completo con gli identificatori dell'applicazione.

DataMatrix o come etichettare correttamente le scarpe

Lo standard GS1 afferma che il GTIN ha una lunghezza fissa di 14 caratteri e può essere composto solo da numeri. Il numero di serie è di lunghezza variabile ed è descritto a pagina 155 dello standard. C'è anche un collegamento a una tabella con simboli che possono essere trovati nel numero di serie.

Poiché il numero seriale ha una lunghezza variabile, il separatore GS ne indica la fine. Nella tabella ASCII ha il codice 29. Senza questo separatore, nessun programma capirà a che punto è finito il numero seriale e sono iniziati altri gruppi di dati.

Maggiori dettagli sul codice di marcatura (KM) sono disponibili in documentazione ufficiale.

Per le scarpe, il numero di serie è fisso a 13 caratteri, tuttavia la sua taglia può essere modificata in qualsiasi momento. Per altri gruppi di prodotti (TG), la lunghezza del numero di serie può variare.

Generazione di DataMatrix

DataMatrix o come etichettare correttamente le scarpe

Il passaggio successivo consiste nel convertire i dati in codice DataMatrix. Il decreto del governo della Federazione Russa 860 specifica GOST, secondo il quale è necessario formare un DataMatrix. Inoltre, PPR 860 specifica l'uso obbligatorio degli identificatori di applicazione. Si noti che non esiste il concetto di "identificatori di applicazione" nello standard DataMatrix. Sono solo nello standard GS-1 DataMatrix. Si scopre che PPR 860 richiede implicitamente l'uso di GS-1 DataMatrix. Fortunatamente, gli standard sono simili. Differenza principale: in GS-1 DataMatrix, il primo carattere deve essere FNC1. Il simbolo GS non deve venire prima nel DataMatrix, solo FNC1.

FNC1 non può essere semplicemente preso e aggiunto alla linea come GS. Deve essere aggiunto dal programma che genera il DataMatrix. Parecchi applicazioni mobili, con il quale è possibile verificare la correttezza dei codici DataMatrix generati.

Importante. L'applicazione di segno onesto accetta DataMatrix non valido. Anche i codici QR. Il fatto che il marchio sia riconosciuto e le informazioni sul prodotto siano visualizzate non significa che il DataMatrix sia formato correttamente. Anche quando la cripto-coda è stata sostituita, l'applicazione CZ ha riconosciuto il marchio e ha visualizzato i dati sul prodotto.

Più tardi CZ rilasciato spiegazionecome generare correttamente i codici. A causa dell'elevato numero di codici di errore, hanno riconosciuto come validi i codici senza FNC1, ma, tuttavia, raccomandano di generare un DataMatrix GS-1.

Sfortunatamente, una percentuale abbastanza ampia di datamatrici dei partner è arrivata con errori. Grazie ai chiarimenti di CZ, la domanda "È possibile scambiare un prodotto del genere dopo il 1 luglio o no?" è stata completamente risolta. Spoiler: puoi.

stampa

Prestare attenzione al modo in cui vengono stampati i francobolli. Quando viene stampato su una stampante termica, il timbro svanisce rapidamente e questo prodotto non può più essere venduto. Un timbro illeggibile è una violazione del PPR 860. Il che porta al sequestro di beni, multe e responsabilità penale.

Utilizzare la stampa a trasferimento termico. In questo caso, il francobollo non è così incline allo sbiadimento. Il materiale dell'etichetta determina anche la suscettibilità del marchio ai danni meccanici. Se il codice non è leggibile a causa di un danno meccanico, ciò equivale all'assenza di un marchio con tutte le conseguenze che ne derivano.

DataMatrix o come etichettare correttamente le scarpe

Scegli una stampante tra i volumi di stampa pianificati. Le stampanti desktop non sono progettate per stampare 100 etichette al giorno.

L'arresto e l'avvio della stampa aumentano l'usura della stampante. Alcuni programmi inviano il processo di stampa un'etichetta alla volta. È meglio non usare tali programmi.

Lavora con i documenti

Dopo che i francobolli sono stati stampati e incollati, tutte le ulteriori operazioni con essi avvengono tramite documenti o un resoconto personale di un marchio onesto.

Quando si lavora con un numero elevato di codici, è possibile creare file xml contenenti i codici richiesti e caricare questi file tramite l'API o l'interfaccia web del proprio account personale.

Lo schema XSD può essere scaricato nella sezione "help" di LC CZ.

Prestare attenzione ai seguenti punti.

  1. Gli schemi Xsd in LC CZ contengono errori nella convalida del TIN e restrizioni sulla lunghezza della linea. Solo correggendo gli errori, puoi utilizzare gli schemi. Fortunatamente, gli errori sono evidenti, quindi non è difficile da fare.
  2. Lo schema è spesso costituito da due parti: comuni a tutti i tipi di documenti e separate per un tipo specifico. Lo schema generale viene aggiunto tramite importazione a quello specifico. Entrambi gli schemi si trovano nella sezione della guida in LC ChZ.
  3. Le regole di escape per CM differiscono da quelle generalmente accettate per XML, questo è scritto nella documentazione ufficiale di CZ, presta attenzione a questo. Qui qui a pagina 4 tutte le regole.
  4. Non dovresti provare a inserire 150 codici in circolazione in un unico file. Secondo testimoni oculari, di solito passano oltre 000 file...
  5. Un file Xml può essere avvolto con un errore "errore di convalida xml" e cinque minuti dopo lo stesso file viene accettato senza problemi.
  6. Se il file contiene un codice che è già stato messo in circolazione, molto probabilmente il file messo in circolazione non verrà accettato.
  7. I documenti di spedizione e ricezione vengono utilizzati come soluzione temporanea. In futuro, hanno in programma di abolirli e passare a UPD in conformità con PPR 860.
  8. Mito circa 60 giorni. Si ritiene che i codici che non vengono messi in circolazione "si esauriscano" dopo 60 giorni. Questo è un mito, fonte sconosciuta. I codici "si esauriscono" solo se non li hai ritirati dal CPS entro 60 giorni. La durata dei codici raccolti non è limitata.

conclusione

Durante lo sviluppo della mia applicazione di etichettatura gratuita BarCodesFX, inizialmente è stata eseguita l'integrazione con l'API KMS. Quando un segno onesto per la seconda volta ha cambiato inaspettatamente la logica dell'API, l'integrazione ha dovuto essere abbandonata. Spero che in futuro la CZ riesca a stabilizzare lo sviluppo e l'API, perché. per un prodotto non commerciale, è molto costoso per me ricontrollare ogni giorno se ci sono state modifiche nell'API e perfezionarlo rapidamente.

Quando implementi il ​​marchio, leggi attentamente la documentazione normativa per il tuo gruppo di prodotti TG, stampa correttamente il GS1-DataMatrix e preparati a eventuali modifiche impreviste rispetto al giusto marchio CZ.

The Fort Alliance ha creato uno spazio informativo (вики, chat room telegram, seminari, webinar), dove trovare informazioni utili e aggiornate sull'etichettatura in tutti i settori.

Fonte: habr.com

Aggiungi un commento