Тестирование и исправление базы 1С 8.3: какие галочки ставить

· 7 мин

Содержание

Короткий ответ: для планового обслуживания ставьте Реиндексацию таблиц, Проверку логической целостности и Пересчёт итогов, а переключатель действий — в положение Тестирование и исправление. Остальные галочки включают точечно, когда база уже сбоит.

Тестирование и исправление базы 1С 8.3 — штатный механизм, который проверяет структуру информационной базы и лечит мелкие поломки. Вопрос «какие галочки ставить» возникает у каждого, кто первый раз открыл это окно: пунктов много, а неверный набор либо ничего не даст, либо надолго заблокирует базу. Ниже — что делает каждая проверка, в каком режиме запускать и какой набор безопасен.

Что делает тестирование и исправление информационной базы 1С

Механизм работает на уровне таблиц СУБД, а не документов. Он не пересчитывает налоги и не правит проводки — он чинит саму «тару», в которой лежат ваши данные: индексы, ссылки между объектами, служебные итоги.

Типовые поводы запустить процедуру:

  • 🐌 база стала заметно медленнее открываться и проводить документы;
  • ⚠️ выскакивают ошибки вида Ошибка формата потока или Ошибка СУБД;
  • 🔁 «поехали» остатки и обороты в стандартных отчётах;
  • 🧩 после аварийного завершения работы или отключения питания.

Тестирование и исправление — не панацея от ошибок учёта. Если неверно введён документ, механизм его не заметит: для него это корректные данные. Он ловит только техническую порчу базы.

Как запустить процедуру

Способ зависит от типа базы — файловая или клиент-серверная.

Файловая база (один файл 1Cv8.1CD):

  1. Закройте все сеансы, сделайте резервную копию (выгрузку .dt или копию папки).
  2. Запустите базу в режиме Конфигуратор.
  3. Меню АдминистрированиеТестирование и исправление....
  4. Выставьте галочки и режим, нажмите Выполнить.

Клиент-серверная база (SQL):

Окно Тестирование и исправление доступно из Конфигуратора и здесь, но глубокие операции лучше делать средствами СУБД (обслуживание MS SQL или PostgreSQL). Для файловой базы есть отдельная внешняя утилита chdbfl.exe — о ней ниже.

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

Какие галочки ставить: развёрнутое описание

В окне два блока. Сверху — список проверок (что делать), снизу — режим действий (что делать с найденными ошибками). Разберём проверки по порядку.

Реиндексация таблиц информационной базы 1С: что это

Индекс — это «оглавление» таблицы, по которому 1С быстро находит нужные строки. Со временем индексы фрагментируются, и выборка тормозит.

Реиндексация удаляет старые индексы и строит их заново. Данные при этом не меняются — только служебные структуры.

  • ✅ Безопасна, ставьте почти всегда.
  • ⏱ На больших базах занимает время, но не портит данные.
  • 🎯 Первое, что стоит попробовать при «база стала тормозить».

Проверка логической целостности информационной базы 1С

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

  • ✅ Ставьте вместе с реиндексацией — базовый набор.
  • 🔍 Именно эта проверка ловит Ошибка формата потока.

Проверка ссылочной целостности информационной базы 1С

Проверяет ссылки между объектами: например, документ ссылается на контрагента, а того удалили «жёстко» мимо пометки на удаление. Получается «битая ссылка».

Когда галочка включена, снизу активируются варианты действий при обнаружении:

ВариантЧто делаетКогда выбирать
Создавать объектывосстанавливает пустой объект по битой ссылкенужно сохранить документы-владельцы
Очищать ссылкиобнуляет ссылку в реквизитессылка не критична
Не изменятьтолько сообщает, ничего не трогаетсначала оценить масштаб

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

Пересчёт итогов

Регистры накопления и бухгалтерии хранят предрассчитанные итоги для скорости отчётов. Если они «разошлись» с движениями, отчёты врут.

Пересчёт итогов перестраивает эти таблицы заново.

  • ✅ Ставьте, если «съехали» остатки и обороты в ОСВ, карточках счёта, отчётах по складу.
  • 🧮 Данные документов не трогает — только агрегаты.

Сжатие таблиц информационной базы 1С

