Modelli di etichetta
Un file di comandi di stampante della libreria Etichette: nome e codifica, l'editor dei comandi di stampante e l'importazione da file, la grammatica dei segnaposto, la coda di Windows installata e l'invio di collaudo.
Un modello di etichetta è una riga della libreria Etichette (Process > Modelli di documento >
Etichette): un file di comandi di stampante (ZPL, EPL, CPCL o un qualsiasi altro linguaggio di
comandi RAW) con segnaposto {{NAME}} dove va un valore della prova. Ganter Lab invia i byte a una
coda RAW di Windows e sostituisce i segnaposto; non analizza, non genera e non mostra mai in
anteprima il linguaggio della stampante, quindi l'impaginato si disegna nello strumento del
produttore della stampante. Modificarlo richiede Gestire Process; l'intera pagina è inerte mentre
un'unità è in marcia, e un invio di collaudo è rifiutato mentre il runtime è fermo. Un modello nuovo
nasce vuoto, di nome "Label" ("Label 2", e così via), e non stampa nulla finché non contiene comandi:
ogni via che genera o invia rifiuta un modello vuoto.
La pagina è fatta di cinque riquadri, nell'ordine in cui si lavora: l'identità e la codifica, i comandi, i segnaposto trovati al loro interno, come si prepara un file in un programma di disegno, e l'invio di collaudo.
Modello
| Campo | Che cos'è | Valori / predefinito | Effetto |
|---|---|---|---|
| Nome | Il nome che mostrano la libreria e ogni comando di etichetta. | Testo; si applica quando si lascia il campo. | Un nome vuoto è rifiutato ("Un modello di etichetta richiede un nome.") e resta il nome precedente. |
| Codifica | Come i byte conservati vengono riletti come testo, e come viene codificato ogni valore sostituito. | UTF-8 (predefinita), Latin-1, ASCII. | Cambiarla riscrive nella codifica nuova i comandi modificabili; un carattere che la codifica nuova non può rappresentare è rifiutato ("I comandi restano in UTF-8. La riga 3 contiene 'é', che ASCII non può rappresentare.") e la codifica resta quella di prima. I comandi opachi conservano i propri byte e sono semplicemente riletti sotto la dichiarazione nuova. |
Comandi di stampante
| Comando | Che cosa fa |
|---|---|
| L'editor | Un campo di testo a spaziatura fissa che contiene i comandi, con una forma ZPL come testo segnaposto. Scrivere convalida via via (l'elenco dei segnaposto e ogni rifiuto seguono il testo); lasciare il campo salva. Una bozza rifiutata resta sullo schermo con il proprio motivo e non è salvata; aprire un altro modello la scarta. Salvare un testo identico ai byte conservati non cambia nulla. |
| Importa un file… / Sostituisci il file… | Porta dentro un file di comandi di stampante (.zpl, .epl, .epl2, .cpcl, .prn, .lbl, .txt). I byte sono copiati nella configurazione e il nome del file è conservato per tracciabilità: spostare o eliminare l'originale non tocca il modello. Un file vuoto e un file oltre 2 MiB sono rifiutati, e così è rifiutato un file i cui segnaposto sono malformati. |
I comandi sono modificabili come testo soltanto finché sopravvivono al viaggio di andata e ritorno byte per byte: si decodificano sotto la codifica dichiarata, si ricodificano negli stessi byte, terminano ogni riga allo stesso modo (tutte LF oppure tutte CR LF; uno stile CR LF importato è rimesso a ogni salvataggio) e non portano alcun carattere di controllo oltre alla tabulazione e alla terminazione di riga. I comandi che non superano una di quelle prove restano opachi: l'editor è sostituito dal motivo ("Il byte 0x1B all'offset 12 non è testo UTF-8.", "Le terminazioni di riga sono miste: alcune righe finiscono con CR LF e altre con LF da solo.") e i byte cambiano soltanto sostituendo il file. Una riga sotto il riquadro dice che cosa è conservato: "Non è ancora conservato nulla.", "Importato da labels.zpl · 1,2 KiB · le terminazioni di riga CR LF si conservano" oppure "Scritto qui · 240 B".
Segnaposto rilevati
I segnaposto trovati nei comandi conservati, nell'ordine della prima comparsa. Un segnaposto è un
rigoroso {{NAME}} ASCII: il nome comincia con una lettera da A a Z, prosegue con lettere da A a Z,
cifre da 0 a 9 oppure trattini bassi, è lungo al massimo 64 caratteri e chiude con }}. Qualsiasi
cosa apra con {{ e non segua la grammatica è rifiutata con il proprio offset in byte e la regola
infranta ("Segnaposto di etichetta malformato all'offset di byte 40: il nome può contenere soltanto
A-Z, 0-9 o trattino basso."). Ogni byte fuori da un segnaposto è conservato, e la sostituzione avviene
una volta sola e mai in modo ricorsivo.
Un modello senza comandi si legge "Ancora nessun comando. Scrivere qui sopra i comandi di stampante, oppure importare un file esportato da un programma di disegno di etichette. Fino ad allora questo modello non stampa nulla."; un modello con comandi e senza segnaposto si legge "Non è stato trovato alcun segnaposto: questa etichetta fissa invia sempre gli stessi byte e non usa dati della prova." ed è un modello valido. Ogni segnaposto distinto richiede una sorgente in ogni comando di etichetta che usa il modello; un segnaposto ripetuto riceve lo stesso valore. Il riquadro si chiude con la regola fissa: Ganter Lab convalida la sintassi dei segnaposto, non i comandi del produttore. Conservare soltanto comandi di cui ci si fida; possono cambiare il comportamento della stampante.
Preparare un modello in un programma di disegno di etichette
Un promemoria a scomparsa del flusso di lavoro:
- Creare il disegno dell'etichetta nello strumento del produttore della stampante, per esempio ZebraDesigner.
- Inserire i segnaposto di Ganter Lab, come
{{SERIAL}}o{{RESULT}}, dentro il testo o il contenuto di un codice a barre. - Esportare il file di comandi pronto per la stampante, per esempio ZPL. Non importare il file di progetto del programma di disegno.
- Importare qui quel file (oppure incollarne il contenuto nel campo dei comandi) e verificare i segnaposto rilevati.
- Immettere qui sotto valori rappresentativi e provare su una coda di Windows installata.
Lo stesso flusso vale per EPL, CPCL e altri linguaggi di comandi di stampante.
Invio di collaudo
| Comando | Che cosa fa |
|---|---|
| Aggiorna le code | Rilegge le code di stampa installate per l'utente interattivo di Windows. Un errore di lettura è detto accanto al selettore. |
| Una casella di valore per segnaposto | Il testo di esempio sostituito a quel segnaposto soltanto in questo invio. Un modello fisso legge "Questo modello fisso non richiede valori di esempio."; uno vuoto legge "Non c'è nulla da inviare finché questo modello non ha comandi di stampante." |
| Coda di Windows installata | La coda a cui va il collaudo ("(scegliere una coda)" oppure "(nessuna coda installata)"). |
| Invia il collaudo | Genera i comandi conservati con i valori di esempio e li trasmette come documento RAW di nome Ganter Lab test · <template>. Non si crea alcuna prova e alcun artefatto. L'esito arriva nel registro delle azioni ("Etichetta di collaudo inviata a 'Q'." oppure "Invio di collaudo non riuscito: motivo"). |
Invia il collaudo è in grigio senza comandi conservati, senza una coda scelta, durante l'invio e mentre la pagina è inerte. Un valore che un segnaposto non può portare nella codifica dichiarata è rifiutato dal generatore. Esito positivo significa che la coda di Windows ha accettato il documento RAW; non conferma che sia stata stampata un'etichetta fisica.
Da dove vengono i valori
I valori di esempio qui sopra servono soltanto per il collaudo. In una prova, ogni segnaposto
distinto del modello è associato a una sola sorgente finita sul comando di etichetta che lo usa
(Azioni): i metadati congelati, il nome e la revisione del modello, il nome e il
codice dell'unità, il nome e il codice della procedura, l'identificatore della prova, l'istante di
avvio, lo stato della prova e, al Completamento, anche l'istante di conclusione, la durata, l'esito,
il motivo della conclusione e il risultato di un criterio nominato con un ciclo esplicito. Le
sorgenti di data e ora prendono un formato (data e ora della stazione, data della stazione, ora della
stazione, ISO 8601) e le sorgenti numeriche un numero fisso facoltativo di decimali (da 0 a 9). Un
numero è scritto per la macchina che lo legge e non nel modo in cui la stazione mostra i numeri sullo
schermo: mai un separatore delle migliaia, che dentro un codice a barre rompe il sistema ricevente,
sempre il punto decimale invariante, e un numero intero, come un conteggio o una durata in secondi,
scritto intero. Un valore che contiene un carattere di controllo, un'interruzione di riga compresa,
oppure un carattere che apre un comando di stampante (^, ~) è rifiutato nominando il proprio
segnaposto: spezzerebbe la riga in cui sta, oppure stamperebbe un'etichetta diversa. Che cosa offre
ciascun momento di emissione, come l'artefatto viene congelato e come un invio viene annotato sta in
Emettere etichette e
rapporti; associare un modello a mano su una prova registrata sta in Etichette e
rapporti.
Che cosa non fa questa pagina
Non disegna alcuna anteprima dell'etichetta e non convalida nulla del linguaggio della stampante. Non associa alcun segnaposto a un valore: quello è compito del comando di etichetta. Non stampa un'etichetta per una prova: gli artefatti di una prova si stampano dal suo registro negli Storici. Ed eliminare il modello (Elimina il modello di etichetta, sulla barra) lascia intatto ogni artefatto registrato; smettono di generare soltanto i comandi che lo nominano ancora.