Каталог решений - Файл базы данных поврежден — мой опыт восстановления файла 1CD

Файл базы данных поврежден — мой опыт восстановления файла 1CD

Файл базы данных поврежден — мой опыт восстановления файла 1CD

В наличии

Хочу поделиться собственным опытом восстановления базы 1С. Кое-какие знания по проблеме я получил из форумов на Инфостарте, но кое-что пришлось додумывать самому. Но в результате база, которая не открывалась ни в Конфигураторе, ни во внешней утилите chdbfl, ни в программе Tool_1CD (первые четыре скриншота), в итоге была в моем случае ПОЛНОСТЬЮ ВОССТАНОВЛЕНА.

Категория:

Описание

Надеюсь, мой опыт кому-то поможет при решении аналогичной проблемы.

Итак, изложу перечень своих проделанных действий по шагам:

1) Установил и запустил программу HxD, которая имеется в свободном доступе в Интернет, на русском языке (она очень удобна для очень больших баз, работает достаточно быстро);

2) В программе открыл битую базу, а также базу из бэкапа (к сожалению, довольно старого), разместил их мозаикой для удобства;

3) Нахожу смещение 00004000, где хранится параметр локализации, см. скриншот 5, исправляю его так, как в бэкапе;

4) Далее я вижу, что изменены данные в строках 00004020 и 00004030, исправляю их так, как должно быть, см. тот же скриншот, потом дальше иду вниз по строкам и вижу, что данные совпадают;

5) В строке 00004020 видно, что таблица CONFIG (в которой хранится описание базы данных), начинается с строки 00005000 (скорее всего у всех так), а вот заканчивается она у всех по разному. Чтобы узнать, где она заканчивается, в строке 00004020 надо считать 9,10,11,12 группу чисел-букв слева направо и прочитать эту группу чисел-букв справа налево. У меня выглядит вот так: 84 22 00 00, см. скриншот 6, 7. Это означает, что таблица CONFIGSAVE (следующая за таблицей CONFIG) начинается со строки 02284000 (таблица CONFIGSAVE не должна обязательно начинаться со слова CONFIGSAVE);

6) Копирую таблицу CONFIG со строки 00005000 по строку 02284000 (не включая эту самую строку, поскольку она принадлежит уже следующей таблице CONFIGSAVE) бэкапа в битую базу таблицы CONFIG со строки 00005000 по строку 02284000 (в редакторе: «скопировать и потом «вставить с заменой»). Результат изменений сохраняю;

7) Захожу в режим 1С Предприятие и открываю базу, как обычно.

 

P.S. Несмотря на то, что исправленная база прошла без ошибок «Тестирование и исправление базы» в Конфигураторе, я все же подстраховался и выгрузил из нее нужные мне данные обработкой ВыгрузкаЗагрузкаДанныхXML81(82).epf, которая входит в комплект поставки конфигурации Конвертация данных, а затем загрузил эти данные в бэкап, получив рабочую базу.

P.P.S. Конечно, лучше избегать подобных проблем путем регулярного сохранения бэкапов…

has been added to your cart:
Оформление заказа