При активной работе в файловом режиме платформы 1С:Предприятие 7.7 внезапное переполнение свободного пространства на системном диске может привести к аварийному завершению сеансов и возникновению критического сбоя: «1С: Невосстановимая ошибка базы данных. Код -10000». При этом пользователи нередко сталкиваются с ситуацией, когда справочники и регистры остаются на месте, а журналы документов оказываются полностью пустыми. Разберем причины возникновения этой неполадки и последовательность действий по корректному восстановлению базы данных.
Для понимания логики восстановления проанализируем, почему переполнение диска C: влияет на информационную базу, расположенную на другом логическом диске:
%TEMP%. Если на системном диске заканчивается место, механизм кэширования транзакций прерывается, что приводит к некорректной фиксации данных и повреждению заголовков таблиц DBF.1SJOURN.DBF, таблицами шапок (DH*.DBF), табличными частями (DT*.DBF) и таблицами движений регистров (RA*.DBF). При обрыве транзакции физические записи в таблицах остаются, но в байтах 4–7 заголовка 1SJOURN.DBF обнуляется или уменьшается счетчик записей. В результате платформа считает журнал пустым.Перед выполнением любых манипуляций с поврежденной базой обязательно создадим полную резервную копию каталога информационной базы на физическом уровне (простым копированием папки базы на свободный накопитель). Все восстановительные процедуры выполняем исключительно над рабочей копией.
Часто ошибка с кодом 10000 связана с разрушением индексных файлов, которые перестают указывать на существующие записи. Выполним полное пересоздание индексных файлов:
1cv7s.exe или 1cv7.exe в диспетчере задач.*.cdx. Таблицы с расширением *.dbf не трогаем.Если после входа в программу документы не появились, перейдем к проверке структуры таблиц и журнала документов.
В файловой версии 1С 7.7 соответствие между объектами конфигуратора и физическими таблицами на диске зафиксировано в словаре данных — текстовом файле 1CV7.DD. Рассмотрим, как определить нужную таблицу:
1CV7.DD любым текстовым редактором (например, «Блокнотом»).Регистр.ОстаткиТМЦ.RG405.DBF, а таблица движений — RA405.DBF.1SJOURN.DBF.Если стандартное тестирование и исправление зависает, выполним его поэтапно через «Конфигуратор» (меню «Администрирование» — «Тестирование и исправление ИБ»), отмечая за один проход только один пункт:
Если сбой произошел на удаленной точке, работающей в режиме распределенной информационной базы (УРБД), наиболее надежным и быстрым решением является повторная синхронизация с центральной базой:
Чтобы исключить повторение сбоев при переполнении системного раздела, настроим перенос временных файлов 1С 7.7 на диск с достаточным объемом:
"C:\Program Files\1Cv77\BIN\1cv7s.exe" enterprise /D"D:\Base1C" /T"D:\Temp"
Параметр /T указывает платформе прямой путь для создания временных файлов транзакций.TEMP и TMP, перенаправив их со служебного диска C: на диск с достаточным запасом свободного места.