Стоит ли отключать РИБ в 1С:Управление торговлей 11 при работе с алкоголем (ЕГАИС) и как правильно провести обновление

Программист 1С v8.3 (Управляемые формы) 1С:Управление торговлей Управленческий учет Торговля и дистрибуция
← На главную

При сопровождении розничных сетей, торгующих алкогольной продукцией, администраторы и разработчики 1С часто сталкиваются с дилеммой: использовать распределенную информационную базу (РИБ) или перейти на стандартную синхронизацию данных (например, через формат EnterpriseData). Особенно остро этот вопрос встает в моменты, когда конфигурация «1С:Управление торговлей» (УТ 11) сильно устарела и ее необходимо обновить на несколько релизов вперед в сжатые сроки.

В этой статье мы подробно разберем, почему попытка отказаться от РИБ в пользу обычного обмена при наличии ЕГАИС может парализовать работу торговых точек, как правильно и быстро обновить конфигурацию РИБ без пересоздания узлов, как организовать накопительные скидки в реальном времени и как избежать "отвала" кассового оборудования после обновления платформы и БПО.

РИБ против типовой синхронизации: почему для алкогольной розницы нет альтернативы

На первый взгляд идея отказаться от РИБ выглядит заманчиво: администрировать независимые базы проще, а обновления конфигурации на точках можно делать локально, не дожидаясь синхронизации с главным офисом. Однако при детальном анализе структуры данных ЕГАИС в 1С:УТ 11 мы столкнемся с критическими ограничениями типового обмена:

  1. Ограничение состава отправки в EnterpriseData. Типовые правила обмена общего назначения ориентированы на перенос коммерческих документов (заказы, реализации, поступления). Специализированные сущности ЕГАИС, такие как Документ.ТТНВходящаяЕГАИС, Документ.ТТНИсходящаяЕГАИС, Документ.АктСписанияЕГАИС, а также регистры сведений с акцизными марками и классификаторы ЕГАИС, попросту не входят в стандартные планы обмена. Перенастройка обмена потребует масштабного дописывания правил синхронизации вручную, что нивелирует всю экономию времени.
  2. Локальная работа с УТМ на точках. Каждая розничная точка имеет собственный физический адрес, уникальный КПП и код FSRAR_ID в системе ЕГАИС. Обмен с государственным сервером происходит локально через установленный на точке Универсальный транспортный модуль (УТМ). Чтобы центральный офис видел актуальные остатки алкоголя и статусы подтверждения ТТН, эти документы должны беспрепятственно мигрировать между базами. РИБ дублирует конфигурацию "один в один" и переносит любые изменения метаданных без ограничений.
  3. Синхронизация справочников и сопоставлений. Для корректной работы ЕГАИС критически важно, чтобы справочники Справочник.КлассификаторАлкогольнойПродукцииЕГАИС, Справочник.КлассификаторОрганизацийЕГАИС и регистр сопоставления номенклатуры 1С с алкогольной продукцией были абсолютно идентичны во всей сети. В РИБ синхронизация этих данных происходит "из коробки" на уровне платформы.

Таким образом, для розничной сети с алкогольной продукцией РИБ является оптимальным и практически безальтернативным решением. Отключение РИБ приведет к потере контроля над алкогольной отчетностью в центральной базе.

Технология пошагового обновления РИБ без пересоздания периферийных узлов

Распространенная ошибка начинающих администраторов — попытка пересоздать начальные образы подчиненных узлов при каждом крупном обновлении конфигурации. Для сети из 5 и более точек это превращается в кошмар: затираются индивидуальные настройки торгового оборудования, авторизации кассиров и локальные журналы. Рассмотрим правильный алгоритм обновления РИБ на примере перехода через 5 релизов:

  1. Создание резервных копий. Обязательно делаем полные бэкапы центральной базы и всех периферийных баз (файлы *.1cd или бэкапы СУБД) перед началом любых манипуляций.
  2. Последовательное обновление центральной базы. В Конфигураторе центрального узла последовательно накатываем обновления до целевого релиза. После каждого промежуточного обновления обязательно запускаем базу в режиме "Предприятие" под правами администратора, чтобы выполнились отложенные обработчики обновления данных. Убедиться в их завершении можно с помощью вызова стандартных процедур БСП:

