Как настроить безусловную выгрузку физических лиц из ЗУП 3.1 в БП 3.0 при их записи?

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

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

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

Анализируем причину: почему физлица не регистрируются автоматически?

Для начала проанализируем архитектуру обмена. В типовых решениях 1С на базе Enterprise Data за регистрацию объектов отвечают три уровня контроля:

  1. Метаданные Плана обмена: В конфигураторе для каждого объекта в составе плана обмена определено свойство «Авторегистрация».
  2. Правила Регистрации Объектов (ПРО): Внешний XML-файл, который управляет логикой регистрации на основе условий.
  3. Программные фильтры в модулях: Код в общих модулях, который может отсекать объекты, даже если они прошли первые два этапа.

Чаще всего в ЗУП 3.1 для справочника ФизическиеЛица установлен режим «Выгружать при необходимости». Это сделано для того, чтобы не «засорять» бухгалтерскую базу кандидатами на работу или лицами, по которым еще нет проводок. Наша задача — изменить это поведение на безусловное.

Шаг 1. Настройка правил регистрации в Конвертации данных 2.0

Рассмотрим процесс изменения правил регистрации. Вам потребуется выгрузить файл правил регистрации из вашей синхронизации (раздел «Настройки синхронизации данных» — «Параметры обмена данными» — «Загрузить правила регистрации объектов», выбрав предварительно сохранение текущих правил в файл).

Загрузим этот файл в базу Конвертация данных 2.0 и выполним следующие действия:

  1. Перейдем в раздел Правила регистрации объектов.
  2. Найдем в списке ФизическиеЛица. Обратите внимание, что их может быть два: одно создается системой автоматически для поддержки ссылочной целостности, второе — основное.
  3. В основном правиле на вкладке «Настройки» найдем поле Режим выгрузки. По умолчанию там часто стоит ВыгружатьПриНеобходимости. Нам нужно сбросить этот флаг или установить режим ВыгружатьВсегда.
  4. Проверим вкладку Обработчики событий. Часто в обработчике Перед обработкой или При регистрации прописан код, который проверяет наличие ИНН, СНИЛС или вхождение в определенные группы. Если такой код есть, его нужно проанализировать и, при необходимости, закомментировать.

Важно: Убедитесь, что в ПКО (Правилах конвертации объектов) в самой КД2 для этого справочника корректно настроены поля поиска (обычно это УникальныйИдентификатор или сочетание ФИО + ДатаРождения + ИНН), чтобы избежать дублей в базе БП 3.0.

Шаг 2. Проверка авторегистрации в конфигураторе

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

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

Шаг 3. Использование расширения для гарантированной регистрации

Если вы не хотите глубоко внедряться в логику ПРО или если типовые механизмы фильтрации продолжают блокировать объекты, можно прибегнуть к программному методу через расширение конфигурации. Это самый надежный способ заставить систему «видеть» изменения.

Разберем пример кода, который нужно разместить в модуле объекта справочника ФизическиеЛица (или в модуле менеджера через перехват события ПриЗаписи):


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

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

Шаг 4. Обновление правил и очистка кэша

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

  1. В ЗУП 3.1 зайдем в настройки синхронизации и загрузим обновленный файл ПРО.
  2. Важный нюанс: 1С кэширует правила обмена. Чтобы изменения вступили в силу немедленно, рекомендуется перезапустить сеанс или выполнить команду ОбновитьПовторноИспользуемыеЗначения() через консоль кода.
  3. Для проверки зайдем в окно Состав отправляемых данных (кнопка с изображением монитора или через «Параметры обмена»).
  4. Попробуем записать любое физическое лицо и нажмем кнопку «Обновить» в окне состава данных. Если счетчик в строке Физические лица увеличился — поздравляем, вы настроили безусловную выгрузку!

Шаг 5. Анализ последствий (Важные моменты)

Проанализируем ситуацию: почему разработчики 1С изначально ограничили выгрузку физических лиц? Принудительная синхронизация всего справочника может привести к следующим нюансам:

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

← На главную