Заказать звонок
25.08.2021

Настройка маркировки продукции в 1С для розницы, доработки «Хамелеона» под самописную конфигурацию и маркировка изделий на производстве BAON. Всё ради Честного знака

Заказчик

Компания BAON производит и продает мужскую, женскую,Baon_logo.png детскую одежду, обувь и аксессуары. Магазины компании работают в России, Беларуси и Казахстане. Фабрики по производству одежды находятся в разных странах, бо́льшая часть — в Юго-Восточной Азии. 

Задача

Настроить обмен данными между самописной конфигурацией 1С:Предприятие 8.1 и базой для маркировки товара «Хамелеон», чтобы работать с системой Честный ЗНАК.

Результат

Реализовали интеграцию 1С с «Хамелеоном» и Честным ЗНАКом. За месяц провели маркировку остатков. С 1 января 2021 года магазины BAON начали продавать маркированный товар. Дополнительно сделали доработки 1С для азиатских фабрик, чтобы маркировать товары на производстве. 

Ситуация: зачем понадобилось маркировать товар

С 1 января 2021 года в России некоторые текстильные товары, например, пуховики и блузки, стали маркированными. Это значит, что производитель должен размещать на них код, отсканировав который покупатель может проверить подлинность вещи через систему Честный ЗНАК.

Задачи

Для соблюдения законодательства заказчику понадобился функционал для маркировки товаров, поэтому руководство BAON решило использовать систему «Хамелеон». В августе 2020 заказчик обратился в Neti, чтобы к концу года настроить обмен данными между «Хамелеоном» и текущей базой на платформе 1С:Предприятие 8.1.

Еще через несколько месяцев заказчик попросил промаркировать товарные остатки в магазинах сети и доработать систему «Хамелеон» для зарубежных фабрик, чтобы печатать этикетки сразу на производстве.

Решение

В первую очередь мы проанализировали рабочую конфигурацию заказчика — это была самописная 1С:Предприятие 8.1 без документации. Обычно компании покупают типовую конфигурацию 1С и адаптируют под себя: меняют алгоритмы, разрабатывают формы и отчеты. Однако эта конфигурация была другой — ее писали с нуля под заказчика и дорабатывали в разное время, поэтому документация не сохранилась.


Sveta konsultant-analitik 1S Neti.png
Светлана

Консультант-аналитик 1С


В таких случаях приходится либо догадываться самостоятельно, что и как устроено, либо консультироваться со штатной командой клиента. Например, в типовой конфигурации «1С:Управление торговлей» есть единый документ «Реализация товаров и услуг». В конфигурации заказчика было два документа: «Реализация товаров и услуг» для большинства операций и «Реализация товаров в розницу» для продаж через интернет. Мы опрашивали проектную команду и вникали в конфигурацию, чтобы разобраться, как в системе реализованы бизнес-процессы.

Интеграция 1С и «Хамелеона»

Затем мы проанализировали программу для маркировки товаров «Хамелеон». С этой системой возникли трудности из-за того, что приобретенная версия была «сыроватой». В ней оказалось много ошибок, но у нас не было возможности подождать исправленного релиза. К тому же мы не знали, когда он выйдет, а функционал «Хамелеона» нужен был  срочно. Поэтому прежде чем настраивать обмен данными, сначала пришлось исправить баги, которые мешали работать. 

Однако главная сложность была в другом. Обычно «Хамелеон» устанавливают как дополнение к типовой конфигурации 1С и интеграция происходит по стандартному алгоритму, предусмотренному разработчиками. Но самописная конфигурация 8.1 не поддерживает современные механизмы обмена данными. Интеграцию нужно было создавать с нуля, для этого мы развернули «Хамелеон» как отдельную базу.

Разработка интеграции длилась 4 месяца, с августа по ноябрь. Внешне задача выглядела несложно: в компании BAON есть распределенная база сотен магазинов, в которых менеджеры делают продажи, пробивают чеки и оформляют возвраты. В конце дня все данные загружаются в центральную базу. Нам нужно было отправлять их дальше: сначала в «Хамелеон», а оттуда — в систему Честный ЗНАК. 

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

1s - hameleon - chestnyi znak.png

Обмен данными между 1С в магазинах BAON и системой маркировки Честный ЗНАК

Мы реализовали обмен данными через web-сервис на базе 8.1 и регламентные задания в базе 8.3 «Хамелеона». Обычно регламентные задания запускаются на сервере, а в этом случае нужно было выполнять их на клиенте. Для этого мы использовали планировщик заданий Windows, который в определенное время запускал базу от имени пользователя с административными правами. Когда база открывалась под этим пользователем, на клиенте выполнялись прописанные действия и информация отправлялась в ЦРПТ. 


Sveta konsultant-analitik 1S Neti.png
Светлана

Консультант-аналитик 1С


Разработка интеграции усложнилась тем, что 8.1 — старая конфигурация. Она сильно отличается от более современной и распространенной 8.3. Из-за этого мы потратили на интеграцию больше времени, чем планировали, однако уложились в срок и с 1 января 2021 года магазины BAON начали продавать маркированный товар. Хотя перед этим нам еще пришлось получить коды на все товарные остатки — и это оказалось неожиданно трудоемкой задачей.

Маркировка остатков в магазинах

Обмена данными с ЦРПТ было недостаточно для работы по закону о маркировках. На центральном складе и в магазинах BAON по всей стране хранились сшитые пуховики, блузки и другие вещи. К 1 января на всех этих товарах должны были появиться этикетки с кодами Data Matrix. 

Чтобы промаркировать остатки в магазинах, предстояло:

  1. Физически пересчитать запасы;

  2. Выгрузить данные в «Хамелеон»;

  3. Получить коды из системы Честный ЗНАК;

  4. Распечатать этикетки в магазинах и на складах;

  5. Приклеить все бумажки на соответствующие вещи.

К задаче приступили в ноябре. Сотрудники BAON занимались подсчетом остатков, печатью и наклейкой этикеток, а мы — получением кодов, доработкой «Хамелеона» и разграничением прав доступа, чтобы в магазинах не было путаницы с маркировкой. 

markirovka produktcii v magazinakh.png

Чтобы пройти все этапы маркировки и с 1 января продавать товары с новыми этикетками, у заказчика оставался один месяц

Кроме сжатых сроков, на этом этапе возникло еще несколько трудностей. 

  • Для каждой точки нужно было заказывать свои маркировочные коды. Допустим, в магазинах в Москве и в Тюмени на остатках лежат зеленые пуховики. Этикетки, которые будут наклеены на эти вещи, должны быть разными: в Москве одни, а в Тюмени другие. Хотя и там и там зеленые пуховики одинаковые. 
  • Выпускать этикетки единым списком на все точки было нельзя. Например, в тех же двух магазинах есть по пять розовых блузок. Если просто распечатать 10 кодов на Тюмень и Москву, может возникнуть путаница. Допустим, московский продавец потеряет одну этикетку, пока идет на склад. Увидев, что одной этикетки не хватает, он вернется и заберет ту, что была выпущена для Тюмени. И тогда одна блуза в Тюмени останется без маркировки. Чтобы такого не происходило, магазинам нужно было разграничить права доступа. 
  • Программа должна была запоминать, какие этикетки выводились на принтер, и запрещать печатать их повторно. После использования коды маркировок должны были становиться недоступными, чтобы продавцы по ошибке не могли напечатать одинаковые этикетки и наклеить их всюду: и на розовые блузы, и на зеленые пуховики. 

Все эти процессы пришлось выстраивать с нуля. В «Хамелеоне» и самописной конфигурации не было предусмотрено функционала для таких детальных задач. 

Кроме сложной разработки, мы зависели и от внешних обстоятельств, которые угрожали сорвать сроки. Например, в конце года мог лечь сайт Честного ЗНАКА, когда все ринутся получать коды. Или продавцы с кассирами могли уйти на больничный и некому было бы наклеивать этикетки на продукцию.

На последних этапах подготовки и после запуска проекта мы применяли гибкую методологию разработки. Пользователи давали обратную связь, мы обсуждали новые подзадачи c вариантами их реализации, и заказчик определял приоритеты. Например, пользователи поняли, что в «Хамелеоне» нужна дополнительная информация из внешних Excel-файлов. Тогда мы быстро сделали обработку, чтобы загружать эти данные. 

Или руководство решило проверить, какие магазины распечатали этикетки и в каком количестве. В «Хамелеоне» уже был нужный регистр, но при каждой печати продавцу приходилось вручную ставить флаг об использовании кода. Это отнимало много времени, которого и так не хватало. Мы автоматизировали процесс: теперь коды сразу попадали в регистр, считались использованными и становились недоступными для повторной печати.

Sveta konsultant-analitik 1S Neti.png
Светлана

Консультант-аналитик 1С


На маркировку остатков у нас был всего месяц. Чтобы успеть к 1 января, мы консультировали магазины, помогали менеджерам и оперативно дорабатывали функционал, который сокращал ручной труд продавцов. Мы задокументировали доработки, передали инструкции магазинам и обучили ключевых пользователей, чтобы они затем научили остальных сотрудников. Благодаря слаженной работе с руководством заказчика все получилось и остатки в магазинах и на складах были промаркированы в срок.

Маркировка изделий на производстве

В феврале клиент попросил нас разработать для «Хамелеона» функционал, с помощью которого можно маркировать вещи прямо на фабриках. Это было нужно, чтобы на таможню приходил уже промаркированный товар — иначе владельцу груза грозит административный штраф и арест поставки. 

Чтобы маркировать продукцию на производствах, предстояло запустить фабрики в «Хамелеон». Готового функционала, разумеется, не было: разработчики вряд ли догадывались, что их продуктом будут пользоваться на иностранных производствах. 

Пришлось разрабатывать подсистему фабрик с нуля — с такой задачей мы столкнулись впервые. Пользователи тоже не знали до конца, что должно получиться в результате. Нам описали функциональные требования, мы озвучили предложения по реализации и на этой основе составили ТЗ. Вновь выручала гибкая методология и разработка через тестирование: мы делали, показывали, получали обратную связь и финально до делывали. 

Работа с 1С через ТСД

Обычно 1С устанавливают на компьютер или ноутбук — офисным пользователям это удобно и привычно. Однако фабрики собирались использовать программу по-другому.

Каждую вещь перед упаковкой нужно просканировать. Затем разложить по коробкам и на каждую приклеить большую этикетку с наименованием товаров внутри. Все это делается с помощью мобильного ТСД — терминала сбора данных на ОС Android.

Мы создали обработку специально для маленьких экранов ТСД и перед запуском тестировали ее на своих телефонах, чтобы определить размер кнопок, с которыми удобно работать. 

Устанавливать 1С на терминалы не пришлось. Задачу решили с помощью нашей обработки и удаленного подключения ТСД к серверу 1С. Администратор со стороны BAON настроил специальный регистр, который определяет, какой пользователь заходит в базу. Если это сотрудник офиса, он видит привычный интерфейс и работает как обычно. Если в базу заходит пользователь фабрики, на весь экран открывается обработка с большими кнопками. 

image6.png

Обычный интерфейс, который видит пользователь московского офиса: менеджер или специалист по маркировке. 

image4.png

Мобильный интерфейс на весь экран ТСД, который открывается для сотрудника фабрики.

Видеоинструкции для китайских пользователей 1С

Чтобы научить сотрудников фабрик пользоваться новой доработкой для ТСД, заказчик попросил записать для них видеоинструкцию. Часть производства BAON находится в Китае. Для китайских работников было бы идеально подготовить инструкцию на их родном языке, но, к сожалению, наша команда не говорит по-китайски. 

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

instruktciia 1s TSD.gif

Тогда мы решили озвучить видеоинструкцию. Текст уже был переведен, субтитры — наложены, дело оставалось за голосом. С записью и английским произношением помог наш программист 1С. На все эти работы ушло около 20 часов.

Адаптация фабричных этикеток

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

Сложностей было две: формат бумаги и настройки оборудования. Мы исходили из того, что этикетки будут печататься на стандартных листах размера А4. Но в реальности фабрики использовали другой формат бумаги, привычный им. Кроме того, везде стояло разное оборудование для печати. Из-за этого где-то нарушался отступ между этикетками, а где-то не помещалась вся информация. Мы уточнили правильные размеры бумаги и адаптировали этикетки так, чтобы напечатанные на любом оборудовании они выглядели одинаково. 

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

Чтобы корректно настроить распознавание этикеток, мы проанализировали, на каких символах возникают ошибки, и создали алгоритм, который сравнивал считанный код с кодами в базе «Хамелеон». Если совпадения не было, программа меняла спорные символы и снова искала код в базе. Поиск и сравнение продолжались до тех пор, пока не были перебраны все комбинации символов или не был найден код в базе. 


Sveta konsultant-analitik 1S Neti.png
Светлана

Консультант-аналитик 1С


Проект BAON был интересным и творческим. Заказчик охотно принимал наши идеи — ему нравилось, когда мы сами предлагали не только доработки, но и улучшения внутренних процессов. Конечно, не все шло в работу, но здорово, что можно было делиться инициативами. Клиент тоже доволен сотрудничеством: он поставил нам высокую оценку и оставил хороший отзыв.