При переходе с программы «1С:Зарплата и управление персоналом» редакции 2.5 на редакцию 3.1 многие пользователи выбирают так называемый «рекомендуемый перенос» (перенос остатков). Этот метод позволяет начать работу в новой базе «с чистого листа», сохраняя лишь данные, необходимые для расчета среднего заработка и текущие остатки по взаиморасчетам и отпускам. Однако у этого способа есть существенный минус: сведения о страховом стаже застрахованных лиц для отчетности СЗВ-СТАЖ (ныне входящей в состав ЕФС-1) за предыдущие годы часто не переносятся.
В этой статье мы подробно разберем, почему так происходит, как диагностировать проблему и какими способами можно «дотянуть» сведения о стаже из старой базы в новую, минуя ошибки преобразования данных.
Проанализируем алгоритм рекомендуемого переноса. Разработчики 1С заложили в него логику минимизации объема данных. Информация о стаже для ПФР (СФР) хранится в специализированных регистрах. В ЗУП 3.1 основным является регистр сведений Параметры периодов стажа ПФР. При «кратком» переносе этот регистр заполняется только текущими данными на дату перехода. Вся историческая информация, накопленная в ЗУП 2.5 в документах СЗВ-СТАЖ или Параметры периодов стажа ПФР, остается за бортом.
Если вы уже выполнили перенос и обнаружили, что при формировании отчетности за текущий год программа «не видит» стаж за прошлые периоды, нам придется воспользоваться дополнительными инструментами.
Если типовой помощник не справился, рассмотрим наиболее простой и эффективный способ, который не требует программирования. Мы можем использовать файлы отчетности, которые вы ранее выгружали из ЗУП 2.5 для сдачи в контролирующие органы.
СЗВ-СТАЖ за нужные периоды и выгрузите их на диск в формате XML.При загрузке система автоматически создаст документы СЗВ-СТАЖ. После их проведения записи попадут в нужный нам регистр Параметры периодов стажа ПФР. Это «оживит» историю стажа сотрудников в новой базе. Важный нюанс: убедитесь, что все сотрудники в загружаемых файлах уже сопоставлены по СНИЛС и ИНН с объектами в новой базе, иначе система создаст дубли в справочнике Физические лица.
Часто пользователи пытаются использовать внешнюю обработку ПомощникПереходаСПрошлыхПрограммЗарплатаКадры.epf. Рассмотрим ситуацию, когда при ее запуске возникают ошибки типа Поле объекта не обнаружено или Недопустимое значение параметра.
Выясним причину: эти ошибки обычно связаны с несовпадением версий обработки и конфигурации. Чтобы получить актуальную версию обработки, выполните следующие действия:
ПомощникПереходаСПрежнихПрограммЗарплатаКадры в дереве метаданных.ОбработкаВыгрузкиЗаписиСтажаПФР) на диск как файл .epf.Именно эта «вынутая» из конфигурации обработка будет обладать правильными именами полей, соответствующими вашей текущей версии базы.
При попытке использовать универсальную выгрузку/загрузку данных XML часто возникает ошибка: Ошибка преобразования данных XDTO: НачалоСвойства: КоличествоСтавок. Это происходит из-за различий в типах данных между редакциями 2.5 и 3.1. В старой редакции это поле могло допускать пустые значения или иметь другую точность.
Чтобы обойти эту проблему, проанализируем структуру обмена. Если вы используете Универсальный обмен данными в формате XML, вам потребуется создать несложное правило в Конвертации данных. Если же вы хотите быстро решить задачу «здесь и сейчас», можно воспользоваться обработкой Загрузка данных из файла.
Рассмотрим пошагово работу с Загрузкой данных из файла:
Параметры периодов стажа ПФР.Сотрудник, Организация, Дата начала, Дата окончания, Территориальные условия и т.д.Существует специфическая методика, упомянутая специалистами: использование промежуточной версии ЗУП 3.1.8. Посмотрим, как это работает. Существует внешняя обработка, предназначенная для переноса стажа именно в версию 3.1.8. Если ваша рабочая база уже версии 3.1.20 и выше, этот метод требует осторожности:
Алгоритм действий:
Если вы решились править внешнюю обработку самостоятельно, обратите внимание на вызов макетов. Ошибка Недопустимое значение параметра (параметр номер '1') в функции ПолучитьМакет() часто лечится простым переименованием обращения. Посмотрим на пример:
// Было в старой версии обработки:
Макет = Обработки.ПомощникПереходаСПрошлыхПрограммЗарплатаКадры.ПолучитьМакет("ИмяМакета");
// Нужно заменить на актуальное имя в вашей конфигурации:
Макет = Обработки.ПомощникПереходаСПрежнихПрограммЗарплатаКадры.ПолучитьМакет("ИмяМакета");
Обратите внимание на замену слова «Прошлых» на «Прежних». В разных релизах 1С разработчики меняли имя этого объекта, что приводило к неработоспособности старых внешних обработок.
Мы проанализировали основные пути восстановления данных о страховом стаже. Подведем итоги: наиболее безопасным и «штатным» способом является загрузка файлов XML, ранее сданных в фонд. Если же требуется перенести огромный массив данных с филиалами и специфическими условиями стажа, используйте метод Загрузки из файла (Excel) напрямую в регистр Параметры периодов стажа ПФР, предварительно подготовив данные в табличном виде. Это избавит вас от борьбы с ошибками XDTO и несовместимостью релизов при обмене через XML.