// Пример проверки завершения отложенного обновления в 1С
Если Не ОбновлениеИнформационнойБазыСлужебный.ОбновлениеИнформационнойБазыЗавершено() Тогда
    ЗаписатьЛогСобытий("Отложенное обновление еще выполняется. Ожидайте...");
КонецЕсли;
  1. Выгрузка изменений конфигурации в узлы. После того как центральная база успешно обновлена и все обработчики завершили работу, запускаем сеанс обмена данными. Платформа автоматически зарегистрирует изменение конфигурации для всех подчиненных узлов и запишет обновленную структуру метаданных в файлы обмена.
  2. Прием обновления на точках. На периферийной точке запускаем сеанс обмена. База примет файл обмена, обнаружит изменение конфигурации и выдаст предупреждение о невозможности продолжения работы без обновления конфигурации базы данных.
  3. Обновление конфигурации базы данных на периферии. Администратору или инженеру на точке достаточно запустить Конфигуратор периферийной базы и нажать клавишу F7 (Обновить конфигурацию базы данных). Конфигурация моментально приведется в соответствие с центральной базой. Накатывать промежуточные файлы обновлений (.cfu) на точках не требуется — платформа передает уже готовую конфигурацию из центрального узла.
  4. Первый запуск «Предприятия» на точках. При первом запуске подчиненного узла начнется выполнение локальных обработчиков обновления. Если торговая точка уже открылась и кассирам нужно срочно пробивать чеки, можно временно обойти длительный запуск системы, запустив 1С с параметром командной строки:

1cv8.exe ENTERPRISE /F "ПутьКБазе" /C ОтключитьЛогикуНачалаРаботыСистемы

Этот параметр позволит быстро запустить РМК (рабочее место кассира) для отпуска товара, а обработку фоновых данных перенести на нерабочее вечернее время.

Организация накопительных скидок: онлайн-сервер лояльности вместо обмена регистрами

Передача информации о накопленных скидках и бонусах через файлы обмена РИБ имеет существенный недостаток — асинхронность. Если покупатель совершил покупку в Магазине №1, информация об изменении баланса его карты попадет в центральную базу только после сеанса обмена, а в Магазин №2 — еще позже. Если клиент решит посетить второй магазин через полчаса, система выдаст ему старый баланс бонусов, что вызовет обоснованный негатив.

Для решения этой проблемы в современных версиях «1С:Управление торговлей» реализован механизм Сервера лояльности. Разберем по шагам, как настроить онлайн-проверку скидок:

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

Почему отваливаются кассы (ККТ) после обновления и как это предотвратить

Опасения разработчиков по поводу работоспособности торгового оборудования после обновления конфигурации абсолютно обоснованы. В состав новых релизов УТ 11 практически всегда входит обновленная версия БПО (Библиотека подключаемого оборудования). Это влечет за собой следующие риски:

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

  1. Заранее разверните копию базы и посмотрите в разделе Администрирование -> Подключаемое оборудование требования новой версии БПО к драйверам ваших моделей ККТ.
  2. До начала обновления баз обновите локальные драйверы производителей (АТОЛ, Штрих-М и др.) на кассовых компьютерах во всех магазинах до актуальных версий.
  3. Убедитесь, что у пользователей касс есть права на запись в папку локального шаблона 1С и в каталог временных файлов операционной системы (%TEMP%).
  4. Произведите тестовое пробитие чека (например, чека коррекции или чека открытия смены) на одном из обновленных узлов перед запуском системы в промышленную эксплуатацию.
← На главную