То что мне сообщил клиент:
Исходный релиз платформы 8.2.13.219. Текущий релиз платформы 8.2.16.352. Обновил без проблем и реструктуризация прошла успешно. Исходный релиз конфигурации БП 2.0.32.1. Обновлял на релиз 2.0.41.3. В самый ответственный момент вдруг закончилось место на диске.
chdbfl.exe говорит:
Поврежден заголовок файла базы данных Повреждено содержимое внутреннего файлаБаза полностью разрушена восстановление невозможно.
Tool_1CD.exe тоже не помогает...
Для начала я использовал проект http://code.google.com/p/restoration-base-1c8/
Я использовал конфигурацию 0.2.2. (на момент публикации версия не выложена по причине мелких доработок о которых раскажу ниже, выложеная версия 0.1.7 для реального востановления не подходит, слишком много там ошибок, она носит скорее ознакомительный характер)
Для начала переименовал файл и загрузил его, загрузка шла 2 часа (размер файла примерно 1.8 гиг, загрузка идет долго в том числе и по тому что не используется корневой обьект). В процессе загрузки меня обматерило
1. с десяток сообщений типа "Ошибка потока описания таблицы "_REFERENCE54", Блок 00 00 0F 6C E0 00" на самом деле это ошибка конфигурации востановления, но я быстро понял в чем дело, просто таблицы где описание занимает более одного блока загрузились только по одному, вручную догрузил (поиск по индексу и кнопка "Загрузить данные блока"), ну и после этго на указаной таблице "Загрузить структуру ветки". (Это одна из ошибок которая не дает выложить версию 0.2.2)
2. Более серьезной проблеммой стало сообщение типа "В описании таблицы корневого блока 00 00 67 97 A0 00 есть недопустимые символы".
найдя блок жму "Редактировать таблицу", получаю рис "п-1", видно, что описание таблицы цело просто после него идет "хвост" мусора, захожу в блок и забиваю нулями этот мусор. (вторая требуемая доработка - нужна процедура забития нулями облости, я просто замучился по одному фигачить).
После того как ошибка пропала, жму "Загрузить структуру ветки".
К сожалению одна таблица не подлежала востановлению, но поразмыслив я понял что это таблица из новой конфигурации и она просто пустая, по этому я решил на нее забить.
На этом этапе вроде все выглядет красиво, но все равно не работает.
Тогда лезу в корневой обьект "редактировать таблицу" и вижу что длинна явно кривая (на картинке уже исправленый вариант), ну лезу в описание корневого и исправляю длинну.
после этого Tool_1CD.exe выдает только 1 ошибку, а chdbfl.exe две и говорит, что может помоч.
Запускаю chdbfl.exe на исправление и база завелась в режиме предприятия, и вроде все данные целы.
идем далее (последний рисунок)
Учитывая что часть блоков неверно распределено (на картинке серые) и корневой обьект содержит ссылки на FREE блоки, запускать на базе какие-либо махинации в конфигурации не стоит, стоит через выгрузку XML все перенести в новую чистую базу и уже с ней работать.