Синхронизация в 1С: от выбора способа обмена до отладки

· 9 мин

Содержание

Синхронизация данных в 1С 8.3 настраивается в типовых конфигурациях через раздел Администрирование → Синхронизация данных — отдельный программный код писать не нужно. Выбираете, с какой базой обмениваться, каким способом соединяться (прямое подключение, общий каталог, FTP или через интернет ) и что именно передавать. Дальше программа сама формирует и разбирает сообщения обмена.

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

С чего начать: готовим базы и выбираем способ обмена

До первого запуска синхронизации стоит привести обе базы в порядок. Иначе первый же сеанс обмена вытащит наружу все расхождения в данных.

🔹 Обновите релизы. Обмен между типовыми конфигурациями работает через правила, привязанные к версиям. Если релизы сильно разошлись, часть данных не перенесётся. Держите обе базы на близких актуальных релизах.

🔹 Сделайте резервную копию обеих баз. Первый сеанс синхронизации меняет данные в обеих базах, и откатить его штатными средствами нельзя — только восстановлением из копии.

🔹 Назначьте префиксы. У каждой базы должен быть свой префикс в кодах и номерах документов (Администрирование → Настройки программы → Общие настройки, поле префикса). Разные префиксы не дают документам из двух баз получить одинаковые номера.

🔹 Проверьте права. Пользователь, от имени которого идёт обмен, должен иметь профиль с правом на синхронизацию. Для соединения между серверными базами нужны ещё и права на уровне кластера.

Теперь выбор способа соединения. Их в типовом механизме четыре, и выбирают по тому, где стоят базы и есть ли между ними сеть. Коротко по каждому — где он выигрывает и чем неудобен:

Способ соединенияКогда выбираютНа что смотреть
Прямое подключениеОбе базы на одном сервере 1ССамый быстрый; нужны права на вторую базу
Общий каталогБазы в одной сети, есть общая папкаПростой; следите за правами на запись в папку
FTPНет общей сети, но есть FTP-серверРаботает через интернет; настройка доступа к FTP
Веб-сервис (интернет)Базы в разных организацияхНужна публикация базы на веб-сервере

Если обе базы 1С на одном сервере, начинайте с прямого подключения. Файловые способы (каталог, FTP) оставьте для случаев, когда сетевого доступа между базами нет.

Настройка синхронизации через типовой механизм

Весь процесс идёт в разделе Администрирование → Синхронизация данных. Если пункта нет, сначала включите флажок Синхронизация данных на этой же форме настроек — он открывает подраздел.

Порядок действий единый для БП 3.0, ЗУП 3.1, УТ 11 и Комплексной автоматизации:

  1. Откройте Администрирование → Синхронизация данных и перейдите по ссылке Настройки синхронизации данных.
  2. Нажмите Новая синхронизация данных и выберите из списка программу-партнёра — например, «Бухгалтерия предприятия, редакция 3.0» или «Зарплата и управление персоналом, редакция 3».
  3. Укажите настройку обмена — типовой сценарий (кто кому и что передаёт). Для пары ЗУП → БП это выгрузка отражения зарплаты в учёте.
  4. Выберите способ соединения из тех, что разобрали выше, и введите параметры: адрес базы, путь к каталогу, адрес веб-сервиса или данные FTP.
  5. Задайте отборы: по какой организации, складу, периоду начала выгрузки. Это ограничивает объём и исключает лишние данные.

После этого программа предложит проверить подключение. Если проверка проходит — соединение настроено верно, можно переходить к сопоставлению.

На шаге сопоставления 1С сравнивает справочники двух баз (организации, контрагенты, номенклатуру) и предлагает связать одинаковые элементы. Внимательно проверьте сопоставление организаций и основных справочников: ошибка здесь приведёт к задвоению данных, которое потом вычищают вручную.

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

Пошагово: создаём узел и запускаем первый обмен

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

Первый обмен — самый ответственный. Выполняйте его так:

  1. На форме настройки синхронизации нажмите Выполнить сопоставление и загрузку (название кнопки может отличаться между релизами — ищите действие с первичной загрузкой данных).
  2. Дождитесь выгрузки. Программа сформирует сообщение обмена и передаст его выбранным способом.
  3. Проверьте отчёт о сопоставлении: несопоставленные элементы программа покажет списком. Свяжите их вручную или разрешите создать новые.
  4. Запустите загрузку во вторую базу. После неё проверьте, что ключевые документы и справочники появились и провелись.

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

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

На состав передаваемых данных влияют отборы, заданные при настройке. Чаще всего ограничивают так:

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

Чем точнее отбор, тем меньше объём сообщения и быстрее сеанс. Слишком широкий отбор на старте — частая причина того, что первый обмен идёт часами и подтягивает лишнее.

Не меняйте настройки отбора после первого обмена без необходимости. Если расширить отбор задним числом, ранее не попавшие данные автоматически не догрузятся — потребуется отдельная повторная выгрузка по периоду.

Расписание и автоматический запуск синхронизации

