← Блог · 19 августа 2026
Как настроить сканер, чтобы он передавал разделитель GS
Симптом знакомый: сканер исправно читает DataMatrix, код появляется в поле, на вид он целый — а система пишет «в структуре кода маркировки отсутствуют разделители GS» и отказывается его принимать. При этом тот же самый код, выгруженный из системы маркировки файлом, проходит нормально.
Дело не в сканере как устройстве — читает он правильно. Дело в том, каким способом он передаёт прочитанное в компьютер.
Что за символ и почему его не видно
Код маркировки состоит из нескольких групп данных подряд: код товара, серийный номер, код проверки. Группы переменной длины по стандарту GS1 завершаются служебным символом FNC1 — в закодированном виде это символ с кодом 29, он же GS, Group Separator.
Символ непечатаемый. В поле ввода он не занимает места, в тексте выглядит как ничто. Но для приёмной системы это граница поля: без него непонятно, где закончился серийный номер и начался код проверки. Отсюда и ошибка.
Главная причина: режим эмуляции клавиатуры
По умолчанию большинство сканеров работают в режиме HID — «притворяются клавиатурой». Прочитали код, «нажали» соответствующие клавиши, компьютер получил символы. Просто и не требует драйверов, поэтому так и настраивают по умолчанию.
Проблема в том, что на клавиатуре нет клавиши для символа с кодом 29. Сканер не может его «нажать» — и просто пропускает. Всё остальное доезжает, разделители исчезают.
Есть два выхода.
Режим виртуального COM-порта (USB-COM, USB-Virtual COM, USB Serial). Сканер передаёт данные как последовательное устройство, байт за байтом, включая служебные. Это основной способ. После переключения сканер нужно добавить в товароучётной системе как подключённое оборудование с указанием порта — в режиме клавиатуры этого не требовалось, поэтому шаг легко пропустить.
Подстановка видимого символа. Часть сканеров умеет заменять GS на печатаемую последовательность — например <GS> или ]. Товароучётная система при этом должна уметь такую подстановку разбирать; в 1С это настраивается в параметрах оборудования. Способ рабочий, но хрупкий: если подстановка на сканере и настройка в системе разойдутся, коды снова перестанут приниматься, причём молча.
Как переключить режим
Единой кнопки нет: режим меняется чтением служебного штрихкода из инструкции к вашей модели. В документации он обычно называется «USB COM Port Emulation», «USB Virtual COM» или «Serial Emulation». Отсканировали — сканер перешёл в нужный режим.
Что стоит сделать после переключения:
- Открыть Блокнот и отсканировать любой код маркировки. В режиме COM-порта символы в Блокнот больше не попадут — это нормальный признак того, что режим сменился.
- Добавить сканер в товароучётной системе как оборудование с указанием COM-порта.
- Проверить приёмку на одном коде, а не на всей партии.
Если сканер подключён к серверу через удалённый рабочий стол, проверять нужно именно в этой конфигурации: RDP — отдельный источник потери служебных символов, и сканер здесь ни при чём.
Другие места, где теряется разделитель
Настройка сканера закрывает самый частый случай, но не все:
- Excel. Выгрузка кодов, открытая двойным кликом, теряет непечатаемые символы молча. Если коды прошли через таблицу — разделителей в них уже нет. Открывайте такие файлы текстовым редактором.
- Буфер обмена и мессенджеры. Код, пересланный в рабочий чат, приходит без разделителей — иногда с текстовой меткой
[GS]на их месте. - Удалённый рабочий стол. При передаче между локальной машиной и сервером служебные символы могут не доезжать.
- Программная сборка кода. Если код формируется скриптом или через API, разделитель между полями просто забывают вставить.
Что делать с кодами, которые уже потеряли разделители
Переделывать выгрузку и заказывать коды заново не нужно. Разделитель ставится не в произвольном месте, а на границе групп данных, и эти границы заданы шаблоном кода: для каждой товарной группы известно, сколько символов занимает серийный номер и где начинается код проверки.
Поэтому по самому коду восстанавливается и расстановка. Мы сделали для этого бесплатный инструмент: восстановление разделителей GS — загружаете пачку кодов, он подбирает раскладку по справочнику шаблонов «Честного знака», проверяет каждый код и отдаёт готовый файл. Коды никуда не сохраняются: всё живёт в памяти открытой страницы.
Если непонятно, что за код в руках и какому шаблону он соответствует, рядом есть разбор кода: покажет, где в нём код товара, где серийный номер, где код проверки, сходится ли контрольная цифра GTIN и в каких позициях должны стоять разделители.
Коротко
Сканер в режиме клавиатуры физически не может передать символ GS — в этом причина большинства случаев. Переключите его в режим виртуального COM-порта служебным штрихкодом из инструкции и добавьте как оборудование в учётной системе. Коды, уже потерявшие разделители, восстанавливаются по структуре — заново их заказывать не нужно.