Ситуация, когда учет в компании ведется параллельно в двух разных базах «1С:Зарплата и управление персоналом 3.1» — довольно распространенная проблема. Чаще всего это происходит исторически: кадровая служба работает в своей базе, наводя там идеальный порядок в личных карточках и приказах, а бухгалтеры-расчетчики ведут расчет зарплаты в своей базе, зачастую забивая кадровые данные «вручную» или в усеченном виде. Рано или поздно руководство ставит задачу: объединить учет в одной базе.
На первый взгляд задача кажется тривиальной — перенести документы из одной базы в другую. Однако на практике специалисты сталкиваются с огромным количеством методологических и технических подводных камней. В этой статье мы подробно разберем, как правильно организовать процесс слияния двух баз «1С:ЗУП 3.1», проанализируем основные стратегии переноса, рассмотрим скрытые механизмы платформы и выясним, как избежать фатальных ошибок.
Прежде чем приступать к переносу, давайте разберем, почему простой универсальный обмен данными XML «в лоб» гарантированно приведет к хаосу в целевой базе:
Рассмотрим три основные стратегии решения этой задачи.
Этот способ является наиболее гибким и технически правильным, если вам необходимо сохранить всю историю кадровых документов в расчетной базе. Нам потребуется инструмент «1С:Конвертация данных 2.0» (КД 2) для написания правил обмена.
Рассмотрим пошагово алгоритм настройки сопоставления объектов:
Шаг 1. Сопоставление физических лиц и сотрудников
Физические лица в обеих базах должны сопоставляться по уникальным естественным идентификаторам. Идеально подходят СНИЛС и ИНН. В правилах обмена (ПКО) для справочника ФизическиеЛица необходимо настроить поиск именно по этим полям, предварительно очистив строки от пробелов и дефисов. Для справочника Сотрудники ключевыми полями сопоставления будут являться ссылка на сопоставленное физическое лицо, организация и табельный номер (если они совпадают), либо связка по ФИО и СНИЛС.
Шаг 2. Унификация справочников должностей и подразделений
Здесь возможны два пути:
Шаг 3. Перенос и проведение документов
После сопоставления НСИ переносятся кадровые документы: ПриемНаРаботу, КадровыйПеревод, Увольнение. Переносить их необходимо строго в хронологическом порядке. После переноса их потребуется провести.
Это оригинальный и достаточно быстрый технический метод, предложенный опытными практиками. Он позволяет обойтись без написания сложных правил в КД 2, но требует высокой квалификации при последующей чистке данных.
Рассмотрим этот сценарий по шагам:
Если организация насчитывает около 340 человек (как в рассматриваемой теме форума), а история прошлых лет в кадровом учете не является критически важной для ежедневной работы, самым надежным и методологически чистым решением будет ввод начальных остатков на начало нового расчетного периода (например, на 1 января).
В «1С:ЗУП 3.1» заложен прекрасный готовый функционал для этой задачи. Разберем этот процесс подробнее:
1. Перенос штатной расстановки
В расчетной базе создается специальный документ НачальнаяШтатнаяРасстановка. Он заменяет собой необходимость переносить всю историческую цепочку приемов и переводов за прошлые годы. В этот документ вносятся данные по всем 340 сотрудникам по состоянию на дату начала ведения учета: их должности, подразделения, тарифные ставки (оклады), плановые начисления и графики работы.
Документ НачальнаяШтатнаяРасстановка автоматически делает движения во все необходимые регистры сведений, отвечающие за кадровую историю и плановые начисления.
2. Ввод остатков отпусков
Для корректного ведения учета отпусков создается документ ВводОстатковОтпусков, где по каждому сотруднику фиксируется количество накопленных дней отпуска в разрезе рабочих лет.
3. Перенос данных для расчета среднего заработка
Чтобы расчетчики могли безболезненно считать больничные и отпуска в новой объединенной базе, необходимо перенести данные о заработке за предыдущие периоды (12 месяцев для общего среднего заработка и 2 года для расчета пособий ФСС). Для этого используются специальные документы РегистрацияПериодовДействия и регистры накопления:
ДанныеОНачисленияхДляРасчетаСреднегоЗаработкаОбщий — для отпусков и командировок.ДанныеОНачисленияхДляРасчетаСреднегоЗаработкаФСС — для больничных листов.Эти данные можно легко перенести с помощью несложных правил КД 2, сопоставляя физлиц по ИНН и СНИЛС.
Если вы приняли решение переносить документы исторически (Вариант 1), вам обязательно нужно учесть скрытые механизмы работы «1С:ЗУП 3.1».
Проблема скрытых регистров сведений
Часто программисты переносят документы КД-шкой, проводят их групповой обработкой, но при открытии базы видят пустые списки сотрудников в кадровых журналах. Дело в том, что в ЗУП 3.1 за видимость сотрудников и корректность отчетов отвечают вспомогательные регистры сведений, которые при некорректном программном проведении могут остаться пустыми:
ДанныеДляПодбораСотрудников — если записи в нем отсутствуют, вы не сможете выбрать сотрудника ни в одном новом документе.КадроваяИсторияСотрудников и ТекущиеКадровыеДанныеСотрудников — без них программа «не понимает», работает ли сотрудник сейчас, в каком подразделении и на какой должности он находится.ПериодыСтажаПФР — его незаполнение приведет к полной потере стажа для расчета больничных.Опасность автоперерасчетов
При проведении исторических кадровых документов за прошлые периоды в базе расчетов программа решит, что у сотрудников изменились условия труда (оклады, графики) «задним числом». Платформа мгновенно создаст тысячи записей в регистре «Задачи перерасчета».
Чтобы избежать этой блокирующей работу ситуации, при загрузке документов через правила обмена необходимо программно отключать механизмы автоперерасчета. Для этого в обработчиках КД 2 или при программном проведении документов обязательно используйте режим загрузки данных:
// Отключение проверок и автоперерасчетов при программной записи документов
ДокументОбъект = СсылкаНаДокумент.ПолучитьОбъект();
ДокументОбъект.ОбменДанными.Загрузка = Истина;
ДокументОбъект.Записать(РежимЗаписиДокумента.Проведение);
Использование свойства ОбменДанными.Загрузка = Истина скажет платформе, что документ переносится из другой системы, и стандартные триггеры перерасчета запускать не нужно.
Регуляторные требования и ЕФС-1
Не забывайте, что сейчас кадровая служба обязана оперативно сдавать отчет ЕФС-1 (Подраздел 1.1) при любых кадровых изменениях. Любые расхождения в СНИЛС, ФИО или кодах ОКЗ (Общероссийский классификатор занятий) между кадровой и расчетной базами приведут к тому, что Социальный фонд России (СФР) отклонит отчетность. Поэтому при сопоставлении должностей критически важно проверить заполнение справочника ОКЗ в кадровой базе еще до начала миграции.
Чтобы не парализовать работу предприятия во время слияния баз, мы рекомендуем использовать двухконтурную схему перехода:
Использование этого подхода минимизирует риски сбоев и гарантирует плавный, безболезненный переход на единый учет в «1С:ЗУП 3.1».