Как правильно внедрить штрихкодирование в 1С:Торговля и Склад 7.7 при работе через RDP?

Программист 1С v7.7 1С:Управление торговлей Управленческий учет Торговля и дистрибуция
← На главную

Перевод торгового учета на штрихкодирование — это не просто покупка сканеров, а комплексная задача, затрагивающая бизнес-процессы предприятия, архитектуру базы данных 1С и технические настройки терминального сервера. Разберем подробную методику внедрения штрихкодирования в конфигурации 1С:Торговля и Склад 7.7 при работе пользователей в сеансах RDP (Windows Server 2003 / Windows XP / Windows 7).

Организация регламента учета: почему штрихкоды не отменяют ввод накладных

Рассмотрим частую ошибку руководства и бухгалтерии: расчет на то, что сканирование товаров при поступлении позволит полностью отказаться от ввода приходных накладных. Штрихкод содержит только идентификатор товара, но не передает данные о поставщике, номере документа, закупочной цене или серии.

Если доверить создание новых позиций номенклатуры и приходных документов продавцам на точках без жесткого контроля, справочник товаров быстро засорится дублями («Гайка М6», «гайка м6», «Гайка М-6»). В результате база данных станет непригодной для учета остатков.

Для правильного построения бизнес-процесса выполним следующие шаги:

  1. Назначение ответственного за справочник номенклатуры: Создание новых карточек товаров должен выполнять только один сотрудник (например, категорийный менеджер или оператор). Позиции создаются по четким стандартам наименования.
  2. Автоматизация прихода через загрузку из файлов: Вместо ручного набора накладных следует договориться с поставщиками об электронной накладной (в формате Excel или XML). Загрузка накладной происходит автоматически по связке КодЗапчасти + Производитель (OEM-артикул).
  3. Привязка штрихкодов при приемке: Когда новый товар впервые приходит на склад, оператор или кладовщик один раз сканирует заводской штрихкод и связывает его с созданной карточкой номенклатуры. Все последующие приходы и продажи этой позиции будут обрабатываться автоматически по штрихкоду.

Особенности работы сканеров штрихкодов через RDP

При работе в терминальном режиме (RDP) возникают специфические сложности со считыванием кодов, особенно на устаревших клиентских ОС (Windows XP):

1. Клавиатурный режим (USB HID): Если сканер подключен «в разрыв клавиатуры», при сканировании передаются нажатия клавиш. При активной русской раскладке на клиентской машине штрихкод передается искаженными символами (буквами вместо цифр). Кроме того, RDP-клиент под Windows XP из-за сетевых задержек может «ронять» отдельные символы штрихкода.

2. Режим эмуляции COM-порта (Virtual COM): Это самый надежный способ работы. Сканер переводится специальным управляющим штрихкодом из инструкции в режим VCOM, а на клиенте устанавливается драйвер виртуального последовательного порта. В настройках RDP-клиента включается перенаправление (проброс) последовательных портов.

Проверить успешность перенаправления порта на сервере Windows Server 2003 можно в командной строке сервера:

change port /query

Подключение и настройка внешних компонент в 1С 7.7

Для корректного перехвата событий сканирования в 1С:Торговля и Склад 7.7 используется внешняя компонента Scanopos.dll (или Scaner1C.dll). Обработка сканирования выполняется в глобальном модуле или форме документа через стандартную процедуру ОбработкаВнешнегоСобытия.

Рассмотрим порядок настройки программного обеспечения:

  1. Скопируйте файл Scanopos.dll в каталог установки 1С или системную папку сервера System32 (для 64-битных ОС — SysWOW64).
  2. Зарегистрируйте внешнюю компоненту в командной строке от имени администратора: regsvr32 "C:\Program Files\1Cv77\BIN\Scanopos.dll"
  3. Для печати ценников со штрихкодами из 1С 7.7 на рабочих станциях с Windows 7 необходимо аналогично зарегистрировать компоненту 1C_BAR.DLL или Barcode.ocx.
  4. В самом сканере запрограммируйте суффикс завершения ввода — символ перевода каретки (CR / LF, ASCII-коды 13 или 10). Без суффикса 1С не сможет определить конец считывания штрихкода.

Пример кода для обработки полученного штрихкода в форме документа:


Процедура ОбработкаВнешнегоСобытия(Источник, Событие, Данные)
    Если Событие = "BarCodeRead" Тогда
        Штрихкод = СокрЛП(Данные);
        
        // Поиск номенклатуры в подчиненном справочнике штрихкодов
        СпрШК = СоздатьОбъект("Справочник.ШтрихКоды");
        Если СпрШК.НайтиПоРеквизиту("ШтрихКод", Штрихкод, 1) = 1 Тогда
            НоменклатураСсылка = СпрШК.Владелец;
            ЕдиницаИзмерения  = СпрШК.Единица;
            
            // Добавление найденного товара в табличную часть
            ОбработатьСканированныйТовар(НоменклатураСсылка, ЕдиницаИзмерения);
        Иначе
            Предупреждение("Штрихкод " + Штрихкод + " не найден в базе!");
        КонецЕсли;
    КонецЕсли;
КонецПроцедуры

Рекомендации по выбору торгового оборудования

Проанализируем проверенные модели оборудования и нюансы маркировки различных групп товаров в автомагазине:

  1. Проводные сканеры: Модели Honeywell (Metrologic) MS5145 Eclipse (USB с возможностью работы в эмуляции COM) и OL-S670 показывают стабильную работу в RDP-сессиях и поддерживаются стандартными драйверами 1С.
  2. Беспроводные сканеры: Для крупногабаритных или тяжелых деталей (например, грузовые диски, аккумуляторы, элементы кузова) рекомендуется использовать радиосканеры или Bluetooth-сканеры с базой, подключенной к ПК. Это избавит сотрудников от необходимости подтаскивать товар к кассовой зоне.
  3. Маркировка мелкого товара (крепеж, ремкомплекты):

    Мелочевку (гайки, шайбы, клипсы) обычно не продают поштучно. Разумнее выполнять фасовку по 5, 10, 25 штук в прозрачные пакетики. Для такой фасовки генерируется внутренний штрихкод (диапазон EAN-13 с префиксом 20–29), который распечатывается на термоэтикетке и клеится на пакет. В качестве альтернативы на прилавок выкладывается планшет с напечатанными штрихкодами и наименованиями штучного крепежа.

Соблюдение предложенного алгоритма позволяет избавиться от хаоса в номенклатуре, ускорить процесс подбора товаров в чеки и обеспечить корректную работу оборудования через RDP на платформе 1С 7.7.

← На главную