Тестирование и исправление базы 1С 8.3: какие галочки ставить
Содержание
Короткий ответ: для планового обслуживания ставьте Реиндексацию таблиц, Проверку логической целостности и Пересчёт итогов, а переключатель действий — в положение Тестирование и исправление. Остальные галочки включают точечно, когда база уже сбоит.
Тестирование и исправление базы 1С 8.3 — штатный механизм, который проверяет структуру информационной базы и лечит мелкие поломки. Вопрос «какие галочки ставить» возникает у каждого, кто первый раз открыл это окно: пунктов много, а неверный набор либо ничего не даст, либо надолго заблокирует базу. Ниже — что делает каждая проверка, в каком режиме запускать и какой набор безопасен.
Что делает тестирование и исправление информационной базы 1С
Механизм работает на уровне таблиц СУБД, а не документов. Он не пересчитывает налоги и не правит проводки — он чинит саму «тару», в которой лежат ваши данные: индексы, ссылки между объектами, служебные итоги.
Типовые поводы запустить процедуру:
- 🐌 база стала заметно медленнее открываться и проводить документы;
- ⚠️ выскакивают ошибки вида
Ошибка формата потокаилиОшибка СУБД; - 🔁 «поехали» остатки и обороты в стандартных отчётах;
- 🧩 после аварийного завершения работы или отключения питания.
Тестирование и исправление — не панацея от ошибок учёта. Если неверно введён документ, механизм его не заметит: для него это корректные данные. Он ловит только техническую порчу базы.
Как запустить процедуру
Способ зависит от типа базы — файловая или клиент-серверная.
Файловая база (один файл 1Cv8.1CD):
- Закройте все сеансы, сделайте резервную копию (выгрузку
.dtили копию папки). - Запустите базу в режиме
Конфигуратор. - Меню
Администрирование→Тестирование и исправление.... - Выставьте галочки и режим, нажмите
Выполнить.
Клиент-серверная база (SQL):
Окно Тестирование и исправление доступно из Конфигуратора и здесь, но глубокие операции лучше делать средствами СУБД (обслуживание MS SQL или PostgreSQL). Для файловой базы есть отдельная внешняя утилита chdbfl.exe — о ней ниже.
Перед любым запуском сделайте резервную копию. Режим исправления физически меняет базу; откатить его можно только из копии.
Какие галочки ставить: развёрнутое описание
В окне два блока. Сверху — список проверок (что делать), снизу — режим действий (что делать с найденными ошибками). Разберём проверки по порядку.
Реиндексация таблиц информационной базы 1С: что это
Индекс — это «оглавление» таблицы, по которому 1С быстро находит нужные строки. Со временем индексы фрагментируются, и выборка тормозит.
Реиндексация удаляет старые индексы и строит их заново. Данные при этом не меняются — только служебные структуры.
- ✅ Безопасна, ставьте почти всегда.
- ⏱ На больших базах занимает время, но не портит данные.
- 🎯 Первое, что стоит попробовать при «база стала тормозить».
Проверка логической целостности информационной базы 1С
Проверяет, что внутренняя структура таблиц не разрушена: заголовки, страницы, форматы записей.
- ✅ Ставьте вместе с реиндексацией — базовый набор.
- 🔍 Именно эта проверка ловит
Ошибка формата потока.
Проверка ссылочной целостности информационной базы 1С
Проверяет ссылки между объектами: например, документ ссылается на контрагента, а того удалили «жёстко» мимо пометки на удаление. Получается «битая ссылка».
Когда галочка включена, снизу активируются варианты действий при обнаружении:
| Вариант | Что делает | Когда выбирать |
|---|---|---|
Создавать объекты | восстанавливает пустой объект по битой ссылке | нужно сохранить документы-владельцы |
Очищать ссылки | обнуляет ссылку в реквизите | ссылка не критична |
Не изменять | только сообщает, ничего не трогает | сначала оценить масштаб |
Первый прогон делайте с Не изменять, чтобы увидеть список проблем. Решение об очистке принимайте осознанно.
Пересчёт итогов
Регистры накопления и бухгалтерии хранят предрассчитанные итоги для скорости отчётов. Если они «разошлись» с движениями, отчёты врут.
Пересчёт итогов перестраивает эти таблицы заново.
- ✅ Ставьте, если «съехали» остатки и обороты в ОСВ, карточках счёта, отчётах по складу.
- 🧮 Данные документов не трогает — только агрегаты.
Сжатие таблиц информационной базы 1С
Физически удаляет из файла базы место, занятое ранее удалёнными записями. Файл .1CD уменьшается в размере.
- 📉 Полезно после массового удаления объектов (свёртка базы, чистка).
- ⏱ Долгая операция, для файловых баз.
Реструктуризация таблиц информационной базы 1С
Пересоздаёт таблицы по текущей структуре метаданных. Самая тяжёлая операция: 1С копирует данные во временные таблицы и переносит обратно.
- 🏗 Требует свободного места на диске ≈ равного размеру базы.
- 🐢 Самая долгая. Ставьте только при явной необходимости.
- ⚠️ Без свежей копии не запускать.
Готовые наборы галочек под задачу
Чтобы не гадать, выберите свой сценарий.
Режим действий: тестирование или исправление
Под списком проверок стоит переключатель. Разница принципиальная:
- Только тестирование — 1С ищет ошибки и пишет отчёт, но ничего не меняет. Безопасно, база не блокируется «на лечение».
- Тестирование и исправление — найденные ошибки тут же чинятся. Именно этот режим меняет базу.
Логика такая: сначала прогон в режиме Только тестирование, смотрим лог. Если ошибки есть и они «лечатся» — второй прогон в режиме Тестирование и исправление с резервной копией под рукой.
Ниже — чек-лист безопасного запуска.
Консольный запуск тестирования и исправления (пакетный режим)
Для регламентного обслуживания процедуру запускают без окна, из командной строки. Это удобно для планировщика заданий.
Пример пакетного запуска через 1cv8:
"C:\Program Files\1cv8\common\1cv8.exe" DESIGNER ^
/F "D:\bases\buh" ^
/N "Администратор" /P "пароль" ^
/IBCheckAndRepair -ReIndex -LogIntegrity -RecalcTotals ^
/Out "D:\logs\ttii.log"
Ключевые параметры -IBCheckAndRepair:
-ReIndex— реиндексация таблиц;-LogIntegrity— проверка логической целостности;-RefIntegrity— проверка ссылочной целостности;-RecalcTotals— пересчёт итогов;-TestOnly— только тестирование, без исправления.
Точный список ключей зависит от версии платформы. Сверяйтесь с описанием параметров запуска вашего релиза — состав ключей между версиями иногда меняется.
Если не помогло: утилита chdbfl.exe
Иногда база не открывается даже в Конфигураторе — например, Файл базы данных поврежден. Тогда штатное окно недоступно, и на помощь приходит внешняя утилита для файловых баз.
Порядок:
- Скопируйте повреждённый
1Cv8.1CDв отдельную папку. - Запустите
chdbfl.exeиз каталога платформы (C:\Program Files\1cv8\<версия>\bin). - Укажите путь к файлу базы.
- Поставьте флаг
Исправлять обнаруженные ошибки. - Запустите проверку.
Если и chdbfl.exe не помогает — последний рубеж для файловой базы — выгрузка в .dt и загрузка в новую пустую базу. Иногда именно перезагрузка через .dt устраняет ошибки, которые не берёт исправление на месте.
Типичные ошибки при тестировании
- ❌ Запуск сразу с исправлением и без копии. Если механизм «почистит» лишние ссылки, вернуть их будет неоткуда.
- ❌ Реструктуризация без свободного места. Диск заполнится в процессе — база останется в промежуточном состоянии.
- ❌ Прогон на работающей базе. Пользователи внутри → блокировки и незавершённая обработка.
- ❌ Ожидание, что механизм исправит учёт. Он не для этого: неверные документы правит бухгалтер, а не тестирование.
Частые вопросы
Какие галочки ставить для планового обслуживания?
Что такое реиндексация таблиц информационной базы 1С?
Чем отличается «Только тестирование» от «Тестирование и исправление»?
Обязательно ли делать резервную копию перед запуском?
Сколько времени идёт тестирование и исправление базы 1С?
Что делать, если база вообще не открывается?
chdbfl.exe с флагом исправления ошибок. Если не помогло — выгрузить в .dt и загрузить в новую базу.