Восстановление файловой БД
Напишу как я восстанавливал файловую БД, может кому пригодится..
- Описание
- Подробнее
Описание
Итак, динамическое обновление как всегда все сломало. В моем случае база не запускалась ни в режиме 1С Предприятия, ни в режиме конфигуратора. Очистка кэша не помогла.
1С жаловалась на ошибку формата потока.
Ну ладно, где там наш chdbfl.exe… СДЕЛАЛ КОПИЮ БАЗЫ, пусть уже не совсем живой, запустил тестирование. Кое-какие ошибки исправились, на картинке видно какие.
Запускаем 1С. И тут еще интереснее — «Конвертация из ознакомительной версии не поддерживается данной версией 1С Предприятия»… да уж…)
Несколько часов поиска по форумам:
//sale.itcity.ru/public/187832/
//sale.itcity.ru/public/155427/
//sale.itcity.ru/public/182845/
http://gustelev.livejournal.com/162890.html
просмотр утилитой 1CD_TOOL, ковыряние в 16-ричном редакторе и т.д……. в общем проблема не решалась.
Потом наткнулся на «Компоненту для прямого чтения/записи данных из файлов баз данных .1CD».
//sale.itcity.ru/public/166557/
Секрет заключается в том, что она может разобрать файл 1CD на кусочки (в 7.7 была аналогичная утилитка), а потом восстановить из них обратно.
Ну логично было попробовать подменить неиправные куски файла БД, в моем случае это CONFIG и CONFIGSAVE.
Откуда я узнал что нужно именно эти таблицы заменить? Потому что в программе TOOL_1CD сделал тест формата потока (эта функция реализована в последних версиях) и она мне указала на две записи в этих таблицах (в ссылках было что-то типо ….dyn_update…) В других случаях возможны разные варианты, надо искать что именно сломалось.
Итак, открываем обработку ExtractObjects.epf (сама компонента скомпилирована для разных ОС даже)… из каталога с компонентой, нажимаем первые 3 кнопки по порядку. Потом подменяем файлы и нажимаем 4-ю кнопку — Восстановить. У меня была конфигурация рабочая, взятая из архива, такая же как и в рухнувшей базе.
Закрыл обработку, запускаю 1С — вау, все работает)))
P.S. Делайте архивы почаще.

