Символ GS: настройка сканера для кодов маркировки и GS1
Код маркировки «Честного ЗНАКа» и штрихкод GS1 DataMatrix с партией и сроком годности состоят из нескольких полей. Между полями стоит невидимый служебный символ GS (Group Separator, код 29). Если сканер его теряет, поля слипаются: код маркировки становится «неполным», а партия и срок читаются неверно. В телефоне-ТСД это настраивается один раз.
Что такое GS и почему он теряется#
| Где встречается | Что будет без GS |
|---|---|
| Код маркировки (DataMatrix на товаре) | код не проходит проверку, приёмка по УПД не сходится |
| GS1 DataMatrix и GS1-128 с партией (AI 10) и сроком (AI 17) | партия «съедает» следующие поля, срок не распознаётся |
| Обычный штрихкод EAN/UPC | GS там нет — настраивать ничего не нужно |
Камера телефона и встроенный сканер Android-ТСД обычно передают GS как есть. Теряет его чаще всего сканер в режиме клавиатуры (HID): у клавиатуры нет клавиши для символа 29, и сканер по умолчанию его просто пропускает.
Что нужно для запуска#
| Что | Зачем |
|---|---|
| 2D-сканер (имиджер) | лазерный 1D-сканер DataMatrix не читает вовсе |
| Лист настройки (программирования) вашей модели — PDF на сайте производителя | служебные штрихкоды, которые меняют режим сканера |
| Тестовый код маркировки или GS1 DataMatrix | чтобы проверить результат мастером |
Шаг 1. Включить передачу GS в сканере#
В листе настройки найдите раздел о GS / FNC1 / Group Separator (иногда — «замена непечатаемых символов», «Function key mapping»). Нужно, чтобы вместо невидимого символа сканер отправлял клавишу, которую понимает приложение:
| Что отправляет сканер | Понимает приложение |
|---|---|
| F8 | да |
| Ctrl+] | да (на iPhone — и в русской раскладке) |
| Tab | да |
| символ с кодом 0x1D («как есть») | да |
Заодно проверьте суффикс Enter после кода — без него телефон не поймёт, что скан закончился (сканер без суффикса тоже работает, но медленнее отличается от набора руками).
Шаг 2. Проверить мастером#
На Android в ТСД на главном экране откройте «Проверка сканера» и отсканируйте тестовый код маркировки. Мастер скажет одно из трёх:
| Итог | Что значит |
|---|---|
| Годен | код пришёл целиком, GS на месте |
| Код неполный | GS потерян — вернитесь к шагу 1, мастер подскажет, как его включить |
| Годен с предупреждением | GS потерян, но приложение восстановило его по шаблону кода маркировки — лучше всё же настроить сканер |
Заодно мастер покажет скорость ввода (для сканера-клавиатуры) и скажет, если исправил русскую раскладку. На iPhone мастера нет — проверьте сканер первой приёмкой: неполный код приложение пометит.
Встроенный сканер Android-ТСД#
Встроенный сканер передаёт код приложению напрямую (broadcast), и GS обычно доходит как есть. Если всё же нет — в настройках сканера терминала (у Zebra — DataWedge, у других — «Scanner settings») включите передачу GS1/FNC1 и декодеры DataMatrix и GS1 DataMatrix. У Zebra профиль приложения создаётся автоматически с нужными декодерами.
Камера#
Камера телефона читает DataMatrix вместе с GS — ничего настраивать не нужно. Если код мелкий, поднесите ближе, включите фонарик или зум.
Ограничения#
- Восстановление GS по шаблону работает только для кодов маркировки; для GS1 с партией и сроком сканер нужно настроить.
- Мастер «Проверка сканера» есть только на Android.
- Конкретные настройки сканеров мы описываем по документации производителей.
Устранение неполадок#
| Симптом | Что проверить |
|---|---|
| Мастер говорит «Код неполный» | GS не включён или заменяется клавишей, которую приложение не понимает (не F8, Ctrl+], Tab, 0x1D) |
| Срок годности из штрихкода не подставился | GS потерян в GS1-коде — шаг 1; или у товара срок не по партии |
После скана в поле лишние символы ]C1, ]d2 |
у сканера включена передача идентификатора символики (AIM ID) — приложение его понимает, но для других программ его лучше выключить |
| Буквы в коде маркировки перепутаны | раскладка сканера; русская исправляется сама |
Частые вопросы#
Нужно ли настраивать GS, если я не работаю с маркировкой?#
Только если в ваших штрихкодах GS1 есть партия и срок и вы хотите, чтобы телефон их подставлял. Для обычных EAN — не нужно.
Подходит ли этот же сканер для кассы?#
Да, требование GS у кассы то же самое — см. сканер штрихкодов на кассе.