Italian Convertire ean 128 in una mappa [Risolto] Grazie sirjo66

drgottjr

Expert
Licensed User
Longtime User
questo non ti va a piacere, ma e' meglio usare ocr per leggere un
codice a barre 128.
le parentesi non figurano nel codice. sono aggiunte dopo per il generatore al stampare
il codice.
con ocr e una semplice regex potrai creare la tua mappa.

ne zxing ne mobile vision (codice a barre) non supportano le parentesi.
hai bisogno di un lettore di codice a barre ottimizzato (forse con un pc)
 

Attachments

  • 128cap.png
    128cap.png
    110.7 KB · Views: 128
  • cap2.png
    cap2.png
    17 KB · Views: 128

Xfood

Expert
Licensed User
Per fare degli esempi di etichette
 

Attachments

  • semso_edi_sscc_label.png
    semso_edi_sscc_label.png
    92.1 KB · Views: 138
  • One2Label-Automation-SSCC-Label-726x1024-1.png
    One2Label-Automation-SSCC-Label-726x1024-1.png
    76.2 KB · Views: 144
  • 202241210554529_foto-sscc-labeling.jpg-width.jpg
    202241210554529_foto-sscc-labeling.jpg-width.jpg
    151.5 KB · Views: 145

Xfood

Expert
Licensed User
questo non ti va a piacere, ma e' meglio usare ocr per leggere un
codice a barre 128.
le parentesi non figurano nel codice. sono aggiunte dopo per il generatore al stampare
il codice.
con ocr e una semplice regex potrai creare la tua mappa.

ne zxing ne mobile vision (codice a barre) non supportano le parentesi.
hai bisogno di un lettore di codice a barre ottimizzato (forse con un pc)
Si utilizzano terminali con android e e con lettore 2d a bordo, non da fotocamera.
 

BlueVision

Active Member
Licensed User
Longtime User
Si, ho visto anche io.. l'ho letto io stesso un'etichetta oggi, non vorrei aver fatto un errore.. comunque facciamo riferimento all'immagine del post #36 sono tutti cosi le etichette, quindi serve estrarre
chiave(marcatore) , valore
Inserite questo codice nel generatore sul sito web. Non viene generato alcun marcatore...
Sono confuso. O questo non è un codice EAN-128 o non ho ancora capito il principio.
 

Xfood

Expert
Licensed User
Inserite questo codice nel generatore sul sito web. Non viene generato alcun marcatore...
Sono confuso. O questo non è un codice EAN-128 o non ho ancora capito il principio.
Non considerare questo codice
0518578000023249232632743989005926300914

Credo di aver fatto qualche errore di copiatura, domani gusrdo meglio in ufficio
Ho allegato diversi esempi di etichette, con i vari marcatori.
 

BlueVision

Active Member
Licensed User
Longtime User
Ho un'idea. Ma potrebbe volerci un po' di tempo per attuarla...
Vengono interrogati i possibili marcatori. Per prima cose deve esserci un marcatore, se ho capito bene. Massimo 4 cifre. Si ottiene quindi la lunghezza dei dati per questo marcatore. I marcatori e i dati vengono rimossi dalla stringa originale e la nueva stringa viene utilizzata per iterare tutti i marcatori possibili. Deve essere possibile in questo modo.
La domanda è come il codice a barre arriva al programma se non viene scansionato con il dispositivo ANDROID...

Naturalmente, questo funziona solo con lunghezze di stringa definite per ciascun marcatore. Ma mi sembra che funzioni esattamente cosi.
 

Xfood

Expert
Licensed User
No, la lunghezza della stringa puo' essere variabile, il codice viene letto con un lettore barcode integrato su dispositivo android, che ritorna la stringa, come al post #1
 

Xfood

Expert
Licensed User
17 e' un marcatore, ma potrebbe essere il giorno della data di scadenza per esempio.
Serve un approccio diverso... ma quale?
Anche 10 e' un marcatore, ma potrebbe essere il giorno oppure il mese della data di confezionamento
 

Xfood

Expert
Licensed User
Tutti, perche contengono informazioni necessarie, in una qualsiari sequenza, ne leggo 1, e viene processato poi leggo il secondo, e cosi via.
 

BlueVision

Active Member
Licensed User
Longtime User
È possibile analizzare il flusso di codici a barre carattere per carattere e sostituire ASC(29) con un carattere speciale? È garantito che il codice non funzionerà in questo modo, ma è solo per farvi capire dove voglio arrivare. In pratica, si cerca ASC(29) e si sostituise questo carattere con un "-". In questo modo si ottengono i marcatori.
B4X:
    For a = 1 To TXTBARCODE.Length
        If Asc(TXTBARCODE.SubString2(n,1)) <> 29 Then
            TXTRESULT = TXTRESULT & Asc(TXTBARCODE.SubString2(a,1))      
        Else
            TXTRESULT = TXTRESULT & "-"  
        End If
    Next
 

Sagenut

Expert
Licensed User
Longtime User
Però mi pare di aver capito che lui riceve la stringa.
Quindi si è già persa la lettura completa del reader.
 

BlueVision

Active Member
Licensed User
Longtime User
Però mi pare di aver capito che lui riceve la stringa.
Quindi si è già persa la lettura completa del reader.
In questo caso, il codice a barre potrebbe non essere più decodificato corettamente perchè mancano i marcatori FNC1 e si può intuire...
Oppure c'è un'altra regolatorità che non conosciamo ancora.
 

sirjo66

Well-Known Member
Licensed User
Longtime User
Le eventuali date che trovo (ad esempio quel 230920 nell'esempio), per ora è una stringa, devo convertirla in data (cioè in tipo Long) ??

Per ora ho fatto solo alcuni codici, basandomi sulla lista trovata su https://it.wikipedia.org/wiki/GS1-128
A questo punto dovresti leggere quanti più codici a barre possibili, e mandarmeli.
Ma non in formato immagine, perchè sennò devo star lì a digitarmeli tutti,
dovresti mandarmeli in formato testo
Una volta fatte le prove ti dò il codice, che poi ovviamente ci dovrai fare qualche aggiustamento
 

Xfood

Expert
Licensed User
Grazie @sirjo66 oggi ti mando un po di codici reali, letti da etichette, la data si, se viene convertita sarebbe un'ottima cosa
 

Xfood

Expert
Licensed User
codice
41580320890098748020123456789123456789392205799
Human: (415)8032089009874(8020)123456789123456789392205799
codice
01080320890000173103002584392200646
Human: (01)08032089000017(3103)002584(3922)00646

codice
010803208900001731330012841515082010lotto123
Human: (01)08032089000017(3133)001284(15)150820(10)lotto123

codice
301921123456789012
human: (30)19(21)123456789012

presi da internet , oggi non ho modo di prelevarli da un punto vendita reale
 

sirjo66

Well-Known Member
Licensed User
Longtime User
dimmi qui cosa leggi (dovresti trovarti anche il carattere FNC1, cioè il 29 decimale)
barcode.gif
 
Top