Всем привет!
Предыстория: 10 лет назад я поставил клиенту фасовочные весы Масса ВПМ-15.2-Ф (весы с печатью этикеток). Настроил разные префиксы на весах - для штучных товаров "2", для весовых товаров "1", настроил на весах определенный формат штрихкода, содержащий 6 символов кода товаров (по сути это ПЛУ) и количество товара. Сам штрихкод после фасовки товара в пакет наклеивается этикеткой на пакет.
Далее покупатель из отдела крепежа идет на кассу. Настроил в 1С расшифровку штрихкода на кассе - по штрихкоду этикетки с фасовочного пакета определяю номенклатуру и количество, подставляю в окно кассира, после чего кассир получает оплату и пробивает чек ККМ на кассе. Прошло много лет, клиент обновил весы - купил корейского производителя CAS.
Бизнес-процесс не изменился: все так же покупателям фасовались в пакетики гвозди и саморезы, поштучно и по килограммам. После установки и настройки весов CAS обнаружили, что число знаков (разрядов) для указания количества штучного товара ограничено двумя знаками (разрядами) - то есть максимально можно указать на весах 99 штук, а 1000 штук уже нельзя.
Для штучных и весовых товаров в настройках весов CAS CL-3000 было задано два штрихкода (см. рис.).
Недолго думая, было предложено использовать следующий способ для продажи штучных товаров: в 1С УТ 10.3 для штучных товаров необходимо указывать вес 1 шт. При этом пришлось расширить разрядность веса до 5 знаков после запятой - для примера 50 шт весят 72 грамма, а учет весовых товаров ведется в килограммах (см. рис.)
Далее для каждого штучного товара при выгрузке из 1С в весы создается две записи в базе весов: первая с ПЛУ, к примеру, как в 1С "84218", вторая искусственно созданная с ПЛУ "842180". К каждому штучному товару выгружается две записи, вторая с добавлением нуля на конце ПЛУ.
Так как все товары имели пятизначный ПЛУ, а формат штрихкода позволял задавать шестизначный ПЛУ, то такой способ имел место быть и позволил для первых записей выгружать цену за 1 шт, для вторых записей - цену за 1 кг. Пересчет цены для "кг" происходит в обработке выгрузки. Скажу также наперед, что я реализовал выгрузку сведений сначала в эксель, далее этот файл-эксель импортируется через программу CL-Works в весы ("CL-Works Pro" - название на сайте производителя).
Почему выбран именно такой способ ? - Ответ потянет на отдельную статью, которую писать долго и много, поэтому точечно отвечу в комментариях к данной статье на любые вопросы. Также скажу, что если вы смогли реализовать бизнес-процесс через файл-эксель, значит вы сможете следующим шагом реализовать выгрузку напрямую в весы через драйвер весов - для понимания, тестирования и отладки есть инструкции и описания работы с драйвером весов для разработчиков 1С.
Возвращаясь к процессу продажи саморезов и другого крепежа - теперь продавец-менеджер может саморезы продавать как поштучно, так и взвесив определенное кол-во грамм (например 300 грамм, 500 грамм, 1 кг). По формату штрихкода (см. рис. выше) вес должен уложиться в 4 знака WWWW (при этом 3 знака предназначено после запятой), поэтому по инструкции решено взвешивать саморезы только до 9 кг, чтобы можно было распечатать например 9,200 кг - на штрихкоде будет "9200". Сами весы позволяют взвешивать максимум до 15 кг, поэтому можно делить фасовку на два пакета, распечатывать этикетку на каждый пакет.
Далее на кассе штрихкод сканированием расшифровывается и попадает в окно кассира как и ранее.
Собственно, это и есть тот самый хитрый способ интеграции весов CAS CL-3000 с УТ 10.3. Обработка для выгрузки сведений в весы применяется как внешняя - открывается через справочник Внешние обработки или через меню Файл-Открыть. Разработана на платформе 1С:Предприятие 8.3 (8.3.22.1923), для нетиповой (доработанной) программы "Управление торговлей", редакция 10.3 (10.3.47.2).
К слову сказать, база 1С расположена удаленно на сервере, весы изначально настраивались у меня на ноутбуке - для такого сценария я сначала выгрузил сведения в служебную таблицу mxl, далее из нее "собрал" файл эксель. Для этих отладочных целей настроил в обработке выгрузки отдельный флаг и сценарий. Оставлю для примера демонстрации.
Также к слову сказать, без ключа HASP для компоненты 1С (1С драйвер весов CAS с печатью (driver №4) - название на сайте производителя), представленной на сайте производителя https://cascis.ru/podderzhka/programmnoe-obespechenie , - можно использовать при выгрузке на весы до 10 товаров (до 10 ПЛУ) - можно тестировать любые функции согласно инструкции по компоненте. До 10 товаров с помощью этой компоненты я тестировал выгрузку напрямую в весы - имеется флаг и сценарий выгрузки (флаг "Прямое подключение к весам (имеется ключ HASP)").
Также скажу, что любой разработчик может написать свой загрузчик напрямую в весы, используя стандартный драйвер весов (CL Driver (driver №3) - это название на сайте производителя). После установки драйвера в папке "C:\Program Files (x86)\KST\Весы_с_печатью_этикеток" формируются папки с инструкциями и примерами - для разработчиков в том числе на 1С (см. рис.)
Собственно, это все. Спасибо за внимание!
Всем благ и всего хорошего!
С пользой для клиентов, Рустем