Почему при синхронизации 1С:ЗУП 3.1 и 1С:Бухгалтерия 3.0 регистрируются старые документы и как это исправить?

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

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

В этой статье мы подробно проанализируем, почему возникает подобное поведение, разберем устройство механизмов обмена на базе Библиотеки стандартных подсистем (БСП) и рассмотрим практические способы очистки и настройки корректной регистрации объектов.

Причина поведения: разделение правил регистрации (ПРО) и правил конвертации (ПКД)

Для понимания логики работы 1С разберем архитектуру механизма обмена данными. Процесс синхронизации разделен на два независимых этапа:

  1. Правила регистрации объектов (ПРО): отвечают за отслеживание изменений в базе данных и постановку объектов в очередь к отправке. При создании нового узла обмена система выполняет первичную регистрацию. В многофирменных базах или при первичной инициализации планов обмена ПланОбмена регистрация может захватывать документы за все периоды.
  2. Правила конвертации/выгрузки данных (ПКД): срабатывают непосредственно в момент формирования файла обмена или отправки данных по каналу связи.

Рассмотрим ключевой момент: значение параметра «Дата начала использования обмена» (или месяц начала обмена) проверяется именно на втором этапе — во время формирования итогового сообщения. Это означает, что хотя счетчик зарегистрированных объектов показывает наличие сотен документов прошлых лет, в момент выгрузки программа их проигнорирует и не передаст в базу-приемник. Тем не менее, такое поведение может пугать пользователей и создавать лишнюю нагрузку на таблицы регистрации изменений.

Особенности изменения параметров обмена и работа со справочниками

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

  1. Изменение даты начала обмена в существующей настройке: если синхронизация уже была создана, а затем пользователь решил сдвинуть дату начала выгрузки на более позднюю, автоматической очистки ранее зарегистрированных документов не произойдет. Все объекты, попавшие в таблицу регистрации до изменения даты, останутся в очереди.
  2. Выгрузка справочников: ограничение по дате распространяется исключительно на документы. Справочники (такие как ФизическиеЛица, ПодразделенияОрганизаций, СпособыОтраженияЗарплатыВБухучете) регистрируются и выгружаются всегда, независимо от выбранного периода обмена, так как они необходимы для сохранения ссылочной целостности в базе-приемнике.

Пошаговая инструкция по управлению составом отправляемых данных

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

Способ 1. Очистка и ручная перерегистрация через «Состав отправляемых данных»

Для полного контроля над составом выгружаемых объектов выполним следующие шаги:

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

Способ 2. Запуск первого обмена в интерактивном режиме

Чтобы визуально проконтролировать процесс выгрузки без риска передать лишние данные в 1С:Бухгалтерию, выполним первичный обмен в интерактивном режиме:

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

Способ 3. Защита базы-приемника с помощью даты запрета загрузки

Для предотвращения любых случайных изменений в прошлых закрытых периодах в базе 1С:Бухгалтерия 3.0 рекомендуется настроить дату запрета загрузки данных:

  1. Откроем базу 1С:Бухгалтерия 3.0.
  2. Перейдем в раздел Администрирование — Настройки пользователей и прав — Дата запрета изменения.
  3. Включим флаг Даты запрета загрузки данных и установим дату, предшествующую периоду начала обмена.

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

Программный способ снятия регистрации объектов (для программистов)

Если требуется очистить регистрацию изменений программно с использованием встроенного языка 1С, проанализируем следующий пример кода на языке BSL:


// Выясним ссылку на узел обмена
УзелОбмена = ПланыОбмена.СинхронизацияДанныхЧерезУниверсальныйФормат.НайтиПоКоду("БП");

Если ЗначениеЗаполнено(УзелОбмена) Тогда
    // Удаляем регистрацию изменений для всех документов узла
    ПланыОбмена.УдалитьРегистрациюИзменений(УзелОбмена, Тип("ДокументСсылка.ОтражениеЗарплатыВБухучете"));
    
    // Либо отменяем регистрацию для конкретного объекта
    // ПланыОбмена.УдалитьРегистрациюИзменений(УзелОбмена, СсылкаНаДокумент);
КонецЕсли;

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

← На главную