Почему при каждом запуске 1С:Бухгалтерии выполняются обработчики обновления и как это исправить?

Программист 1С v8.3 (Управляемые формы) 1C:Бухгалтерия IT и автоматизация бизнеса
← На главную

При работе с 1С:Бухгалтерией 3.0 после обновления конфигурации пользователи могут столкнуться с ситуацией, когда при каждом входе в программу в пользовательском режиме заново запускается процесс выполнения обработчиков обновления БСП (Библиотеки стандартных подсистем). Проанализируем, почему возникает эта проблема и как восстановить штатный режим запуска системы.

Причины циклического запуска обработчиков обновления

Выясним причину такого поведения программы. За выполнение процедур обновления данных в современных конфигурациях 1С отвечает Библиотека стандартных подсистем. При старте системы БСП сравнивает текущий номер версии метаданных из конфигурации со служебными данными, хранящимися в информационной базе.

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

  1. Рассогласование версий в служебных регистрах и константах: номер релиза в метаданных конфигурации выше или ниже, чем значение, записанное в константе ВерсияКонфигурации или регистре сведений Версии подсистем.
  2. Зависшие или незавершенные отложенные обработчики: одна из процедур обновления завершилась с ошибкой или осталась в промежуточном статусе выполнения.
  3. Сбой кэша платформы: из-за повреждения локального или серверного кэша платформа считывает устаревший номер версии.
  4. Установленный параметр запуска: в свойствах базы или строке запуска случайно прописан параметр /C ЗапуститьОбновлениеИнформационнойБазы.

Способ 1. Проверка и синхронизация версий в константах и регистрах

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

Разберем процесс по шагам:

  1. Откроем базу в режиме Конфигуратор. В меню «Конфигурация» — «Открыть конфигурацию» кликнем правой кнопкой мыши по корню дерева метаданных и откроем «Свойства». Зафиксируем точный номер версии конфигурации (например, 3.0.51.27).
  2. Запустим базу в режиме 1С:Предприятие под пользователем с правами «Администратор».
  3. Через меню «Главное» — «Все функции» (или «Функции для технического специалиста») откроем регистр сведений Версии подсистем.
  4. Проверим запись для основной подсистемы БухгалтерияПредприятия (или СтандартныеПодсистемы). Если записанный там номер версии отличается от релиза метаданных, скорректируем его вручную на актуальный.
  5. Откроем константу ВерсияКонфигурации и убедимся, что в ней указан текущий релиз программы. При наличии расхождений запишем правильное значение.

Способ 2. Проверка состояния отложенных обработчиков обновления

Если версии совпадают, но обработчики запускаются заново, проанализируем статус отложенных процедур БСП:

  1. Перейдем в раздел «Администрирование» — «Обслуживание» — «Результаты обновления и дополнительная обработка данных» (или откроем обработку Результаты обновления программы).
  2. Проверим список отложенных обработчиков. Если один из них завершился с ошибкой, изучим Журнал регистрации по событию «Обновление информационной базы».
  3. После устранения причины сбоя перезапустим обработчики из формы или перейдем в регистр сведений Обработчики обновления и установим статус сбойного обработчика в значение «Выполнен».

Способ 3. Очистка кэша и проверка параметров запуска

Посмотрим на дополнительные технические шаги, если предыдущие действия не дали результата:

  1. Проверим параметры запуска информационной базы в окне запуска 1С (стартере). Убедимся, что в поле «Параметры запуска» отсутствует команда ЗапуститьОбновлениеИнформационнойБазы.
  2. Завершим все работы и очистим кэш платформы: удалим содержимое каталогов %AppData%\1C\1Cv8 и %LocalAppData%\1C\1Cv8 на рабочем компьютере или переподключим базу в списке стартера (удалим запись о базе и добавим её заново).
← На главную