Что делать, если тестирование и исправление в 1С зависло на пересчете регистра?

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

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

Как проверить, висит ли процесс на самом деле

Часто пользовательский интерфейс Конфигуратора 1С перестает откликаться, а строка состояния замирает на одной надписи (например, при обработке регистров расчета). Это не всегда означает, что программа «зависла» в аварийном смысле.

Рассмотрим порядок действий для диагностики состояния процедуры:

  1. Откроем Диспетчер задач (или Монитор ресурсов) на сервере или локальном ПК, где запущен Конфигуратор.
  2. Найдем процесс 1cv8.exe (или 1cv8c.exe).
  3. Оценим показатели нагрузки:
    • Загрузка ЦП: если процесс стабильно использует ресурсы одного или нескольких ядер процессора, значит, алгоритмы обработки данных продолжают выполняться.
    • Дисковая активность (Операции ввода-вывода): при пересчете итогов происходит интенсивная запись и чтение с диска. Постоянное изменение значений в столбцах «Прочитано (байт)» и «Записано (байт)» подтверждает активную работу СУБД или файлового движка.

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

Что произойдет, если прервать тестирование и исправление

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

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

Однако с текущим неоконченным этапом следует соблюдать осторожность:

Почему процесс затягивается и как правильно запускать ТИИ

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

В файловом режиме работы все операции выполняются в один поток, упираясь в скорость дисковой подсистемы. В клиент-серверном режиме задержки могут возникать из-за неактуальной статистики СУБД или сильной фрагментации индексов.

Для предотвращения зависаний рекомендуем придерживаться следующей стратегии обслуживания информационной базы:

  1. Обязательное создание резервной копии: перед любыми критическими операциями выполните выгрузку информационной базы (файл .dt) или сделайте копию файла 11CD (для файловых баз). Все эксперименты и первичные проверки лучше проводить на копии базы.
  2. Предварительная проверка утилитой chdbfl.exe: для файловых баз перед запуском ТИИ в Конфигураторе рекомендуется выполнить физическую проверку файла базы с помощью утилиты chdbfl.exe (находится в каталоге bin установленной платформы). Она быстро устраняет повреждения на физическом уровне.
  3. Раздельный запуск проверок: не устанавливайте все флажки ТИИ одновременно. Выполняйте процедуры пошагово:
    • Шаг 1: Реиндексация таблиц информационной базы и Сжатие таблиц информационной базы.
    • Шаг 2: Проверка логической целостности и Проверка ссылочной целостности.
    • Шаг 3: Пересчет итогов (запускайте только при наличии реальной необходимости).
  4. Управление итогами из режима «1С:Предприятие»: пересчет итогов регистров накопления и расчета быстрее и безопаснее выполнять из пользовательского режима через стандартную обработку Управление итогами. Это позволяет при необходимости ограничить период пересчета и не блокировать всю базу через Конфигуратор.
  5. Временный перенос в клиент-серверный режим: если файловая база выполняет пересчет итогов слишком долго, выгрузите её в `.dt` и загрузите на временный сервер MS SQL или PostgreSQL. На серверных мощностях пересчет и реструктуризация выполняются значительно быстрее, после чего обработанную базу можно выгрузить обратно.
← На главную