Физически удаляет из файла базы место, занятое ранее удалёнными записями. Файл .1CD уменьшается в размере.

  • 📉 Полезно после массового удаления объектов (свёртка базы, чистка).
  • ⏱ Долгая операция, для файловых баз.

Реструктуризация таблиц информационной базы 1С

Пересоздаёт таблицы по текущей структуре метаданных. Самая тяжёлая операция: 1С копирует данные во временные таблицы и переносит обратно.

  • 🏗 Требует свободного места на диске ≈ равного размеру базы.
  • 🐢 Самая долгая. Ставьте только при явной необходимости.
  • ⚠️ Без свежей копии не запускать.

Готовые наборы галочек под задачу

Чтобы не гадать, выберите свой сценарий.

Что у вас с базой?

Режим действий: тестирование или исправление

Под списком проверок стоит переключатель. Разница принципиальная:

  • Только тестирование — 1С ищет ошибки и пишет отчёт, но ничего не меняет. Безопасно, база не блокируется «на лечение».
  • Тестирование и исправление — найденные ошибки тут же чинятся. Именно этот режим меняет базу.

Логика такая: сначала прогон в режиме Только тестирование, смотрим лог. Если ошибки есть и они «лечатся» — второй прогон в режиме Тестирование и исправление с резервной копией под рукой.

Ниже — чек-лист безопасного запуска.

Порядок запуска тестирования и исправления
Выполнено: 0 / 7

Консольный запуск тестирования и исправления (пакетный режим)

Для регламентного обслуживания процедуру запускают без окна, из командной строки. Это удобно для планировщика заданий.

Пример пакетного запуска через 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

Иногда база не открывается даже в Конфигураторе — например, Файл базы данных поврежден. Тогда штатное окно недоступно, и на помощь приходит внешняя утилита для файловых баз.

Порядок:

  1. Скопируйте повреждённый 1Cv8.1CD в отдельную папку.
  2. Запустите chdbfl.exe из каталога платформы (C:\Program Files\1cv8\<версия>\bin).
  3. Укажите путь к файлу базы.
  4. Поставьте флаг Исправлять обнаруженные ошибки.
  5. Запустите проверку.

Если и chdbfl.exe не помогает — последний рубеж для файловой базы — выгрузка в .dt и загрузка в новую пустую базу. Иногда именно перезагрузка через .dt устраняет ошибки, которые не берёт исправление на месте.

Типичные ошибки при тестировании

  • Запуск сразу с исправлением и без копии. Если механизм «почистит» лишние ссылки, вернуть их будет неоткуда.
  • Реструктуризация без свободного места. Диск заполнится в процессе — база останется в промежуточном состоянии.
  • Прогон на работающей базе. Пользователи внутри → блокировки и незавершённая обработка.
  • Ожидание, что механизм исправит учёт. Он не для этого: неверные документы правит бухгалтер, а не тестирование.

Частые вопросы

Какие галочки ставить для планового обслуживания?
Реиндексация таблиц, Проверка логической целостности и Пересчёт итогов в режиме «Тестирование и исправление». Этого достаточно для регулярной профилактики.
Что такое реиндексация таблиц информационной базы 1С?
Это перестроение служебных индексов — «оглавлений» таблиц. Данные не меняются, но выборки и отчёты снова работают быстро. Самая безопасная из проверок.
Чем отличается «Только тестирование» от «Тестирование и исправление»?
В первом режиме 1С только находит ошибки и пишет отчёт, ничего не меняя. Во втором — сразу их исправляет, физически меняя базу. Сначала запускают тестирование, потом исправление.
Обязательно ли делать резервную копию перед запуском?
Да. Режим исправления меняет базу необратимо. Единственный способ откатить нежелательные изменения — восстановиться из копии.
Сколько времени идёт тестирование и исправление базы 1С?
От пары минут на маленькой базе до нескольких часов на большой. Дольше всего работают реструктуризация и сжатие таблиц, быстрее — реиндексация и пересчёт итогов.
Что делать, если база вообще не открывается?
Для файловой базы использовать утилиту chdbfl.exe с флагом исправления ошибок. Если не помогло — выгрузить в .dt и загрузить в новую базу.