При обновлении конфигурации 1С:Зарплата и управление персоналом (ЗУП) до версии 3.1.18.46 многие пользователи сталкиваются с затруднениями, особенно на этапах обработки данных, связанных с 1С:БЭД (Библиотека электронных документов). Типовая ошибка проявляется как зависание процесса на шагах "1С:БЭД: обновление подписываемых видов электронных документов" и "1С:БЭД: обновление состояний подписания электронных документов", часто сопровождаясь сообщением "Значение не является значением объектного типа (ПолноеИмя)".
Эта проблема может вызвать значительные трудности, особенно когда необходимо срочно обновить конфигурацию для сдачи отчетности, например, СЗВ-М или СЗВ-ТД. В этой статье мы подробно рассмотрим несколько проверенных способов решения данной проблемы, опираясь на опыт сообщества 1С.
Прежде чем перейти к решениям, давайте кратко проанализируем, почему может возникать эта ошибка:
Возврат или некорректная обработка данных, что приводит к зависанию или сбою.Этот метод является одним из наиболее часто применяемых и эффективных, поскольку он направлен на исправление корневых причин проблемы, выявленных разработчиками и сообществом 1С.
Конфигуратора.EF_1698, EF_1830 или другие), которые могут конфликтовать с новой версией, рекомендуется их удалить перед первым запуском обновленной базы. Часто именно старые расширения могут вызывать ошибки после обновления. Для этого в Конфигураторе откройте Конфигурация - Расширения конфигурации, выберите ненужные расширения и удалите их.Необходимо установить два ключевых патча, которые устраняют известные ошибки в обработчиках обновления 1С:БЭД:
EF_00_00367659: Этот патч исправляет ошибку, связанную с пропущенным оператором Возврат в модуле регистра сведений СостояниеПодписанияЭД, что приводило к некорректной логике выполнения обработчика.EF_00_00369391: Этот патч направлен на решение проблемы незавершения обработчика обновления "Обновление состояний подписания электронных документов".Для установки патчей:
Конфигуратора откройте Конфигурация - Расширения конфигурации.Добавить и выберите пункт Загрузить расширение из файла. Укажите файл расширения из распакованного патча. Повторите для второго патча.Активно).После применения основной конфигурации и патчей, но перед запуском обновленной базы в пользовательском режиме (или в режиме отладки для выполнения отложенных обработчиков), необходимо вручную изменить настройки одного из проблемных обработчиков.
Если у вас не отображаются "Все функции" или "Функции для технического специалиста", выполните следующие действия:
Сервис и Настройки (две полоски и стрелка вниз) в правом верхнем углу.Настройка - Параметры.Режим технического специалиста.Сервис и Настройки и выберите Функции для технического специалиста.В открывшемся окне "Функции для технического специалиста" найдите раздел Регистры сведений и в нем выберите ОбработчикиОбновления.
В открывшемся списке обработчиков найдите строку, соответствующую обработчику РегистрыСведений.ПодписываемыеВидыЭД.ОбработатьДанныеДляПереходаНаНовуюВерсию. Откройте эту запись для редактирования и снимите флажок Многопоточный. Этот шаг критически важен, так как именно многопоточный режим вызывает зависания для данного обработчика.
Некоторые пользователи также сообщали о необходимости снять флажок Обработка порции завершена для этого же обработчика, если он установлен. Мы рекомендуем проверить и его состояние.
После всех подготовительных действий запустите процесс отложенного обновления:
/C ЗапуститьОтложенноеОбновлениеСейчас. Для этого в Конфигураторе откройте Сервис - Параметры - Запуск 1С Предприятия, добавьте этот параметр в соответствующее поле и запустите базу в режиме отладки (F5).Функции для технического специалиста -> Регламентные задания или Операции -> Результаты обновления программы.Важно: После успешного обновления, возможно, вам потребуется снова установить флажок Многопоточный для обработчика РегистрыСведений.ПодписываемыеВидыЭД.ОбработатьДанныеДляПереходаНаНовуюВерсию. Однако это не является критически важным и может быть сделано позже, после получения официальных рекомендаций от 1С или при следующих обновлениях.
Если предыдущий метод не помог, или вы не хотите вмешиваться в регистры сведений и патчи, этот способ часто оказывается очень надежным, особенно для клиент-серверных баз.
Конфигураторе откройте Администрирование - Выгрузить информационную базу. Сохраните базу в файл формата .dt.Конфигураторе новой файловой базы откройте Администрирование - Загрузить информационную базу и укажите сохраненный ранее файл .dt.Конфигуратор.EF_00_00367659 и EF_00_00369391, установите их и в файловую базу..dt..dt в вашу клиент-серверную базу.Этот метод позволяет обойти проблемы с фоновыми заданиями и особенностями клиент-серверного режима, поскольку в файловой базе все операции выполняются локально.
В некоторых случаях, если определенный обработчик упорно не хочет завершаться, можно попробовать вручную "завершить" его и при необходимости вызвать его процедуру.
РегистрыСведений.ПодписываемыеВидыЭД.ОбработатьДанныеДляПереходаНаНовуюВерсию или РегистрыСведений.СостояниеПодписанияЭД.ОбработатьДанныеДляПереходаНаНовуюВерсию.Обработка завершена (или Выполнено, в зависимости от версии).Если вы уверены, что обработчик должен был выполниться, но завис, и его статус был установлен вручную, вы можете попробовать вызвать его процедуру через универсальную обработку.
РегистрыСведений.СостояниеПодписанияЭД.ОбработатьДанныеДляПереходаНаНовуюВерсию(Новый Структура("ОбработкаЗавершена", Ложь));
// Параметр может быть пустым или содержать дополнительные данные в зависимости от процедуры
Внимание: Этот шаг требует глубокого понимания логики обработчиков и может привести к непредсказуемым последствиям при неправильном использовании. Мы рекомендуем его только опытным специалистам и исключительно на резервной копии базы.
Иногда ошибка может быть вызвана конфликтом со старыми, неактуальными или несовместимыми расширениями.
Конфигураторе откройте Конфигурация - Расширения конфигурации.EF_1698), попробуйте их временно отключить (снять флажок Активно) или удалить.Функции для технического специалиста -> Регламентные задания) на более частое (например, каждые 10 секунд без паузы) для ускорения.EF_50014007 для предотвращения ошибок доступа к журналам документов у пользователей с ограниченными правами.Мы рассмотрели наиболее эффективные и проверенные методы решения проблемы при обновлении 1С:ЗУП 3.1.18.46. Помните, что каждый случай может быть уникальным, и возможно потребуется комбинация этих подходов. Всегда делайте резервные копии перед внесением любых изменений в базу данных!