2013-01-08 41 views
5

Sto provando a stampare un codice a barre Code 128 su un'etichetta utilizzando la seguente il pezzo di ZPL con una zebra ZP 450 stampante:ZPL - Barcode Manca una cifra quando viene stampato

^BY3^BCN,112,N^FO090,660^FD>;>89102100^FS 

mi aspetto il codice a barre scansionare come "9102100". Tuttavia, quando eseguo la scansione del codice a barre stampato, si legge "910210", che taglia la cifra finale.

Se cambio l'ultima cifra, è ancora interrotta. Ma se aggiungo più cifre alla fine, ad es. "9102100357", il codice a barre viene letto correttamente come "9102100357".

Perché sto "perdendo" una cifra in questo caso particolare?

risposta

7

La >; interno del vostro ^FD blocco sta dicendo il codice a barre di codice 128 di andare in un sottoinsieme (subset C in questo caso) che costringe i dati del codice a barre per essere coppie numerici (00 - 99). Qualsiasi dato che non viene fornito in coppie numeriche viene ignorato. Se metti una lettera lì, ignorerà quella coppia. Nel tuo caso 9102100 ha un numero dispari di numeri, quindi ignora l'ultimo. Se ad esempio aggiungi un altro 0, inserirà tutte le lettere nel codice a barre.

Il ;> che inserisce il codice a barre in Sottoinsieme C non è l'impostazione predefinita. Il sottoinsieme B o :> è il valore predefinito che consente a qualsiasi carattere di essere codificato nel codice a barre. Quindi puoi sostituire lo ;> con :> o semplicemente rimuovere lo ;> interamente e verrà stampato correttamente.

Controllare la documentazione ^BC nel manuale di programmazione ZPL per ulteriori informazioni su Codice 128 sottoinsiemi e convalida dei dati

+0

Hai appena salvato la mia giornata. – Danieboy

0

Vedi pg 83 del https://www.zebra.com/content/dam/zebra/manuals/en-us/software/zpl-zbi2-pm-en.pdf

Questo problema potrebbe essere stato risolto con l'aggiornamento del firmware, vedere sotto

"esempio 3: Questo è un esempio con il parametro modo impostata D *: ^ XA^ PON ^ LH0,0 ^ BY2,2.5,145 ^ FO218,343 ^ BCB ,, Y, N, N, D ^ FD (91) 0005886> 8 (10) 0000410549> 8 (99) 05^FS ^ XZ D * - Quando si tenta di stampare l'ultima applicazione Identificatore con un numero dispari di caratteri, un problema esisteva quando si stampavano codici a barre EAN128 utilizzando la modalità D. Il problema era stato risolto nella versione firmware V60.13.0.6. "