Программный продукт 1С:РМК представляет собой современный «легкий» фронт-офис, который все чаще используется в розничных сетях. Однако при масштабировании бизнеса системные администраторы сталкиваются с серьезной проблемой: в отличие от классической «1С:Розницы», в «1С:РМК» отсутствует механизм РИБ (распределенных информационных баз). Это означает, что привычный способ «спустить» обновление конфигурации из центрального узла на периферийные кассы здесь не работает. Разберем подробно, какими методами можно решить задачу автоматизации обновления парка кассовых компьютеров.
Проанализируем сначала, почему разработчики отказались от РИБ в этой конфигурации. 1С:РМК проектировалась как максимально независимое приложение, которое обменивается данными с управляющей системой (например, «1С:Управление торговлей» или «1С:УНФ») по протоколу EnterpriseData. Поскольку обмен идет через универсальный формат данных, жесткая привязка версий конфигураций (как в РИБ) не требуется. Это дает свободу, но накладывает обязанности по самостоятельному обновлению исполняемого кода на каждой точке.
Самый простой и надежный способ автоматизации — использование параметров командной строки платформы «1С:Предприятие». Мы можем создать сценарий, который будет проверять наличие нового файла конфигурации в сетевом каталоге и инициировать обновление. Рассмотрим пример логики работы такого скрипта.
Для реализации нам понадобится файл конфигурации (.cf) или файл обновления (.cfu), выложенный в доступное для кассовых компьютеров место (например, сетевая папка через VPN или загрузка через FTP). Разберем пример командной строки для выполнения этой задачи:
"C:\Program Files\1cv8\common\1cestart.exe" DESIGNER /F "C:\Bases\RMK_Base" /N "Admin" /P "Password" /UpdateCfg "\\Server\Share\1c_updates\1cv8.cf" /UpdateDBCfg /Out "C:\Logs\update_log.txt"
В данном примере мы запускаем 1С в режиме DESIGNER (Конфигуратор), указываем путь к базе кассы, логин и пароль администратора. Параметр /UpdateCfg указывает путь к новому файлу конфигурации, а /UpdateDBCfg применяет изменения к базе данных. Проанализируем важный момент: для того чтобы кассир не видел лишних окон, такие скрипты лучше всего запускать в планировщике задач Windows перед открытием смены или при загрузке ОС.
Если в сети десятки или сотни магазинов, писать скрипты вручную становится трудозатратно. Рассмотрим применение специализированного ПО, такого как «1С:Обновлятор». Эта утилита позволяет централизованно управлять списком баз и автоматизировать процесс их обновления. Выясним основные преимущества этого подхода:
Для работы в сети магазинов часто настраивается агентская схема, где на каждом кассовом ПК стоит настроенный планировщик, который «подтягивает» обновления из облака или с центрального сервера компании.
Мало кто знает, что платформа 1С поддерживает штатный механизм обновления конфигурации через веб-сервер. Посмотрим, как это работает. Мы можем опубликовать дистрибутив обновления на веб-сервере (Apache или IIS) и прописать путь к нему в настройках информационных баз на кассах.
При запуске тонкого или толстого клиента система обращается к конфигурационному файлу v8cfg.xml на сервере. Если версия в файле выше, чем установленная локально, 1С предложит (или выполнит автоматически, в зависимости от настроек) скачивание и установку обновления. Рассмотрим структуру такого файла:
<?xml version="1.0" encoding="UTF-8"?>
<UpdateCfg xmlns="http://v8.1c.ru/8.2/update">
<Version>1.0.10.45</Version>
<File>http://myserver.ru/updates/rmk/1cv8.cf</File>
</UpdateCfg>
Этот способ позволяет избежать использования тяжелых VPN-каналов для прямой передачи файлов через проводник Windows, так как HTTP-протокол более устойчив к обрывам связи.
Если интернет-канал в магазинах стабилен, самым эффективным решением будет отказ от локальных файловых баз 1С:РМК. Рассмотрим вариант развертывания базы в 1С:Fresh или на собственном сервере в режиме веб-публикации. В этом случае кассиры используют Тонкий клиент для подключения к централизованной базе РМК.
Разберем плюсы этой архитектуры:
Однако помните о рисках: при отсутствии интернета работа магазина полностью остановится. Для этого случая 1С рекомендует использовать локальную базу с настроенной синхронизацией, что возвращает нас к вопросу обновления локальных узлов.
Часто под «обновлением 1С» подразумевается не только изменение конфигурации, но и обновление самой платформы (движка). Для сети магазинов с доменом Active Directory разберем использование GPO. Вы можете подготовить .msi пакет платформы и назначить его установку на все компьютеры группы «Кассы».
Важно помнить, что после обновления платформы часто требуется первый запуск от имени администратора для регистрации компонент. Проанализируем, как это автоматизировать: добавьте в скрипт автозагрузки команду разового запуска с параметрами обновления метаданных, чтобы кассир утром не столкнулся с окнами выбора версии платформы.
В новых версиях управляющих систем (например, «1С:Розница 3.0») реализовано специальное рабочее место «Управление распределенной сетью РМК». Посмотрим, чем оно полезно для администратора. В этом интерфейсе можно увидеть список всех подключенных касс и текущую версию установленного на них ПО «1С:РМК». Хотя этот инструмент напрямую не обновляет конфигурации, он служит отличным монитором: после проведения регламентных работ вы сможете быстро выявить точки, на которых обновление по какой-то причине не применилось.
Подведем итог нашему анализу. Выбор метода зависит от масштаба сети и качества связи:
bat-файлов.Всегда тестируйте обновление на одной тестовой кассе перед тиражированием на всю сеть, так как 1С:РМК тесно взаимодействует с торговым оборудованием (ККТ, сканеры, эквайринг), и новые версии могут содержать изменения в драйверах, требующие перенастройки оборудования.