ONYX - 9.0 - Utilisation - Designer - Utiliser des étiquettes RFID avec des imprimantes Zebra

Différence entre versions

De MappingDoc
(L'écriture du message)
(Application avec Mapping Designer)
Ligne 54 : Ligne 54 :
 
Dans la partie « Pre-printing », nous allons entrer les 2 instructions vues précédemment, concaténées en une seule ligne.
 
Dans la partie « Pre-printing », nous allons entrer les 2 instructions vues précédemment, concaténées en une seule ligne.
 
[[Fichier:Zone commande ZPL pour RFID.png|none|700px]]
 
[[Fichier:Zone commande ZPL pour RFID.png|none|700px]]
 +
 +
=== Données dynamiques provenant du fichier en entrée ===
 +
Si le fichier en entrée contient déjà les valeurs du message à encoder séparées par des virgules, la zone "commande" peut être paramétrée afin de récupérer directement ces valeurs dans le fichier (comme une zone imprimable). Il suffit alors de renseigner les zones pre-printing et post-printing avec le reste des instructions Zebra permettant l'écriture RFID :
 +
 +
Exemple de contenu du fichier (en XML) : <code><field name="message_rfid>2,5,5384,48547,13524341</field></code>
 +
 +
Configuration de la zone commande :
 +
 +
''Champ XML'' : <code>message_rfid</code><br>
 +
''Pré-imprimé'' : <code>^RB64,2,3,14,20,25^RFW,E^FD</code><br>
 +
''Post-imprimé'' : <code>^FD</code>
  
 
=== Données dynamiques en utilisant des zones mémoires ===
 
=== Données dynamiques en utilisant des zones mémoires ===
Nous souhaitons maintenant récupérer des valeurs du fichier en entrée afin de composer notre RFID avec des données dynamiques. Comme expliqué plus haut, nous devons donc modifier la seconde instruction afin d’y mettre des variables plutôt que des informations en dur.<br>
+
Si les valeurs présentes dans le fichier en entrées ne sont pas regroupées (c'est-à-dire à différents endroits du spool texte ou dans différentes balises XML), il va falloir travailler avec des zones mémoires afin de recomposer la chaine de caractère nécessaire (valeurs séparées par des virgules)
Pour cela, nous allons travailler avec des zones mémoires pour récupérer les valeurs du fichier en entrée.<br>
+
 
 
[[File:ETI MEMORIES.jpg|none|1300px]]<br><br>
 
[[File:ETI MEMORIES.jpg|none|1300px]]<br><br>
  
Ligne 68 : Ligne 79 :
  
 
<code>^RB64,2,3,14,20,25^RFW,E^FD<span style="color:red"><nowiki>[[VAL1]]</nowiki></span>,<span style="color:red"><nowiki>[[VAL2]]</nowiki></span>,<span style="color:red"><nowiki>[[VAL3]]</nowiki></span>,<span style="color:red"><nowiki>[[VAL4]]</nowiki></span>,<span style="color:red"><nowiki>[[VAL5]]</nowiki></span>^FS<br></code>
 
<code>^RB64,2,3,14,20,25^RFW,E^FD<span style="color:red"><nowiki>[[VAL1]]</nowiki></span>,<span style="color:red"><nowiki>[[VAL2]]</nowiki></span>,<span style="color:red"><nowiki>[[VAL3]]</nowiki></span>,<span style="color:red"><nowiki>[[VAL4]]</nowiki></span>,<span style="color:red"><nowiki>[[VAL5]]</nowiki></span>^FS<br></code>
 
=== Alternative  : données dynamiques sans utilisation des zones mémoires ===
 
Si le fichier en entrée contient déjà les valeurs du message à encoder séparées par des virgules, il n'est pas nécessaire de passer par des zones mémoires. Dans ce cas, la zone "commande" peut être paramétrée afin de récupérer directement ces valeurs dans le fichier (comme une zone imprimable), et il suffit alors de renseigner les zones pre-printing et post-printing avec le reste des instructions Zebra permettant l'écriture RFID :
 
 
Exemple de contenu du fichier (en XML) : <code><field name="message_rfid>2,5,5384,48547,13524341</field></code>
 
 
Configuration de la zone commande :
 
 
XML field : <code>message_rfid</code><br>
 
Pre-printing : <code>^RB64,2,3,14,20,25^RFW,E^FD</code><br>
 
Post-printing : <code>^FD</code>
 

Version du 5 septembre 2019 à 14:07

Préambule

Cette documentation a pour but de montrer comment concevoir une maquette permettant d'écrire sur une puce RFID des informations contenues dans un fichier d'entrée (spool texte ou XML), avec une imprimante Zebra compatible RFID.

ETI RFID.png

Syntaxe de la commande ZPL à envoyer

Pour déclencher l'écriture sur la puce RFID d'une étiquette, il faut transmettre 2 instructions ZPL à l'imprimante Zebra :

  • La structure du message (masque)
  • L'écriture du message

La structure du message

La commande ZPL permettant de spécifier la structure du message à écrire sur la puce RFID est définie de la manière suivante :
^RB[longueur en bits],[nb bits max valeur 1],[nb bits max valeur2],...

Exemple : ^RB64,2,3,14,20,25

Cette commande spécifie que le message RFID sera transmis sous la forme de 64 bits, regroupés en 5 paquets de respectivement 2, 3, 14, 20 et 25 bits.

Nombre de bits Valeur maximale
Valeur 1 2 3
Valeur 2 3 7
Valeur 3 14 16383
Valeur 4 20 1048575
Valeur 5 25 33554431

L'écriture du message

La commande ZPL permettant d'écrire le message sur la puce RFID est définie de la manière suivante :
^RFW,E^FD[valeur 1],[valeur 2],...^FS

L'exemple suivant est une commande ZPL permettant d'écrire un message constitué de 5 valeurs sur la puce RFID, selon la structure définie précédemment.

Exemple de commande ZPL : ^RFW,E^FD2,5,5384,48547,13524341^FS

Dans cet exemple, les 5 valeurs sont respectivement 2, 5, 5384, 48547 et 13524341

Application avec Mapping Designer

Afin de pouvoir écrire une valeur dans la puce RFID, nous devons utiliser l’objet « Commands » dans la partie MAP.
ETI COMMAND.png

Cette zone est non imprimable et permet juste d’envoyer une instruction selon le langage désiré (PCL, ZPL, etc…)
Une fois la zone dessinée, renseignez bien le type de commande que vous souhaitez envoyer. Dans notre cas, comme nous souhaitons faire une étiquette Zebra, nous cocherons l’option ZPL et nous cocherons également « Enable » afin de rendre la commande effective.
Elle ne sera interprétée que dans le cas d'une conversion XPS vers Zebra.

Dans la partie « Pre-printing », nous allons entrer les 2 instructions vues précédemment, concaténées en une seule ligne.

Zone commande ZPL pour RFID.png

Données dynamiques provenant du fichier en entrée

Si le fichier en entrée contient déjà les valeurs du message à encoder séparées par des virgules, la zone "commande" peut être paramétrée afin de récupérer directement ces valeurs dans le fichier (comme une zone imprimable). Il suffit alors de renseigner les zones pre-printing et post-printing avec le reste des instructions Zebra permettant l'écriture RFID :

Exemple de contenu du fichier (en XML) : <field name="message_rfid>2,5,5384,48547,13524341</field>

Configuration de la zone commande :

Champ XML : message_rfid
Pré-imprimé : ^RB64,2,3,14,20,25^RFW,E^FD
Post-imprimé : ^FD

Données dynamiques en utilisant des zones mémoires

Si les valeurs présentes dans le fichier en entrées ne sont pas regroupées (c'est-à-dire à différents endroits du spool texte ou dans différentes balises XML), il va falloir travailler avec des zones mémoires afin de recomposer la chaine de caractère nécessaire (valeurs séparées par des virgules)

ETI MEMORIES.jpg



Une fois les zones mémoires initialisées avec les valeurs du fichier en entrée, nous pouvons modifier la commande ZPL afin de les utiliser.
Attention à l'ordre des zones dans la "liste des objets" : les zones mémoires doivent se trouver AVANT la zone "Commande", afin qu'elles soient utilisables par cette dernière !

Ordre liste objets memoires commandes.png


La commande ZPL peut maintenant être modifiée afin d'utiliser les zones mémoires :

^RB64,2,3,14,20,25^RFW,E^FD[[VAL1]],[[VAL2]],[[VAL3]],[[VAL4]],[[VAL5]]^FS