Ручной запуск обмена подходит для проверки и разовых случаев. В рабочей базе синхронизацию ставят на расписание, чтобы данные ходили без участия человека.

Настройка расписания — на форме синхронизации, ссылка Настроить рядом с параметром автоматической синхронизации (в разных релизах пункт называется близко: «Выполнять автоматически по расписанию»). Там задаются интервал и время:

  • для отражения зарплаты в учёте хватает одного-двух раз в день;
  • для обмена заказами между УТ и БП ставят интервал каждые 10–30 минут;
  • для РИБ с магазинами — по графику работы точек.

Как именно отработает расписание, зависит от типа базы:

Тип базыКак работает расписание
Клиент-сервернаяРегламентное задание выполняется на сервере 1С без открытого сеанса пользователя
ФайловаяНужен хотя бы один открытый сеанс либо отдельный запуск обмена по заданию

В клиент-серверном варианте обмен выполняет регламентное задание. Его состояние видно в Администрирование → Обслуживание → Регламентные и фоновые задания. Если задание отключено или падает — обмен не пойдёт, даже когда сами настройки верны.

Для файловой базы, где никто не держит сеанс постоянно, автоматический обмен настраивают через отдельный запуск 1С по расписанию операционной системы с нужным параметром запуска. Это уже задача администратора, а не настройка внутри конфигурации.

Что делать, когда синхронизация встала

Если данные перестали ходить, не трогайте настройки сразу. Сначала найдите причину — она почти всегда видна в самой программе.

Два главных источника информации:

  • Результаты синхронизации данных — на форме Администрирование → Синхронизация данных. Показывает предупреждения, конфликты и необработанные объекты последнего сеанса.
  • Журнал регистрации — Главное меню → Все функции → Журнал регистрации (или через Администрирование). Отфильтруйте события по приложению «Обмен данными», чтобы увидеть, на каком объекте оборвалась выгрузка или загрузка.

Типичные ситуации и их разбор:

Диагностика: выберите симптом

Когда причина найдена, сеанс обмена чаще всего достаточно просто повторить вручную с формы синхронизации — программа догрузит то, что не прошло.

Если наладить обмен так и не удаётся, не пересоздавайте настройку синхронизации с нуля — это сбросит состояние обмена и приведёт к повторной выгрузке всех данных. Сначала сверьте версии правил обмена и релизы обеих баз: расхождение версий правил — самая частая скрытая причина. Нетиповые обмены и интеграции с внешними системами разбирают по протоколу обмена и правилам конвертации; здесь уже нужен специалист, знающий конкретную связку баз.

Распределённые базы (РИБ): в чём отличие от обычного обмена

РИБ — это не настройка в разделе синхронизации, а отдельный механизм. Он нужен, когда у вас несколько экземпляров одной и той же конфигурации: центральная база и периферийные (филиалы, магазины, удалённые рабочие места).

Чем РИБ отличается от обмена между разными программами:

  • Структура строго иерархическая: один центральный узел и подчинённые периферийные. Периферийные базы между собой напрямую не обмениваются.
  • Передаётся не только учётная информация, но и изменения конфигурации. Обновили конфигурацию в центре — при следующем обмене она разойдётся по периферийным узлам автоматически.
  • Обмен идёт файлами сообщений в формате .zip, которые доставляются выбранным транспортом (каталог, FTP, интернет).

Создают РИБ на базе плана обмена с установленным признаком распределённой информационной базы. В типовых конфигурациях для этого есть готовые планы обмена «Полный» и «По организации» — настройка идёт там же, в разделе синхронизации, но с выбором плана обмена РИБ.

В РИБ изменять структуру конфигурации можно только в центральном узле. Правки в периферийной базе при очередном обмене будут перезаписаны центром. Это защищает конфигурацию от рассинхронизации, но его легко забыть.

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

Частые вопросы

Можно ли синхронизировать базы разных конфигураций, например УТ и БП?
Да, это и есть основной сценарий типового механизма. Для пары УТ 11 и БП 3.0 есть готовая настройка обмена: заказы и реализации уходят в бухгалтерию. Нужно лишь, чтобы релизы обеих баз были актуальны.
Что будет, если релизы баз сильно разошлись?
Правила обмена рассчитаны на близкие версии. При большом расхождении часть данных не перенесётся или обмен выдаст предупреждение о несовместимости версий. Сначала обновите обе базы, потом запускайте синхронизацию.
Как перенести старые документы, которые не попали в обмен?
Расширение отбора задним числом само по себе данные не догружает. Нужна повторная выгрузка по периоду с формы синхронизации либо ручная регистрация объектов к обмену — программа отправит их в следующем сеансе.
Нужен ли программист для настройки синхронизации?
Для обмена между типовыми конфигурациями — нет, всё делается через Администрирование → Синхронизация данных. Программист нужен для нетиповых обменов, доработки правил конвертации или интеграции с внешними системами.
Чем РИБ отличается от обычной синхронизации?
РИБ связывает копии одной конфигурации и передаёт в том числе изменения самой конфигурации из центра на периферию. Обычная синхронизация связывает разные программы и передаёт только учётные данные.