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