Администрирование · 11 мин
Как синхронизировать две базы 1С:Розница между собой
Настройка обмена данными между двумя базами 1С:Розница: РИБ, универсальный формат, типовая синхронизация, устранение ошибок и проверка результатов.
Синхронизация двух баз 1С:Розница понадобится, когда открылся второй магазин, одна база работает на кассе, а другая — в бэк-офисе, либо филиал ведёт автономный учёт и должен передавать остатки и продажи в центральную точку. Перед настройкой обмена определите, какая база будет «главной» по справочникам — товарам, ценам и контрагентам, и как часто нужен обмен: в реальном времени или по расписанию. От этого зависит выбор механизма: типовая синхронизация через универсальный формат подходит для равноправных баз с центральным узлом, а распределённая информационная база (РИБ) — для жёсткой иерархии «главный узел — подчинённые кассы и магазины».
Главный принцип любого обмена: номенклатура, контрагенты и другие ключевые справочники должны вестись преимущественно в одной базе, иначе возникнут дубли и конфликты. Перед настройкой обмена определите, какая база будет мастер-системой по каждому виду данных, и зафиксируйте это в регламенте работы сотрудников. Это сэкономит десятки часов на разборе расхождений позже.
Оба механизма входят в типовую поставку 1С:Розница и не требуют покупки дополнительных лицензий сверх уже имеющихся. Однако настройка требует внимательности: ошибка на старте приведёт к задвоению номенклатуры, пересортице остатков и некорректным отчётам. Ниже разобраны оба способа с пошаговыми действиями и проверками результата.
Какой способ обмена выбрать: синхронизация или РИБ
Типовая синхронизация данных работает по принципу равноправного обмена: каждая база отправляет зарегистрированные изменения другой стороне через файл или прямое подключение. Она подходит, когда обе базы самостоятельны, но должны видеть общие справочники и документы. Настройка гибкая: можно задавать правила фильтрации, выбирать состав выгружаемых данных, назначать расписание.
РИБ (распределённая информационная база) — это жёсткая иерархия «главный узел — подчинённый узел». Подчинённая база создаётся как копия центральной, и обмен идёт по строгим правилам платформы. РИБ надёжнее для сети магазинов, где центр полностью управляет ассортиментом и ценами, но менее гибок: изменение конфигурации требует обновления всех узлов, и «распустить» узлы обратно в независимые базы сложно.
Сравнение вариантов обмена
Подходит для двух равноправных баз с гибкими правилами. Ограничение: требуется контроль дублей справочников и ручное сопоставление при первом запуске.
Подходит для сети с центральным управлением ценами и ассортиментом. Ограничение: обновление конфигурации возможно только через центральный узел.
Подходит для нестандартных сценариев с особыми правилами. Ограничение: требуется разработчик и сопровождение правил при обновлениях.
Если сомневаетесь — начните с типовой синхронизации. Она проще в запуске, легче откатывается (достаточно отключить настройку) и покрывает большинство сценариев обмена между двумя розничными точками.
Подготовка баз к синхронизации
Перед настройкой обязательно сделайте резервные копии обеих баз: через конфигуратор (Администрирование → Выгрузить информационную базу) или штатными средствами СУБД, если база клиент-серверная. Первый сеанс обмена выполняет массовую загрузку данных, и в случае ошибки проще восстановить копию, чем чистить базу вручную.
Проверьте, что версии конфигурации 1С:Розница в обеих базах совпадают или совместимы по формату обмена. Разные релизы могут иметь разную версию формата EnterpriseData, из-за чего часть объектов не загрузится. Обновите отстающую базу до актуального релиза до начала настройки.
Приведите в порядок справочники: удалите явные дубли номенклатуры и контрагентов, заполните обязательные реквизиты (единицы измерения, виды номенклатуры, ставки НДС). При первой синхронизации типовой механизм сопоставляет объекты по ключевым полям, и мусор в справочниках напрямую превращается в дубли на другой стороне.
Настройка типовой синхронизации данных
Откройте в базе-источнике раздел «Администрирование» → «Синхронизация данных». Установите флаг «Синхронизация данных» и задайте префикс информационной базы — уникальную букву или сочетание (например, «ЦМ» для центра и «М1» для магазина). Префиксы критичны: они входят в нумерацию документов и предотвращают пересечение номеров в разных базах.
Перейдите по ссылке «Настройки синхронизации данных» и создайте новую настройку, выбрав вариант «Розница» (обмен с идентичной конфигурацией). Мастер предложит указать способ подключения: через каталог обмена (файл), по FTP, по электронной почте или прямое подключение к другой базе через COM/веб-сервис. Самый простой и надёжный вариант для двух баз в одной сети — общий сетевой каталог.
- 1Включите синхронизацию данных и задайте уникальные префиксы в обеих базах
- 2Создайте настройку обмена в первой базе, выберите каталог обмена и состав отправляемых данных
- 3Выгрузите файл настроек и начальный образ данных для второй базы
- 4Во второй базе создайте настройку «из файла», указав выгруженные параметры
- 5Выполните сопоставление объектов на этапе первого обмена и подтвердите соответствия
- 6Запустите обмен вручную и проверьте протокол, затем настройте расписание
На этапе выгрузки начальных данных система сформирует сообщение обмена со справочниками и, при необходимости, остатками. Во второй базе при загрузке откроется форма сопоставления: платформа покажет, какие объекты нашла по совпадению, а какие создаст новыми. Пройдите по списку и вручную свяжите объекты, которые автоматически не сопоставились, но являются одним и тем же (например, «Колбаса докторская» и «Колбаса Докторская»).
После успешного первого обмена настройте автоматический запуск: в настройке синхронизации задайте расписание (например, каждые 15–30 минут) или используйте регламентное задание «Выполнение обмена данными». Для файловых баз расписание срабатывает только при запущенном сеансе 1С — учтите это при планировании.
Настройка РИБ между двумя базами
Если выбран путь РИБ, откройте в центральной базе «Администрирование» → «Настройка синхронизации данных» и включите «Распределенные информационные базы». В списке узлов РИБ создайте новый подчинённый узел, задайте ему код и наименование, выберите план обмена (в типовой Рознице доступны варианты по магазину или по рабочему месту с фильтрацией данных).
Далее используйте команду «Создать начальный образ» подчинённого узла. Система выгрузит образ базы, из которого вы развернёте вторую базу через конфигуратор (Загрузить информационную базу). После загрузки при первом запуске подчинённая база предложит подтвердить параметры узла — согласитесь и выполните первый обмен через указанный каталог.
Обмен в РИБ выполняется кнопкой «Выполнить обмен данными» в форме узла или регламентным заданием. Платформа сама контролирует номера принятых и отправленных сообщений, поэтому пропуск пакета не приведёт к потере данных — при следующем сеансе недостающее будет запрошено повторно.
Проверка результатов обмена
После первых сеансов обмена откройте регистрацию изменений и протокол: в форме настройки синхронизации есть ссылка на «Результаты обмена данными» (информация о предупреждениях). Все предупреждения о незагруженных объектах нужно разобрать — обычно это незаполненные обязательные реквизиты или отсутствующие связанные объекты.
Сверьте ключевые данные в обеих базах: количество элементов справочника «Номенклатура», остатки по складу (отчёт «Остатки товаров»), итоги продаж за контрольный день. Совпадение этих показателей — главный признак корректно работающего обмена.
Как проверить результат
Нет ошибок загрузки, предупреждения разобраны
Повторяющиеся ошибки по одним и тем же объектам
Количество элементов совпадает, дублей нет
Появились элементы с пометкой «<Не сопоставлено>» или задвоения
Отчёты по складу и продажам сходятся между базами
Расхождения по остаткам без объяснимых причин
Номера содержат префиксы узлов и не пересекаются
Дубли номеров документов в одной базе
Типичные ошибки и их устранение
Отдельная группа проблем — «зависшие» сообщения обмена, когда одна база отправила пакет, а вторая его не получила или не подтвердила. В типовой синхронизации это лечится командой повторной отправки из формы настройки (гиперссылка с номером отправленного сообщения), в РИБ — изменением номеров сообщений в форме узла («Изменить номера сообщений»). Не злоупотребляйте сбросом номеров: сначала убедитесь, что пакет действительно потерян, а не просто не обработан.
Держите каталог обмена на отдельном сетевом ресурсе с ограниченным доступом и периодически очищайте его от старых файлов. Скопление сотен файлов сообщений замедляет обмен и затрудняет диагностику, когда что-то идёт не так.
Ограничения и альтернативные варианты
Типовой обмен переносит не всё: пользовательские настройки, часть расширений и данные, добавленные доработками, в обмен не входят. Если конфигурации доработаны, проверьте, зарегистрированы ли новые объекты в составе плана обмена, и при необходимости добавьте их — это уже задача для разработчика.
Для сложных сценариев (обмен только частью документов, трансформация данных «на лету», несколько баз с разными правилами) используют «1С:Конвертацию данных» с собственными правилами или шину данных. Это оправдано, когда типовой механизм не покрывает требования, но требует сопровождения правил при каждом обновлении конфигурации.
Что важно запомнить
Для двух равноправных баз используйте типовую синхронизацию данных, для сети с центром — РИБ. Обязательны: резервные копии, уникальные префиксы, совпадающие релизы и ручное сопоставление справочников при первом обмене. Результат проверяйте по протоколу, отсутствию дублей и совпадению остатков.
Частые вопросы
Можно ли синхронизировать базы с разными релизами 1С:Розница?
Технически обмен может запуститься, но при разных версиях формата EnterpriseData часть объектов не загрузится или загрузится с ошибками. Рекомендуется выровнять релизы до начала настройки и обновлять обе базы параллельно в дальнейшем.
Как часто нужно выполнять обмен между магазином и офисом?
Оптимальный интервал зависит от оперативности учёта: для цен и номенклатуры достаточно 15–60 минут, для документов продаж — от нескольких раз в день до ежедневной выгрузки. Слишком частый обмен увеличивает нагрузку без практической пользы.
Что делать, если после обмена появились дубли номенклатуры?
Остановите обмен, найдите дубли штатным поиском (по наименованию, артикулу, штрихкоду), выполните замену ссылок обработкой «Поиск и замена значений» и пометьте лишние элементы на удаление. Затем проверьте правила сопоставления, чтобы ситуация не повторилась.
Можно ли превратить уже существующую базу в подчинённый узел РИБ?
Нет, подчинённый узел РИБ создаётся только из начального образа центральной базы. Если вторая база уже велась самостоятельно, используйте типовую синхронизацию данных либо перенесите данные из неё в новый узел РИБ через обработки загрузки.
Почему обмен по расписанию не выполняется в файловой базе?
В файловом режиме регламентные задания выполняются только в запущенном сеансе 1С, у которого есть права на их выполнение. Либо держите открытым сеанс под служебным пользователем, либо запускайте обмен вручную, либо рассмотрите переход на клиент-серверный вариант.
Передаются ли через синхронизацию штрихкоды и цены?
Да, штрихкоды передаются вместе с номенклатурой, а цены — документами установки цен, если они включены в состав обмена. Убедитесь, что в правилах отправки не стоит фильтр, исключающий эти объекты.