Переход с редакции 1С:Управление Торговлей 11.4 на 11.5 является одним из самых сложных процессов обновления в линейке продуктов 1С за последние годы. Это связано не просто с изменением кода, а с глобальной перестройкой архитектуры хранения данных — в частности, меняется механизм взаиморасчетов (переход на «онлайн» взаиморасчеты) и партионный учет НДС. Изучая тонкости обновления УТ 11.5, важно учитывать не только технические аспекты, но и корректность данных в текущей базе.
Ситуация, когда процесс обновления доходит до 100% и визуально «зависает», знакома многим специалистам. При этом система может не выдавать явных ошибок, но и не завершать процесс. Давайте разберем, почему это происходит, как диагностировать причину и какие шаги предпринять для корректного завершения обновления.
В первую очередь, давайте определимся с терминами. Когда индикатор показывает 100%, но программа не открывается для работы, это означает, что выполняются процедуры первоначального заполнения данных или запускаются критически важные отложенные обработчики, которые блокируют вход.
В контексте перехода на УТ 11.5 чаще всего проблема кроется в следующих блоках:
РасчетыСКлиентами, РасчетыСПоставщиками).Как верно замечено в обсуждении, просто смотреть на полосу загрузки бесполезно. Нам необходимо понять, что происходит «под капотом». Разберем последовательность действий для диагностики. Для глубокого исследования проблемных мест может потребоваться анализ конфигураций и расширений на наличие ошибок, чтобы исключить влияние кастомного кода на процесс обновления.
Запустим конфигуратор и откроем Журнал регистрации. Отфильтруем события по важности «Ошибки» и «Предупреждения». Если явных ошибок нет (как в случае автора темы), обратим внимание на информационные сообщения. Если вы видите, что долго выполняются процедуры, связанные с НДС или закрытием месяца, это хороший знак — система работает, просто объем данных велик.
Однако, если записи в журнале прекратили появляться, а процесс висит, возможно, произошло «зацикливание». В этом случае:
-debug).По стеку вызовов мы сможем увидеть, на каком именно объекте или в какой строке кода «крутится» программа. Часто это бывает конкретный проблемный документ или контрагент.
Одной из частых причин краха обновления при смене редакций является наличие в базе «мусора». Рассмотрим рекомендацию о проверке битых ссылок подробнее. Механизмы обновления УТ 11.5 очень чувствительны к ссылочной целостности. Если в регистрах есть записи, ссылающиеся на удаленные объекты (<Объект не найден...>), обработчик обновления может упасть или уйти в цикл.
Что нужно сделать перед обновлением (или откатившись из бэкапа):
Если обновление уже установлено, но обработчики не проходят, пропускать их и обновляться дальше (на следующий релиз) — опасная практика. Это приведет к тому, что часть реквизитов останется незаполненной, и в будущем вы получите некорректные отчеты или ошибки при проведении документов.
Вместо этого, давайте попробуем управлять процессом обновления вручную. В УТ 11 (на базе БСП) есть специальные инструменты для этого.
Если интерфейс заблокирован окном обновления, попробуйте открыть форму управления обновлением через навигационную ссылку. Нажмите Shift + F11 (или воспользуйтесь меню «Перейти по ссылке») и вставьте адрес:
e1cib/app/Обработка.РезультатыОбновленияПрограммы
В открывшемся окне мы увидим список всех обработчиков. Здесь можно:
Иногда помогает приостановить выполнение (через контекстное меню или кнопки формы), разобраться с причиной (например, исправить данные конкретного документа) и запустить снова.
В обсуждаемом случае автор заметил, что долго выполняются процедуры по НДС. В редакции 11.5 изменился механизм партионного учета. Если у вас в базе остались незакрытые периоды или нарушена последовательность, обновление попытается это исправить «на лету».
Рекомендации:
Это самый ресурсоемкий процесс. Если ваша база велика, рекомендуется выполнить переход на «Онлайн взаиморасчеты» до наката обновления 11.5, еще находясь в версии 11.4. Чтобы привести данные в порядок перед этим шагом, часто требуется автоматическое групповое создание документов взаимозачета задолженности, что позволит минимизировать количество «хвостов» в регистрах.
Если обновление уже идет, проверьте состояние регистра сведений ОчередьЗаданийНаРасчетВзаиморасчетов. Если там миллионы записей, система не зависла — она работает. В этом случае нужно обеспечить SQL-серверу максимальные ресурсы:
TempDB.Если обновление прервалось аварийно, и при следующем входе оно не запускается или ведет себя некорректно, можно попробовать форсировать процесс с помощью параметров запуска:
Запустите 1С:Предприятие с ключом:
/C СтартОбновленияИнформационнойБазы
Это принудительно инициирует процедуру обновления. Также полезно проверить регистр сведений ПотокиОбновленияИнформационнойБазы. Если там остались "зависшие" записи от предыдущих попыток, их можно аккуратно удалить, чтобы система могла создать новые потоки.
Проблема зависания на 100% при переходе УТ 11.4 -> 11.5 решается комплексно: