Сканер штрихкодов в текстовое поле с символом GS и не только.

Недавно передо мной встала задача: обеспечить корректное списание маркированных товаров через браузер в "Мой склад" и в системе «Робокасса» да и в целом наладить корректную отправку символа GS в текстовую строку. Основная проблема заключалась в обработке специальных символов‑разделителей GS (Group Separator), которые критически важны для валидной передачи данных в учётные системы.

Суть проблемы

При ручном вводе или стандартном сканировании:

  • символы GS не отображаются или интерпретируются неверно;
  • нарушается структура кода маркировки;
  • система не может распознать товар, возникают ошибки списания.

Решение

Я разработал небольшую программу, которая:

  1. Подключается к сканеру через COM‑порт (последовательный интерфейс).
  2. Корректно считывает все символы, включая невидимый GS (\x1D в HEX).
  3. Формирует строку в нужном формате для передачи в «Робокасса» и Мой склад.
  4. Вставляет его туда где стоит курсор или имитирует нажатие F8(Мой склад).

Как это работает

  1. Подключите сканер к компьютеру via COM‑порт.
  2. Запустите программу (достаточно двойного клика).
  3. Отсканируйте код маркировки.
  4. Программа:захватит весь поток данных;выделит символ GS;проверит целостность кода;отправит корректную строку в систему.

Ключевое преимущество: не нужно следить за раскладкой клавиатуры или вручную редактировать данные — всё происходит автоматически.

Технический нюанс

Символ GS имеет код $\text{0x1D}$ в шестнадцатеричной системе. Моя программа явно обрабатывает этот байт, сохраняя его в выходной строке. Это гарантирует, что учётная система получит данные в формате, соответствующем требованиям «Честного ЗНАКА» и API «Робокассы».

Результат

Теперь:

  • списание марок происходит без ошибок;
  • экономия времени — нет ручного ввода;
  • снижение риска блокировок из‑за некорректных данных.

Пример работы

Проверить корректность сканирования можно на тестовой странице:https://ladimkkt.ru/gs.html

Там же доступен демо‑режим, чтобы убедиться, что ваш сканер и программа передают GS‑символы правильно.

Итог: простое решение избавило от рутинных операций по настройке сканера и повысило точность учёта маркированных товаров.

Начать дискуссию