Что делать, если при обновлении ЗУП до 3.1.20.97 возникает ошибка «Ошибка заполнения документа основания во вторичном регистре»?

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

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

Давайте подробно разберем, почему возникает эта ошибка и как ее исправить, чтобы успешно завершить обновление.

Анализируем причину ошибки

Суть проблемы кроется в изменениях, которые вносит релиз 3.1.20.97. В этом обновлении в независимый регистр сведений СостоянияСотрудников добавляется новый ресурс — ДокументОснование. Этот ресурс должен хранить ссылку на документ, который изменил состояние сотрудника (например, приказ о приеме на работу, документ отпуска и т.д.).

Процедура обновления пытается пройти по всем существующим записям регистра СостоянияСотрудников и заполнить этот новый ресурс соответствующими документами-основаниями.

Основная причина сбоя — наличие в базе нетиповых (самописных) документов, которые также влияют на состояние сотрудников. Стандартный обработчик обновления «не знает» о существовании таких документов. Когда он находит запись в регистре, созданную вашим нетиповым документом, он не может определить его тип и записать ссылку в ресурс ДокументОснование. В результате процесс прерывается с ошибкой.

Хотя реже, причинами могут быть и другие факторы:

Основное решение: работа с нетиповыми документами

Самый правильный и надежный способ решить проблему — это «познакомить» систему с вашими нетиповыми документами. Для этого нужно вручную добавить их в составной тип данных ресурса ДокументОснование. Рассмотрим по шагам, как это сделать.

Важно! Перед выполнением любых изменений в конфигурации обязательно создайте резервную копию базы данных.

  1. Запустите 1С в режиме «Конфигуратор».

  2. В дереве конфигурации найдите ветку «Регистры сведений» и раскройте ее. Найдите регистр СостоянияСотрудников.

  3. Раскройте ветку регистра СостоянияСотрудников и перейдите на вкладку «Данные». Найдите в списке ресурсов ДокументОснование.

  4. Дважды щелкните по ресурсу ДокументОснование, чтобы открыть его палитру свойств. Найдите свойство «Тип» и нажмите на кнопку с многоточием (...) справа от поля «Составной тип данных».

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

  6. Нажмите «ОК», чтобы сохранить изменения в составе типа.

  7. Теперь необходимо обновить конфигурацию базы данных. Нажмите F7 или выберите в меню «Конфигурация» -> «Обновить конфигурацию базы данных».

  8. После успешного обновления конфигурации закройте конфигуратор и запустите 1С в режиме «1С:Предприятие». Система предложит продолжить выполнение дополнительных обработок. Запустите их. Теперь обработчик обновления будет знать о ваших документах и сможет корректно заполнить ресурс ДокументОснование, не вызывая ошибки.

Этот метод решает проблему в корне, так как адаптирует структуру метаданных под фактическое состояние вашей информационной базы.

Альтернативные и дополнительные шаги

Если основной метод по какой-то причине не подходит, или вы хотите провести дополнительную диагностику, можно рассмотреть следующие варианты.

Ручное заполнение через расширение

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

  1. Создайте новое расширение конфигурации.

  2. Заимствуйте в него регистр сведений СостоянияСотрудников.

  3. Создайте для регистра форму списка и форму записи, добавив в них для редактирования поле ДокументОснование.

  4. Запустив программу с этим расширением, вы сможете вручную найти записи с пустым основанием и заполнить их нужными документами. Этот способ более трудоемкий, но не требует снятия конфигурации с поддержки.

Общая проверка базы данных

Перед повторной попыткой обновления рекомендуется выполнить общие профилактические действия:

Таким образом, проанализировав ситуацию, мы видим, что ошибка при обновлении ЗУП 3.1.20.97 является предсказуемым следствием наличия нетиповых доработок. Следуя предложенной инструкции, вы сможете успешно адаптировать вашу базу и завершить обновление.

← На главную