Неверно настроен символ GS в 1С Розница: как исправить

📅 Опубликовано 3 августа 2026 г.
Коротко: сообщение «Неверно настроен символ GS» в 1С:Розница означает, что сканер штрихкода не передаёт в программу служебный разделитель GS (Group Separator, ASCII 29). Без него 1С видит код маркировки DataMatrix как «слипшуюся» строку и не может выделить GTIN, серийный номер и криптохвост. Лечится, как правило, быстро: сканируете из инструкции производителя сервисные коды «USB-HID клавиатура» и «Передавать GS», переключаете раскладку на английскую и перепроверяете в Блокноте.
Главное за 30 секунд:
- GS — это невидимый символ с кодом
29(0x1D), разделитель полей внутри кода маркировки Честного ЗНАКа; на бумаге и на экране он не отображается, поэтому визуально код выглядит «правильным». - Самая частая причина ошибки — заводские настройки сканера, в которых передача GS отключена: производители по умолчанию ориентируются на обычные EAN-13, где разделитель не нужен.
- Вторая по частоте причина — русская раскладка клавиатуры в момент сканирования: сканер в режиме HID «печатает» символы, и при кириллице служебные последовательности искажаются.
- Диагностика занимает 1 минуту: открываете Блокнот, сканируете марку — между группой
01…и21…должен быть невидимый пропуск или спецсимвол, а не сплошной текст. - Работы по настройке у подрядчика — как правило, 0,5–1 час; итоговая сумма за кассу зависит от ставки специалиста 1С. Оценка приведена по диапазону ставок в открытых профилях исполнителей, а не по фиксированному прайсу.
Что означает ошибка «Неверно настроен символ GS» в 1С?
Код маркировки Честного ЗНАКа — это не один сплошной идентификатор, а несколько логических полей, склеенных в одну строку по стандарту GS1. Каждое поле начинается с двузначного идентификатора применения (AI):
01— GTIN, код товара, всегда 14 цифр;21— серийный номер экземпляра, до 20 символов переменной длины;91— ключ проверки (часть криптохвоста);92— значение проверки, самая длинная часть кода.
Поля 01 имеют фиксированную длину, и программа понимает, где они заканчиваются. А вот 21, 91 и 92 — переменной длины. Чтобы система понимала, где обрывается серийный номер и начинается следующая группа, стандарт предусматривает служебный символ-разделитель GS с кодом ASCII 29. Он не печатается, не занимает места на экране и человеку не виден — но именно на него опирается алгоритм разбора кода в 1С.
Когда сканер не отправляет этот символ, 1С:Розница получает строку без границ между полями. Программа пытается разобрать её по правилам GS1, не находит разделителя там, где он обязан быть, и выводит сообщение о том, что символ GS настроен неверно. Иногда формулировка выглядит иначе — «Ошибка разбора кода маркировки», «Некорректный код маркировки», «Не удалось разобрать штрихкод», — но причина одна и та же.
Важно понимать: сама марка на упаковке при этом полностью исправна. Проблема не в товаре и не в базе, а в канале передачи данных между сканером и компьютером. Поэтому замена товара или переоформление поставки ничего не даёт.
Чем «неверно настроен символ GS» отличается от «код не найден»?
Это две принципиально разные ситуации, и путать их не стоит. «Код маркировки не найден» означает, что 1С прочитала структуру кода корректно, но не нашла соответствующую марку в остатках или в документе — это учётная проблема. «Неверно настроен символ GS» означает, что программа вообще не смогла корректно разложить строку на составные части — это техническая проблема оборудования. В первом случае разбираются с документами и остатками, во втором — со сканером. Смежный сценарий, когда код читается, но не проходит проверку в ГИС МТ, мы разбирали в материале про то, почему 1С пишет «не удалось проверить марку».
Почему сканер не передаёт символ GS в 1С?
Причин ограниченное число, и почти все они лежат в настройках оборудования. Ниже — реальный порядок частоты по опыту разбора обращений на кассовых узлах: сначала проверяют то, что встречается чаще.
| Причина | Как проявляется | Что делать |
|---|---|---|
| Передача GS отключена в заводских настройках сканера | Обычные EAN-13 сканируются нормально, ошибка только на DataMatrix | Отсканировать сервисный код «GS1 separator / Transmit GS» из инструкции |
| Активна русская раскладка клавиатуры | Ошибка «плавает»: то есть, то нет, зависит от того, в каком окне работал кассир | Переключить на EN, отключить автопереключатели раскладки |
| Сканер работает в режиме эмуляции COM-порта, а в 1С выбран HID (или наоборот) | Код вообще не вводится или приходит обрезанным | Привести в соответствие режим сканера и настройки подключаемого оборудования |
| Не включён режим передачи спецсимволов (ALT-mode / Ctrl+Char emulation) | GS заменяется пробелом или исчезает | Включить «ALT keypad emulation» либо «Function code transmit» |
| Устаревшая прошивка сканера | Ошибка на новых товарных группах, на старых всё работает | Обновить прошивку у поставщика оборудования |
| Беспроводной сканер настроен, а база — нет (или заменили базу) | После замены/сброса базы настройки сбросились на заводские | Повторно применить сервисные коды после сопряжения |
| Проблема на стороне ТСД или мобильного приложения | На кассе всё в порядке, ошибка только при приёмке с терминала | Проверить настройки профиля сканирования в приложении ТСД |
Отдельно отмечу: если сканер вообще не реагирует на DataMatrix или считывает его через раз, проблема другая — она относится к оптике, подсветке и режиму 2D-декодирования. Разбор этого сценария есть в материале о том, почему сканер не видит марку Честного ЗНАКа.
Как проверить, передаёт ли сканер символ GS? Тест за одну минуту
Не нужно ни специальных программ, ни доступа к базе. Достаточно обычного Блокнота — этот тест показывает ровно то, что получает 1С.
- Закройте 1С (чтобы фокус ввода не перехватывался) и откройте Блокнот.
- Убедитесь, что раскладка клавиатуры — английская.
- Отсканируйте любую марку с товара: пачку сигарет, коробку обуви, флакон духов, упаковку молочной продукции.
- Посмотрите на результат.
Как читать результат:
- Правильно: строка выглядит как
0104607...21ABC1234..., но между группами есть визуальный разрыв — пропуск, «прямоугольник» или перевод позиции курсора. В зависимости от шрифта GS отображается по-разному, но он есть. - Неправильно: все группы идут абсолютно вплотную, без каких-либо разрывов — сканер «съел» разделитель.
- Тоже неправильно: вместо разделителя виден нормальный пробел. Пробел — это не GS, и 1С его не примет.
- Отдельный случай: вместо цифр приходят кириллические буквы или знаки — виновата раскладка, а не сам сканер.
Как посмотреть символ точно, а не «на глаз»?
Если визуально не разобрать, откройте Microsoft Word и включите отображение непечатаемых знаков (кнопка ¶ на вкладке «Главная»). Служебные символы станут видимыми. Второй вариант — отсканировать код в любой HEX-редактор или текстовый редактор с показом кодов символов: разделитель должен отображаться как 1D в шестнадцатеричном виде. Это самая надёжная проверка, потому что она не зависит от шрифта.
Как настроить символ GS на сканере: пошаговая инструкция
Настройка сканера выполняется не мышкой, а сканированием сервисных штрихкодов из инструкции производителя. Это стандартный механизм: сканер распознаёт специальный код и меняет собственную конфигурацию.
Универсальный порядок действий:
- Найдите инструкцию именно к вашей модели — коды не универсальны, чужие коды могут перевести сканер в непредсказуемый режим. Обычно PDF есть на сайте производителя или поставщика.
- Отсканируйте код сброса к заводским настройкам (Restore Defaults / Reset to factory). Это снимает случайные настройки, накопленные за годы эксплуатации.
- Отсканируйте код режима USB-HID Keyboard (эмуляция клавиатуры). Это не единственный вариант: для 1С:Розница сканер подключается и через COM-порт (в том числе виртуальный), Bluetooth или Broadcast — режим задаётся параметром «Устройство/Порт» в карточке подключаемого оборудования с драйвером «1С:Сканеры штрихкода (NativeAPI)». Клавиатурный режим с суффиксом CR (код 13, клавиша Enter) — лишь конфигурация по умолчанию, принятая и у большинства сканеров, и в самом драйвере, поэтому чаще всего она работает без донастройки. Обязательно другое: настройки сканера и драйвера должны совпадать по порту, префиксу и суффиксу, иначе сообщение не будет передано в программу. При этом для кодов маркировки, где встречаются служебные символы вроде GS, клавиатурный режим ограничен возможностями клавиатуры и предпочтительнее подключение по COM.
- Отсканируйте код раскладки клавиатуры: US English / United States. Не выбирайте Russian, даже если кажется логичным.
- Отсканируйте код включения передачи GS-разделителя: в разных инструкциях он называется «GS1 Separator», «Transmit AIM/GS», «Function Code Transmit», «Data Format GS».
- Если предыдущий пункт не дал эффекта — включите ALT keypad emulation (эмуляция ввода символов через Alt+код). Этот режим гарантированно передаёт непечатаемые символы, но чуть медленнее.
- Отсканируйте код добавления суффикса Enter (CR), если он не установлен: 1С ждёт признак окончания ввода.
- Повторите тест в Блокноте.
Где искать нужный сервисный код у популярных моделей?
| Производитель | Как называется нужный параметр | Раздел инструкции |
|---|---|---|
| Honeywell (Voyager, Xenon) | GS1 Emulation / Function Code Transmit | Data Formatting → Symbology Settings |
| Zebra / Symbol (DS22xx, DS8100) | GS1-128 Emulation, Group Separator conversion | Data Options / Miscellaneous |
| АТОЛ (SB, Impulse) | Передача разделителя GS, режим ALT | Настройки интерфейса / Спецсимволы |
| Mertech (N200, Sunmi) | Передавать GS (0x1D), Keyboard ALT mode | Формат данных |
| Datalogic (QuickScan, Gryphon) | GS1-DataBar / Group Separator Replacement | Data Editing |
| Newland (HR серия) | Transmit GS Character, ALT Output | Data Formatter |
Названия параметров отличаются, но смысл всегда один: «передавать служебный разделитель как есть, не заменяя его пробелом и не удаляя». Если в инструкции есть параметр «Replace GS with…» — он должен быть выключен или установлен в значение «не заменять».
Клавиатура: «неверно настроен символ GS» из-за раскладки — как исправить?
Это отдельный и очень коварный сценарий. Сканер в режиме HID для операционной системы неотличим от клавиатуры: он «нажимает клавиши». Соответственно, всё, что влияет на ввод с клавиатуры, влияет и на данные из сканера.
Что проверить:
- Активная раскладка в момент сканирования. Должна быть английская. Если кассир переключился на русскую, чтобы набрать комментарий, а потом сразу сканирует марку — ошибка появится.
- Раскладка по умолчанию в Windows. В параметрах языка задайте английский как язык ввода по умолчанию, чтобы после перезагрузки касса не возвращалась к кириллице.
- Автопереключатели раскладки (Punto Switcher и аналоги). Они анализируют «бессмысленные» последовательности и меняют их на лету — а код маркировки для них выглядит именно как бессмыслица. На кассовом ПК такие программы нужно удалять, а не отключать.
- Экранные и виртуальные клавиатуры на POS-моноблоках — иногда перехватывают ввод и фильтруют спецсимволы.
- Программы удалённого доступа. Если 1С открыта через RDP или тонкий клиент, спецсимволы могут теряться на транспорте. Проверьте сканирование локально — если локально всё в порядке, а в сессии нет, настраивать нужно проброс устройства, а не сканер.
- Раскладка, зашитая в самом сканере. Если в сканере выбрана раскладка Russian, он будет «нажимать» клавиши по русской карте символов, и цифры превратятся в буквы.
Практическое правило для торговой точки: на кассовом рабочем месте оставляйте только английскую раскладку, а поля для ручного ввода текста выносите на отдельный сеанс. Это убирает целый класс плавающих ошибок, которые невозможно воспроизвести по требованию.
Как проверить настройки сканера в самой 1С:Розница?
Даже правильно настроенный сканер даст ошибку, если в базе он подключён некорректно. Порядок проверки в интерфейсе:
- Откройте раздел «НСИ и администрирование» → «Подключаемое оборудование» (в некоторых редакциях — «Администрирование» → «Подключаемое оборудование»).
- Установите флаг «Использовать подключаемое оборудование» и перейдите по гиперссылке в список устройств.
- В фильтре типа оборудования выберите «Сканеры штрихкода». Убедитесь, что для вашего рабочего места есть ровно одна активная запись — дубли устройств дают конфликт ввода.
- Откройте карточку устройства. Драйвер должен быть «1С:Сканеры штрихкода (NativeAPI)» актуальной версии. Устаревший драйвер — частая причина того, что разделитель приходит, но не обрабатывается.
- Нажмите «Настроить…» и проверьте параметры: тип подключения (клавиатура / COM), скорость порта для COM-режима, префикс и суффикс. Суффикс обычно
13(CR). - Нажмите «Тест устройства» и отсканируйте марку. Тестовое окно покажет полученную строку — по ней сразу видно, дошёл ли разделитель.
- Проверьте, что в настройках раздела «Маркировка» включена работа с нужными товарными группами, а в карточках номенклатуры заданы корректные типы кодов маркировки.
Если после всех настроек ошибка сохраняется на конкретных товарных группах, стоит проверить версию самой конфигурации: поддержка новых форматов кодов появляется в релизах постепенно. Обновление типовой 1С:Розница до актуального релиза решает часть таких вопросов «само собой». Смежные грабли — GTIN, не совпадающий с карточкой номенклатуры, и неверный тип кода — подробно разобраны в подборке типовых ошибок Честного ЗНАКа в 1С:Розница.
Найдите специалиста для решения этой задачи на koderion.ru