![]() |
![]() |
![]() |
|
Создание с нуля файла 1SUIDCTL.DBF | ☑ | ||
---|---|---|---|---|
0
cathode
04.09.07
✎
13:42
|
Господа, просветите, пожалуйста, темного человека.
Досталась файловая база Комплексной 7.7 с поврежденными таблицами. Во всех глючных таблицах повреждения были в районе первых 1-2 Кб. Содержимое почти всех таблиц удалось восстановить при помощи предыдущего архива (очень старого), hex-редактора и чьей-то матери. За исключением одной: 1SUIDCTL.DBF. Там как раз повреждения получились во всех записях. По наивности, я думал, что при пересчете служебных данных содержимое таблицы будет восстановлено, но, похоже, придется ее восстанавливать руками. Кто-нибудь может подсказать: 1) как быстро восстановить содержимое оной таблицы (алгоритм или куски кода - было бы вообще шоколадно); 2) MAXID какой таблицы должен быть в строке с TYPEID = 0 (остальные ID вроде бы ясны). 3) где можно найти подробную документацию по данной таблице. Прошу прощения за беспокойство. |
|||
1
ТелепатБот
гуру
04.09.07
✎
13:42
|
||||
2
cathode
04.09.07
✎
13:45
|
(1) Не в тему :(
|
|||
3
larabelle
04.09.07
✎
13:53
|
Нужно именно данные этой базы восстановить, или нужна чистая база на основе этой покоцанной?
|
|||
4
cathode
04.09.07
✎
13:58
|
Именно данные восстановить. Можно сказать, что они на данный момент уже восстановлены, но в отсутствие правильно сформированной таблицы UIDов, добавление новых данных невозможно.
|
|||
5
FreeFin
04.09.07
✎
14:04
|
Можно побредить? Ну и ладно.)
Грохнуть совсем 1SUIDCTL. Зайти в конфигуратор, отключить уникальности (сброс галочки Контроль уникальности) со всех справочников. Сохраниться, а дальше, если повезет, проставить уникальности по-старому. Здесь возможны затыки на неуникальность, но тоже беда не большая, с отключенным контролем, запускать 1С и перекодировать (это не больно) неподдатливый справочник, и проставить уникальность по-новому. |
|||
6
cathode
04.09.07
✎
14:07
|
(5) Не проканает. Уникальность в справочниках влияет на возможность дублирования поля CODE (пользовательский код в таблицах справочников), а вышеозначенная табличка используется для генерации поля ID (36-ричный сериал нумбер в каждой объектной табличке).
|
|||
7
FreeFin
04.09.07
✎
14:15
|
(6) Нуи чо из этого следует? Отключай проверку=открывай возможность дублирования, этож не "внутренний ИД" куда оно денется... И только-то, что дополнительно. В УРБД=вооще вещь лишняя, потому как серавно дублируются (если код-число оставлять, а на текст неохото). Попробуй, имхо, должно получится.
|
|||
8
cathode
04.09.07
✎
14:53
|
Немного поиграл с копией базы. В конечном итоге выяснилось, что данная таблица, если она пуста, не влияет на генерацию новых IDов - просто по соответствующему типу берется максимальный ID и к нему добавляется единица, что потом и записывается в 1SUIDCTL.DBF для последующего использования. Таким образом, вопрос можно считать исчерпанным.
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |