При открытии удаленной розничной точки (ларька, небольшого павильона или регионального филиала) перед бизнесом встает задача выбора экономичного, но функционального программного обеспечения. Ситуация усложняется, если в центральном офисе используется устаревшая, но глубоко модернизированная и переписанная конфигурация «1С:Управление торговлей 10.3» (УТ 10.3), обновление которой не планируется. Нам необходимо подобрать оптимальное решение для автоматизации продаж на кассовом месте, ведения простейшего учета и организации надежного обмена данными.
В этой статье мы подробно разберем, какие программные продукты подходят для решения этой задачи, проанализируем их сильные и слабые стороны, а также рассмотрим технические нюансы настройки обмена данными между современной базой на розничной точке и кастомной центральной базой.
---
Рассмотрим основные варианты программного обеспечения, которые упоминались в процессе обсуждения нашими коллегами, и оценим их применимость для ларька-филиала.
Это одно из наиболее популярных и бюджетных решений для автоматизации небольших магазинов. Программа полностью закрывает потребности розничной точки: поддерживает подключение любого торгового оборудования (онлайн-кассы, сканеры штрихкодов, эквайринговые терминалы), позволяет контролировать остатки и вести учет продаж. Базовая версия стоит недорого и не требует регулярных обязательных платежей за обновления.
УНФ — это мощный инструмент, однако для маленького розничного павильона его функционал избыточен. Данное решение целесообразно выбирать только в том случае, если на филиале помимо торговли планируется оказывать услуги, выполнять работы или вести учет несложного производства и трудозатрат персонала.
Специализированное кассовое ПО, работающее независимо от платформы 1С на самом рабочем месте кассира. Оно крайне нетребовательно к ресурсам компьютера и исключительно стабильно. Обмен с «1С:УТ 10.3» в этом случае настраивается через текстовые файлы обмена (формат CSV/TXT). Это отличный вариант, но он требует покупки лицензии Frontol и доработки выгрузки/загрузки на стороне «1С» под этот формат.
Программа, ориентированная на розничную торговлю (одежда, обувь и др.). Обладает широким маркетинговым функционалом и встроенной поддержкой торгового оборудования. Однако интеграция со специфической «УТ 10.3» потребует написания собственных обработок загрузки/выгрузки данных через файлы Excel или CSV, что может усложнить поддержку системы.
Хороший вариант для минимизации затрат на оборудование (можно использовать планшет или компактный смарт-терминал). Прямой обмен с переписанной «УТ 10.3» здесь настроить крайне сложно, поэтому чаще всего приходится использовать промежуточное звено в виде облачного приложения «1С:Касса» или платных интеграционных модулей из магазинов приложений (в случае с Эвотор).
Проанализировав все варианты, мы приходим к выводу, что оптимальным выбором по соотношению цена/возможности является «1С:Розница Базовая». Разберем подробнее, как подружить её с нашей переписанной «УТ 10.3».
---
Несмотря на свою привлекательность, использование базовой версии «1С:Розницы» накладывает жесткие технические ограничения, о которых необходимо знать заранее:
---
Поскольку центральная база «УТ 10.3» существенно доработана, типовые правила обмена, идущие в комплекте поставки программ, использовать не удастся. Нам потребуется настроить индивидуальные правила обмена с помощью конфигурации «1С:Конвертация данных 2.1» (КД 2.1).
Рассмотрим пошагово процесс подготовки и настройки обмена данными.
Для начала нам необходимо выгрузить структуру метаданных обеих конфигураций. Для этого используется обработка MD83Exp.epf (для Розницы) и MD81Exp.epf или аналогичная для обычных форм (для УТ 10.3). Полученные файлы XML со структурами баз загружаются в базу «Конвертация данных 2.1».
В «Конвертации данных» мы создаем проект настройки правил обмена «УТ 10.3 -> Розница» (выгрузка товаров, цен, штрихкодов) и обратно «Розница -> УТ 10.3» (загрузка отчетов о розничных продажах и возвратов).
Особое внимание уделим сопоставлению ключевых справочников. Рассмотрим пример настройки правила для справочника номенклатуры. Синхронизацию лучше всего производить по уникальному идентификатору (GUID) или по коду, если GUID по каким-то причинам не совпадает:
// Пример обработчика "При загрузке" для сопоставления номенклатуры по коду,
// если поиск по Уникальному Идентификатору не дал результатов
Если Не ЗначениеЗаполнено(Ссылка) Тогда
НайденнаяСсылка = Справочники.Номенклатура.НайтиПоКоду(СвойстваПоиска["Код"]);
Если ЗначениеЗаполнено(НайденнаяСсылка) Тогда
Ссылка = НайденнаяСсылка;
КонецЕсли;
КонецЕсли;
Чтобы не выгружать всю базу товаров каждый раз, в центральной «УТ 10.3» необходимо использовать механизм планов обмена. Мы создаем новый план обмена (например, ПланОбмена.ОбменСЛарьком) и включаем в состав его авторегистрации нужные справочники (Номенклатура, ЦеныНоменклатуры) и документы.
Для выгрузки только измененных данных мы будем программно обращаться к зарегистрированным изменениям на узле плана обмена:
УзелОбмена = ПланыОбмена.ОбменСЛарьком.НайтиПоКоду("FIL01");
ВыборкаИзменений = ПланыОбмена.ВыбратьИзменения(УзелОбмена, НомерСообщения);
// Создаем запись XML для выгрузки данных
ЗаписьXML = Новый ЗаписьXML;
ЗаписьXML.ОткрытьФайл("C:\Exchange\ToKiosk.xml");
ЗаписьXML.ЗаписатьОбъявлениеXML();
ЗаписьСообщения = ПланыОбмена.СоздатьЗаписьСообщения();
ЗаписьСообщения.НачатьЗапись(ЗаписьXML, УзелОбмена);
Пока ВыборкаИзменений.Следующий() Цикл
Данные = ВыборкаИзменений.Получить();
// Выполняем выгрузку объекта по правилам обмена
ВыгрузитьОбъектПоПравилам(Данные, ЗаписьСообщения);
КонецЦикла;
ЗаписьСообщения.ЗакончитьЗапись();
ЗаписьXML.Закрыть();
Для передачи файлов XML между офисом и удаленным ларьком можно использовать три основных канала:
Поскольку в базовой версии «Розницы» возможности автоматического запуска регламентных заданий могут быть ограничены, запуск обмена на стороне ларька настраивают с помощью планировщика задач Windows. Создается bat-файл следующего содержания:
"C:\Program Files\1cv8\8.3.XX.XXXX\bin\1cv8.exe" ENTERPRISE /F "C:\1C_Bases\RetailKiosk" /N "ExchangeUser" /P "YourPassword" /Execute "C:\1C_Services\AutoExchange.epf" /C "StartExchange"
Внешняя обработка AutoExchange.epf при запуске с параметром запуска "StartExchange" выполняет загрузку пришедшего файла XML из офиса, формирует ответный файл с продажами за день и автоматически закрывает сеанс работы 1С.
---
Мы проанализировали задачу автоматизации ларька-филиала и выяснили, что связка «1С:Управление торговлей 10.3» и «1С:Розница Базовая» является наиболее экономически оправданной и жизнеспособной. Несмотря на ограничения базовой версии розничной программы (отсутствие РИБ и COM-соединения), обмен успешно настраивается через файлы XML с использованием правил конвертации данных 2.1.
Для успешной реализации проекта нам необходимо:
Такой подход позволит сэкономить бюджет на покупке дорогостоящих лицензий версии ПРОФ и при этом получить полностью автоматизированную систему учета продаж на удаленном филиале.