Переход со старых редакций программных продуктов 1С на новые — всегда ответственный процесс, сопряженный с множеством технических нюансов. Типовой перенос данных из конфигураций «1С:Зарплата и управление персоналом» редакции 2.5 (или «1С:Зарплата и бюджетное учреждение» редакции 1.0) в новую редакцию 3.1 обычно проходит в полуавтоматическом режиме. Однако пользователи часто сталкиваются с неприятным сюрпризом: после завершения переноса у сотрудников оказывается заполненным только один лицевой счет, хотя на практике в старой базе их могло быть три или четыре по разным зарплатным проектам.
В рамках этой статьи мы подробно разберем, почему возникает данная проблема, проанализируем архитектурные различия хранения данных в разных редакциях программы и изучим три надежных практических метода, которые помогут нам оперативно догрузить все недостающие лицевые счета в новую базу.
Для начала давайте разберемся в первопричинах такого поведения системы. Здесь играют роль два ключевых фактора:
3.1.8. До этого релиза программа на физическом уровне поддерживала только один основной лицевой счет. Старые правила переноса разрабатывались под прежнюю архитектуру и не предусматривали выгрузку «исторических» или альтернативных счетов.Чтобы решить эту задачу, нам потребуется перенести данные напрямую из регистра сведений старой базы в регистр новой базы. Давайте сопоставим структуры этих регистров:
ЛицевыеСчетаСотрудниковОрганизаций. Его ключевая структура включает измерения: Организация, Сотрудник, Банк и ресурс НомерЛицевогоСчета.ЛицевыеСчетаСотрудниковПоЗарплатнымПроектам. Его структура выглядит сложнее: измерения — Организация, ФизическоеЛицо, ЗарплатныйПроект, а ресурсы — НомерЛицевогоСчета, Сотрудник и реквизит МесяцОткрытия.Поскольку структуры различаются, прямой перенос «один в один» без трансформации данных невозможен. Рассмотрим наиболее эффективные способы решения этой задачи.
Этот метод является наиболее популярным среди практикующих специалистов, так как он не требует программирования в конфигураторе или изменения правил конвертации данных. Мы выполним выгрузку информации в промежуточный файл Excel, подготовим его и загрузим в новую базу с помощью стандартной обработки.
Выполним этот процесс по шагам:
Шаг 1. Экспорт данных из старой базы (ЗУП 2.5)
Для получения списка всех лицевых счетов нам потребуется построить отчет по регистру сведений ЛицевыеСчетаСотрудниковОрганизаций. Сделать это можно с помощью консоли запросов или «Универсального отчета».
Рассмотрим пример запроса, который поможет нам быстро собрать нужные данные:
ВЫБРАТЬ
ЛицевыеСчета.Организация КАК Организация,
ЛицевыеСчета.Сотрудник.ФизическоеЛицо КАК ФизическоеЛицо,
ЛицевыеСчета.Сотрудник КАК Сотрудник,
ЛицевыеСчета.Банк КАК Банк,
ЛицевыеСчета.НомерЛицевогоСчета КАК НомерЛицевогоСчета
ИЗ
РегистрСведений.ЛицевыеСчетаСотрудниковОрганизаций КАК ЛицевыеСчета
Результат выполнения запроса необходимо сохранить в файл формата Excel (.xls или .xlsx). Убедитесь, что в выгрузке присутствуют уникальные идентификаторы сотрудников (например, СНИЛС или Код/Табельный номер), это позволит избежать ошибок при сопоставлении однофамильцев.
Шаг 2. Подготовка базы ЗУП 3.1 к загрузке
Перед тем как запускать загрузку, нам необходимо убедиться, что в новой информационной базе уже созданы и настроены все необходимые Зарплатные проекты. Перейти к ним можно в разделе меню Выплаты — Зарплатные проекты. Наименования проектов и банков должны соответствовать тем, которые мы будем загружать.
Шаг 3. Работа с обработкой «Загрузка данных из табличного документа»
Запустим базу ЗУП 3.1 в режиме «1С:Предприятие». Нам понадобится внешняя обработка ЗагрузкаДанныхИзТабличногоДокумента.epf (ее можно найти на диске ИТС или в каталоге шаблонов установленных конфигураций). Открываем ее через главное меню: Файл — Открыть.
Выполним настройку обработки:
Лицевые счета сотрудников по зарплатным проектам.Если у вас обслуживается крупное предприятие с сотнями сотрудников, ручная работа с Excel может показаться трудоемкой. В этом случае мы можем воспользоваться стандартными возможностями интеграции с банками через технологию DirectBank или простой обмен XML-файлами.
Рассмотрим этот процесс подробнее:
Выплаты, выберите пункт Обмен с банками (зарплата).Загрузить подтверждение из банка и выберите полученные XML-файлы.Этот способ исключает риск человеческой ошибки при ручном переносе и гарантирует стопроцентную точность номеров счетов.
Если вы хотите настроить перенос «чисто» прямо в процессе первоначального перехода, то стандартные правила обмена придется немного скорректировать. Нам понадобятся конфигурация «Конвертация данных, редакция 2» и файл правил переноса, который извлекается из дистрибутива обновления новой конфигурации.
Проанализируем ситуацию в правилах:
Контрагенты (или Банки из ЗУП 2.5) со справочником ЗарплатныеПроекты в ЗУП 3.1. Для этого пишется входящий обработчик на языке 1С, который на основе реквизитов организации и банка находит или создает соответствующий зарплатный проект в базе-приемнике.Мы рассмотрели три отличных способа решения проблемы с переносом нескольких лицевых счетов. Для большинства рядовых ситуаций оптимальным решением является Метод 1 (загрузка через Excel), так как он дает полный контроль над загружаемыми данными. Если же объемы информации колоссальны — смело используйте Метод 2 (загрузку файлов подтверждений от банков). Выберите подходящий вам вариант и приступайте к работе!