В конфигурации 1С:Управление торговлей 11 реализована встроенная возможность вывода штрихкодов на печатные формы накладных, заказов, счетов и других документов. Однако у пользователей и специалистов часто возникает вопрос: как именно закодированы эти данные, сохраняются ли они в базе данных и каким образом система находит нужный документ при считывании штрихкода сканером.
Разберем детально, как устроена подсистема штрихкодирования печатных форм, как происходит процесс идентификации и какие варианты поиска документов доступны пользователям.
Проанализируем структуру штрихкода, который формируется на типовых печатных формах:
Code 128 или Code 39.GUID (УникальныйИдентификатор) конкретного объекта базы.Рассмотрим порядок работы со сканером штрихкодов в типовом интерфейсе программы. Механизм поиска зависит от режима работы сканера:
Если сканер настроен в системе как торговое оборудование (подключение через виртуальный COM-порт, драйвер 1С или Native API), сканирование перехватывается программно. Для поиска документа достаточно открыть соответствующий журнал или форму списка (например, «Документы продажи», «Заказы клиентов» или общий журнал документов) и отсканировать штрихкод с бумажного листа. Форма списка перехватит событие от оборудования, декодирует штрихкод, автоматически спозиционирует курсор на найденной строке или откроет форму документа.
Если сканер подключен в разрыв клавиатуры без установки специализированных драйверов торгового оборудования, автоматический перехват событий управляемой формой не происходит. В этом случае в открытой форме списка необходимо нажать функциональную клавишу F7 (или нажать кнопку «Поиск по штрихкоду»), после чего отсканировать штрихкод в появившееся диалоговое окно ввода.
Выясним причину, по которой поиск по штрихкоду может не срабатывать «из любого места» программы:
В архитектуре управляемого интерфейса 1С внешнее событие от подключаемого оборудования направляется исключительно в то окно (форму), которое в текущий момент является активным и подписано на обработку событий сканера. Если на экране открыт несвязанный справочник или рабочий стол, в котором не предусмотрен обработчик оповещения от сканера, считывание штрихкода не приведет к автоматическому открытию документа.
Таким образом, для типового поиска необходимо предварительно открыть журнал документов соответствующего раздела учета.
Если требуется организовать массовую обработку первичных документов (например, контроль возврата подписанных накладных на склад или в бухгалтерию, экспресс-приемку или сверку архива), рассмотрим практические варианты решения задачи:
Разрабатывается внешняя обработка или расширение конфигурации, форма которого открыта на рабочем месте оператора и постоянно ожидает событий от сканера. При считывании кода обработка программно выполняет декодирование идентификатора, мгновенно открывает документ либо автоматически устанавливает признак (например, статус «Подписан покупателем» или признак наличия оригинала).
Для задач, где помимо ссылки на документ требуется передавать расширенный состав реквизитов (организацию, ИНН контрагента, дату, сумму с НДС), типовые макеты дополняют печатью QR-кодов, считываемых современными 2D-сканерами штрихкодов.