Как доперенести кадровые документы из ЗУП 2.5 в ЗУП 3.1 после начального переноса остатков

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

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

Анализ проблемы: почему стандартный период выгрузки не работает

Многие специалисты сталкиваются с тем, что при использовании обработки Универсальный обмен данными в формате XML и стандартных правил ЗарплатаКадрыПереносДанныхИзЗУП25.xml, поле «Период выгрузки» на основной вкладке игнорируется. После нажатия кнопки «Выгрузить» дата начала периода может самопроизвольно очищаться, а данные за нужный месяц в целевой базе не появляются.

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

Шаг 1. Настройка параметров в универсальном обмене

Для корректной выгрузки документов «догонки» (например, за ноябрь, если остатки были перенесены на октябрь), выполним следующие действия в базе ЗУП 2.5:

  1. Откроем обработку Универсальный обмен данными в формате XML.
  2. Загрузим файл правил обмена (обычно он встроен в ЗУП 3.1 и его можно извлечь из макета или найти в папке шаблонов конфигурации).
  3. Перейдем на вкладку Параметры выгрузки. Это критически важный момент.
  4. Найдем параметр Дата начала переноса расчетных данных. Именно здесь нужно установить дату (например, 01.11.2017).
  5. Параметр Режим переноса данных установим в значение, соответствующее вашим целям (обычно это перенос остатков, но с указанием новой даты).

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

Шаг 2. Где искать перенесенные данные в ЗУП 3.1

Типичная ошибка пользователей — поиск перенесенных документов в стандартных журналах «Приемы, переводы, увольнения» или «Все кадровые документы». Проанализируем идеологию новой редакции: ЗУП 3.1 и ЗУП 2.5 имеют принципиально разную архитектуру. Многие документы старой версии не имеют прямых аналогов в новой или требуют наличия расчетных данных для проведения.

Рассмотрим, как программа обрабатывает кадровые данные при переносе:

Если вы не видите документов в журналах, обязательно проверьте список документов Перенос данных. Скорее всего, записи по сотрудникам за ноябрь находятся именно там.

Шаг 3. Обработка кадровых отклонений (отпуска, больничные)

Выясним, почему стандартные правила могут не переносить «Отпуска» или «Больничные» как живые документы. В ЗУП 3.1 кадровый приказ на отпуск неразрывно связан с расчетом начислений. Нельзя создать документ «Отпуск» без заполнения таблицы начислений, если включена соответствующая настройка программы. Поскольку при переносе расчетные механизмы могут отличаться, система предпочитает фиксировать факт отсутствия для учета стажа и Т-13 в документах переноса, а не создавать пустые кадровые приказы.

Если вам критически важно получить именно документы, рассмотрим два пути:

  1. Использование «Конвертации данных 2.1»: Придется дорабатывать правила обмена. Нужно найти ПКО (Правила конвертации объектов) для документа ОтпускОрганизаций и настроить его сопоставление с документом Отпуск в ЗУП 3.1. Важно: при этом придется программно заполнять обязательные реквизиты, такие как Оплата и ФОТ, иначе документы останутся непроведенными.
  2. Ручной ввод через Excel: Если объем документов за «месяц догонки» невелик, проще воспользоваться типовой обработкой Загрузка данных из файла. Рассмотрим пример: выгружаем список сотрудников и периодов отпусков из ЗУП 2.5 в таблицу, а затем загружаем их в ЗУП 3.1 в журнал «Отпуска».

Шаг 4. Решение проблемы дублирования сотрудников

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

Для решения этой проблемы в правилах обмена (через Конвертацию данных) необходимо убедиться, что включен поиск по полям:

Пример анализа записей в «Переносе данных»

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


// Пример проверки движений по кадровым периодам
Запрос = Новый Запрос;
Запрос.Текст = 
    "ВЫБРАТЬ
    |   КадроваяИсторияСотрудников.Сотрудник,
    |   КадроваяИсторияСотрудников.Период,
    |   КадроваяИсторияСотрудников.ВидСобытия
    |ИЗ
    |   РегистрСведений.КадроваяИсторияСотрудников КАК КадроваяИсторияСотрудников
    |ГДЕ
    |   КадроваяИсторияСотрудников.Период МЕЖДУ &ДатаНачала И &ДатаКонца";

Запрос.УстановитьПараметр("ДатаНачала", '20171101');
Запрос.УстановитьПараметр("ДатаКонца", '20171130');
Результат = Запрос.Выполнить();

Если запрос возвращает записи, значит, кадровые события (приемы, переводы) перенесены в регистры успешно, даже если самих документов в кадровых журналах нет. Это считается нормальным поведением для «краткого» переноса данных.

Резюме и рекомендации

Подводя итог, проанализируем основные выводы для успешного допереноса:

  1. Никогда не полагайтесь на период выгрузки на первой вкладке обработки обмена. Всегда ищите параметр даты внутри самих правил.
  2. Проверяйте результат в журнале «Перенос данных». Если записи в регистрах есть — кадровая история будет строиться корректно.
  3. Если нужны именно документы «Отпуск» или «Больничный лист» для печати, их лучше вводить вручную или использовать загрузку из Excel, так как стандартный перенос транслирует их в технические записи для расчета среднего заработка.
  4. Перед каждой попыткой дозагрузки делайте резервную копию базы ЗУП 3.1, так как некорректно настроенный поиск по полям может безнадежно испортить справочник сотрудников дублями.

И помните: перенос данных из 2.5 в 3.1 — это не синхронизация, а трансформация данных из одной структуры в другую. Стремиться к полной идентичности списков документов в обеих базах нецелесообразно с точки зрения трудозатрат.

← На главную