Как правильно удалить или объединить дублирующихся физических лиц в 1С:ЗУП 3.1?

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

Одной из наиболее распространенных проблем в ведении учета в программе 1С:Зарплата и управление персоналом 8 является возникновение дублей в справочнике Физические лица. Ситуация часто осложняется тем, что один из «физиков» может быть задействован в документах Перенос данных, которые формируются при переходе из старых систем (например, ЗУП 2.5), а второй — в текущих кадровых и расчетных документах. Простое удаление объекта в такой ситуации недопустимо, так как это приведет к нарушению ссылочной целостности и «расползанию» налоговой отчетности.

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

Различие между справочниками Физические лица и Сотрудники

Прежде чем приступать к исправлению, проанализируем структуру данных. В 1С:ЗУП 3.1 Физические лица и Сотрудники — это два разных справочника. Физическое лицо — это человек как объект гражданского права (с паспортом, ИНН и СНИЛС), а Сотрудник — это позиция в штатном расписании, привязанная к конкретному физлицу. У одного физлица может быть несколько карточек сотрудников (например, основное место работы и внутреннее совместительство). Наша задача — сделать так, чтобы все карточки сотрудников ссылались на одно правильное физлицо.

Шаг 1. Подготовка и создание резервной копии

Любые действия по объединению или удалению данных в 1С должны начинаться с создания архивной копии базы. Поскольку операции затрагивают регистры накопления и сведения (включая НДФЛ и страховые взносы), ошибка может стоить целостности учета за несколько лет. Сделаем копию через конфигуратор или средствами СУБД перед началом любых манипуляций.

Шаг 2. Использование специализированного инструмента Объединение личных карточек

В конфигурации ЗУП 3.1 существует специализированный сервис, который работает «умнее» обычной обработки удаления дублей. Рассмотрим подробнее, как его найти и использовать:

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

Шаг 3. Использование обработки Поиск и удаление дублей

Если по каким-то причинам специализированная обработка не помогла (например, ссылки застряли в специфических узлах обмена), воспользуемся универсальным платформенным механизмом. Разберем этот вариант:

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

Шаг 4. Особенности работы с документом Перенос данных

Документы типа Перенос данных являются «техническими», они напрямую делают записи в регистры накопления, минуя логику проведения обычных документов. Если дубль физического лица сидит именно там, ручная правка текста документа в режиме «только чтение» не поможет — нужно менять ссылку в самих движениях регистра. Типовые обработки (из Шагов 2 и 3) справляются с этим автоматически. Однако, если у вас установлена Дата запрета редактирования, которая захватывает период переноса данных, обработка может не сработать. Выясним причину ошибки: система не сможет переписать записи регистра в закрытом периоде. На время операции дату запрета необходимо снять или временно разрешить редактирование для администратора.

Шаг 5. Проверка СНИЛС и уникальности данных

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

Шаг 6. Контроль налогового учета (НДФЛ и взносы)

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

Рекомендуем сформировать отчеты Анализ НДФЛ по месяцам и Проверка расчета страховых взносов. Если суммы «поползли», воспользуйтесь документом Перерасчет НДФЛ или Перерасчет страховых взносов за соответствующий налоговый период.

Шаг 7. Синхронизация с Бухгалтерией предприятия (БП)

Если настроен обмен данными, помните, что объекты сопоставляются по уникальному идентификатору (GUID). При удалении физического лица в ЗУП, которое уже было передано в БП, в бухгалтерии оно может остаться «сиротой» или создаться заново как дубль при следующем обмене.

Проанализируем алгоритм действий для сохранения синхронности:

  1. После удаления дубля в ЗУП запустите обмен.
  2. В Бухгалтерии (БП) также запустите обработку Поиск и удаление дублей.
  3. Убедитесь, что в БП ссылки теперь указывают на ту же карточку, которая соответствует «правильному» физику в ЗУП.

Пример анализа ссылок

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


Запрос = Новый Запрос;
Запрос.Текст = 
    "ВЫБРАТЬ
    |   Данные.Ссылка КАК СсылкаНаОбъект
    |ИЗ
    |   РегистрНакопления.ЗарплатаКВыплате КАК Данные
    |ГДЕ
    |   Данные.ФизическоеЛицо = &Дубль";
Запрос.УстановитьПараметр("Дубль", СсылкаНаДубль);
Результат = Запрос.Выполнить();

Такой подход позволит вам точечно увидеть, в каких ведомостях или начислениях «застрял» старый объект, если типовая обработка по какой-то причине его пропустила.

Резюмируем: наиболее безопасным и современным способом решения проблемы является использование обработки Объединение личных карточек. Она учитывает специфику кадрового учета и минимизирует риски потери данных в кадровой истории. После завершения всех процедур обязательно выполните Тестирование и исправление базы (раздел Администрирование) для пересчета итогов в регистрах накопления.

← На главную