Barcode Scanner Emulator
Suffixes ENTER et TAB des lecteurs de codes-barres
Un suffixe est une frappe que le lecteur envoie juste après la charge utile décodée du code-barres. Choisir le bon suffixe, et le gérer correctement dans votre application, est l'une des sources les plus courantes de bugs d'intégration.
Ce que sont les suffixes et pourquoi les lecteurs les envoient
Comme un lecteur émet la charge utile sous forme de frappes brutes sans délimiteur intégré, l'application réceptrice n'a aucun moyen fiable de savoir que la lecture est terminée, sauf si le lecteur ajoute une touche de terminaison explicite. Cette terminaison est le suffixe. Sans lui, les applications devraient deviner la fin grâce à un délai d'inactivité, ce qui est plus lent et moins fiable.
ENTER (CR)
Le suffixe le plus courant. Envoyé comme la touche Entrée/Retour, correspondant au retour chariot, 0x0D en ASCII. Dans la plupart des formulaires HTML, appuyer sur Entrée dans un seul champ de texte envoie le formulaire englobant, ce qui fait d'ENTER un choix naturel pour les flux « lire et envoyer », comme une zone de recherche ou une consultation à champ unique.
TAB
Envoyé comme la touche Tabulation, 0x09. Au lieu d'envoyer un formulaire, Tab déplace le focus vers l'élément focusable suivant. Ce suffixe est préférable dans la saisie en plusieurs étapes, par exemple lire le code produit, passer automatiquement au champ quantité, puis lire l'article suivant, sans déclencher un envoi prématuré.
Paires CR/LF et absence de suffixe
Certains lecteurs peuvent être configurés pour envoyer une paire CR+LF complète (courant pour alimenter des applications de type terminal ou série), et d'autres peuvent être configurés sans aucun suffixe. Dans ce cas, votre application doit détecter la fin de la lecture grâce à la temporisation de la saisie.
Pourquoi cela compte pour les POS et les applications web
Un mauvais suffixe produit des bugs très précis et déroutants : un suffixe ENTER sur un formulaire à plusieurs champs peut envoyer le formulaire avant que les champs de quantité ou de remise soient remplis, tandis qu'un suffixe TAB sur un flux à zone de recherche unique laisse la recherche non exécutée, car rien n'a déclenché l'envoi. Il est essentiel d'accorder le suffixe au flux, et pas seulement de conserver le réglage d'usine.
Comment tester le comportement du suffixe
Lisez dans le testeur de saisie de codes-barres, qui indique explicitement si ENTER ou TAB a été détecté à la fin de la lecture. Si vous devez voir les keycodes exacts (par exemple pour distinguer CR de LF), utilisez plutôt le testeur d'événements clavier.
Modifier le suffixe de votre lecteur
Le comportement du suffixe est un paramètre côté lecteur, configuré soit par l'utilitaire logiciel du fabricant, soit en lisant un code-barres de configuration spécial imprimé dans le manuel du lecteur. Voir le guide Configuration du lecteur de codes-barres pour le processus général de configuration.