Barcode Scanner Emulator
Καταλήξεις ENTER και TAB σε σαρωτές γραμμωτού κώδικα
Η κατάληξη είναι ένα πάτημα πλήκτρου που στέλνει ο σαρωτής αμέσως μετά το αποκωδικοποιημένο ωφέλιμο φορτίο του γραμμωτού κώδικα. Η επιλογή της σωστής κατάληξης και ο σωστός χειρισμός της στην εφαρμογή είναι από τις πιο συνηθισμένες πηγές σφαλμάτων ενοποίησης σαρωτή.
Τι είναι οι καταλήξεις και γιατί τις στέλνουν οι σαρωτές
Επειδή ο σαρωτής εκπέμπει το ωφέλιμο φορτίο ως ακατέργαστα πατήματα χωρίς ενσωματωμένο διαχωριστικό, η εφαρμογή που λαμβάνει τα δεδομένα δεν έχει αξιόπιστο τρόπο να γνωρίζει ότι η σάρωση ολοκληρώθηκε, εκτός αν ο σαρωτής προσθέσει ρητό πλήκτρο τερματισμού. Αυτό το πλήκτρο είναι η κατάληξη. Χωρίς αυτήν, οι εφαρμογές θα έπρεπε να μαντεύουν το τέλος με χρονικό όριο αδράνειας, που είναι πιο αργό και λιγότερο αξιόπιστο.
ENTER (CR)
Η πιο συνηθισμένη κατάληξη. Στέλνεται ως το πλήκτρο Enter/Return και αντιστοιχεί στην επιστροφή φορέα, 0x0D σε ASCII. Στις περισσότερες φόρμες HTML, το πάτημα του Enter μέσα σε ένα μόνο πεδίο κειμένου υποβάλλει τη φόρμα που το περιβάλλει, οπότε το ENTER ταιριάζει φυσικά σε ροές «σάρωση και υποβολή», όπως ένα πλαίσιο αναζήτησης ή αναζήτηση ενός πεδίου.
TAB
Στέλνεται ως το πλήκτρο Tab, 0x09. Αντί να υποβάλλει φόρμα, το Tab μετακινεί την εστίαση στο επόμενο στοιχείο που μπορεί να την λάβει. Αυτή η κατάληξη προτιμάται στην εισαγωγή δεδομένων σε βήματα, για παράδειγμα σάρωση κωδικού προϊόντος → αυτόματη μετάβαση στο πεδίο ποσότητας → σάρωση του επόμενου είδους, χωρίς πρόωρη υποβολή.
Ζεύγη CR/LF και καμία κατάληξη
Ορισμένοι σαρωτές μπορούν να ρυθμιστούν ώστε να στέλνουν πλήρες ζεύγος CR+LF (συνηθισμένο όταν τροφοδοτούν εφαρμογές τερματικού ή σειριακού τύπου), και άλλοι χωρίς καμία κατάληξη. Τότε η εφαρμογή πρέπει να ανιχνεύει την ολοκλήρωση της σάρωσης από τον χρονισμό της εισαγωγής.
Γιατί έχει σημασία για το POS και τις εφαρμογές ιστού
Η λάθος κατάληξη παράγει πολύ συγκεκριμένα και μπερδεμένα σφάλματα: μια κατάληξη ENTER σε φόρμα πολλών πεδίων μπορεί να υποβάλει τη φόρμα πριν συμπληρωθούν η ποσότητα ή οι εκπτώσεις, ενώ μια κατάληξη TAB σε ροή ενός μόνο πλαισίου αναζήτησης αφήνει την αναζήτηση ανεκτέλεστη, επειδή τίποτα δεν προκάλεσε υποβολή. Η κατάληξη πρέπει να ταιριάζει με τη ροή — δεν αρκεί να μείνει η εργοστασιακή τιμή.
Πώς να δοκιμάσετε τη συμπεριφορά της κατάληξης
Σαρώστε στον ελεγκτή εισαγωγής γραμμωτού κώδικα, ο οποίος αναφέρει ρητά αν στο τέλος της σάρωσης ανιχνεύθηκε ENTER ή TAB. Αν χρειάζεστε τους ακριβείς κωδικούς πλήκτρων (για παράδειγμα για να ξεχωρίσετε το CR από το LF), χρησιμοποιήστε τον ελεγκτή συμβάντων πληκτρολογίου.
Αλλαγή της κατάληξης στον σαρωτή
Η συμπεριφορά της κατάληξης είναι ρύθμιση στην πλευρά του σαρωτή, είτε μέσω του βοηθητικού προγράμματος του κατασκευαστή είτε με σάρωση ειδικού γραμμωτού κώδικα ρύθμισης από το εγχειρίδιο. Η γενική διαδικασία περιγράφεται στον οδηγό ρύθμισης σαρωτή γραμμωτού κώδικα.