Как организовать автоматическое создание документов в 1С при взвешивании продукции на весах?

Программист 1С v8.3 (Управляемые формы) 1C:Бухгалтерия Управленческий учет Промышленность, строительство и АПК
← На главную

При автоматизации производственных участков (фасовка, выпуск полуфабрикатов или готовой продукции) часто возникает задача: оператор кладет товар на платформу весов, выбирает позицию номенклатуры (или нажимает кнопку PLU), а система 1С должна моментально зафиксировать вес, автоматически создать и провести документ выпуска или перемещения, а также распечатать маркировочную этикетку.

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

Ограничения типовой подсистемы подключаемого оборудования (БПО)

Рассмотрим, как 1С по умолчанию работает с весовым оборудованием. В типовых конфигурациях (включая 1С:Бухгалтерию, 1С:УНФ, 1С:ERP) устройства разделены на два обособленных типа:

  1. Электронные весы (онлайн): работают в режиме «запрос–ответ». 1С является инициатором связи: при нажатии кнопки в интерфейсе программа обращается к драйверу, опрашивает порт и получает текущее значение стабильного веса. При этом весы не умеют самостоятельно передавать код товара или инициировать запись.
  2. Весы с печатью этикеток (офлайн): работают в режиме предварительной загрузки справочника товаров (PLU, цены, наименования, сроки годности). Оператор нажимает кнопку на весах, устройство автономно печатает этикетку, но при этом в режиме реального времени не отправляет в 1С внешнее событие о факте взвешивания.

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

Способ 1. Обработка внешних событий через драйвер весов (RS-232 / TCP)

Проанализируем классический вариант прямой связи весов с управляемой формой 1С. Для исключения постоянных циклов опроса (обработок ожидания, которые создают лишнюю нагрузку на клиентский интерфейс) используется драйвер весов с поддержкой внешних событий.

Разберем по шагам схему работы этого механизма:

  1. Весы подключаются к рабочему месту через интерфейс RS-232 (или виртуальный COM-порт по USB/Ethernet).
  2. В свойствах оборудования настраивается режим передачи данных по нажатию кнопки фиксации на весовом терминале или непрерывный поток данных.
  3. Внешняя компонента драйвера при получении валидной посылки от весов генерирует в 1С внешнее событие.
  4. В форме АРМ 1С срабатывает процедура ОбработкаВнешнегоСобытия, которая получает строку данных, извлекает вес и запускает процедуру проведения документа.

Посмотрим на пример обработки события в модуле формы АРМ:


&НаКлиенте
Процедура ОбработкаВнешнегоСобытия(Источник, Событие, Данные)
    
    // Проверяем, что событие пришло от подключенных весов
    Если Источник = "ВесыЭлектронные" И Событие = "ПолученВес" Тогда
        
        ТекущийВес = Число(Данные);
        Если ТекущийВес > 0 Тогда
            // Создаем документ выпуска и формируем печатную форму
            СоздатьДокументВыпускаНаСервере(ВыбраннаяНоменклатура, ТекущийВес);
        КонецЕсли;
        
    КонецЕсли;
    
КонецПроцедуры

Способ 2. Вычитка журнала транзакций (режим весового терминала сбора данных)

Если используются весовые терминалы с собственной клавиатурой товаров (PLU) и встроенной памятью, взвешивание фиксируется во внутреннем журнале операций устройства.

Схема реализации:

  1. Справочник номенклатуры с кодами PLU предварительно прогружается в весы по локальной сети.
  2. Оператор выбирает товар на клавиатуре весов и выполняет взвешивание. Весы сохраняют строку транзакции: дату, время, код PLU и зафиксированный вес.
  3. В 1С специальный фоновый процесс или обработчик через SDK/COM-объект производителя весов с заданной периодичностью опрашивает память терминала, вычитывает новые строки транзакций, создает на их основании документы выпуска и очищает журнал обработанных записей.

Способ 3. Организация АРМ через раздельное оборудование (рекомендуемый подход)

На производственных участках с высокой интенсивностью труда моноблочные весы с кнопками PLU часто оказываются менее гибкими в обслуживании: клавиатура терминала ограничена по числу кнопок, а встроенный принтер этикеток обладает невысоким ресурсом термоголовки.

Наиболее надежной и легко масштабируемой признана раздельная схема рабочего места:

  1. Состав рабочего места:
    1. Простые платформенные весы (без принтера и встроенной логики PLU), подключенные по COM-порту.
    2. Компьютер или моноблок с сенсорным экраном (Touch screen).
    3. Отдельный настольный термотрансферный принтер этикеток.
    4. Сканер штрихкодов.
  2. Сценарий работы оператора:
    1. Оператор выбирает выпускаемый полуфабрикат нажатием крупной плитки на сенсорном экране АРМ или считывает штрихкод со сменного задания/технологической карты.
    2. 1С опрашивает подключенные весы через стандартный драйвер подсистемы подключаемого оборудования (БПО) и считывает точную зафиксированную массу.
    3. 1С мгновенно создает и проводит требуемый учетный документ (отчет производства за смену, выпуск продукции или перемещение).
    4. 1С напрямую отправляет сформированную этикетку с уникальным штрихкодом партии на отдельный принтер.

Преимущества раздельной схемы:

  1. Полный контроль логики в 1С: любые изменения в реквизитах, проверках остатков, спецификациях и шаблонах этикеток настраиваются непосредственно в конфигурации без перепрошивки оборудования.
  2. Отказоустойчивость: при выходе из строя весовой платформы или принтера заменяется только один недорогой компонент, а не дорогостоящий весовой комплекс целиком.
  3. Неограниченная номенклатура: нет лимита на количество кнопок быстрого доступа (PLU), так как интерфейс подбора отображается на мониторе.
← На главную