Восстановление таблицы 1С. Битая база

1. rivalsh 02.07.21 01:13 Сейчас в теме
Ситуация такая. Бухгалтерия предприятия 2.0 (2.0.66.146 релиз) оказалась битой. Но рабочей. Т.е обновлять конфигурацию могу, работать в базе тоже могут спокойно. Но не могу сохранить dt-щный файл. Выдает ошибку, что нет таблицы _InfoRg10398 (на скрине). Открыл эту же базу в утилите Tool_1CD и там тоже выдало, что нет этой таблицы (тоже на скрине).

Здесь на форуме столкнулся примерно с такой же ситуацией. https://infostart.ru/1c/articles/1006823/
Выполнил так, как там было написано всё, но ничего не вышло.

Мои действия были такие:

С помощью метода ПолучитьСтруктуруХраненияБазыДанных узнал, что это за таблица, на которое ругается программа. Оказалась эта таблица "РегистрСведений.ОтветыНаЗапросыВыпискиИзЕГРЮЛ_ЕГРИП". Создал новую чистую базу такого же релиза и тоже с помощью метода ПолучитьСтруктуруХраненияБазыДанных нашел название таблицы и номер. Но номер оказался другим. Если в оригинальной битой базе это был InfoRg10398, то в новой чистой базе это InfoRg8568. С помощью утилиты Tool_1CD открыл новую базу и выгрузил оттуда эту таблицу в файл. Переименовал в InfoRg10398 и пытался загрузить в оригинальную базу клиента, но не дает загрузить. Но если не переименовать и пытаться загрузить в базу клиента, то загружает. Но мне не нужна таблица с именем InfoRg8568, а нужна с именем InfoRg10398.



Платформа: 8.3.18.1363
Конфигурация: Бухгалтерия предприятия 2.0 (2.0.66.146 релиз) типовая

Может кто сталкивался с такой проблемой ещё или похожей? Как решить? Может есть ещё идеи? Буду благодарен за советы :)
Прикрепленные файлы:
По теме из базы знаний
Вознаграждение за ответ
Показать полностью
Найденные решения
40. user856012 14 08.07.21 11:06 Сейчас в теме +0.42 $m
Не знаю, актуален ли еще вопрос для автора, но вроде как мне удалось исправить файл описания таблицы, результат прилагаю.

По крайней мере, таблица создается в базе, хотя и ругается на ошибку открытия файла импорта таблицы root.

Для импорта надо в Tool_1CD использовать кнопку "Импорт и создание таблиц",
Прикрепленные файлы:
_INFORG10398.zip
44. user856012 14 16.07.21 11:07 Сейчас в теме
(43)
С помощью hex-редактора или иными способами?
Именно так, только не "или", а "и" :)

HEX-редакторы (по крайней мере, известные мне) не позволяют "раздвигать" содержимое файла (менять его размер), поэтому увеличивать длину имен полей пришлось встроенным редактором FARа - он корректно обходится с символами 00h: не удаляет их, в отличие от Блокнота.

Но вводить такие символы FAR не дает, поэтому пришлось вставлять после каждого добавленного символа (кодировка двухбайтная) что-то, не встречающееся в файле. Помнится, я использовал звездочку ("*").

А "раздвинутый" таки образом файл окончательно исправил HEX-редактором, в котором заменил все звездочки на 00h.
Остальные ответы
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
2. vadim1011985 101 02.07.21 01:30 Сейчас в теме
(1) если формат базы 8.3.8 ее можно сконвертировать в старый форма (8.2.14) утилита cnvdbfl . После конвертации с помощью tools 1cd можно попробовать восстановить таблицу ( поиск и восстановление таблиц) Если не поможет то из такой же базы (тоже предварительно сконвертированной в 8.2.14 ) выгрузить нужную таблицу . В файле description необходимо поменять имена Таблицы и полей как и старой базе , далее с помощью Tools 1cd загрузить изменённые данные в битую ( создание Таблицы) . Соответсвенно все операции делать на копии
12. rivalsh 02.07.21 11:04 Сейчас в теме
(2) да, знаю. Через Обновлятор 1С конвертировал в 8.2.14 Восстановление таблиц не помогает. Не восстанавливает ту нужную таблицу. Остальные пункты тоже делал, не помогает. Я вот думаю, может я не так что-то меняю файле description? Я там меняю всё на моё название, где нужно.
4. user856012 14 02.07.21 01:59 Сейчас в теме
(1)
Переименовал в InfoRg10398 и пытался загрузить в оригинальную базу клиента, но не дает загрузить.
Думаю, что переименовать - недостаточно: внутри файлов экспорта тоже прописано название таблицы.

Конкретно - в файле descr, причем в нескольких местах. Можно попробовать отредактировать его HEX-редактором и потом загрузить... само собой, сначала в копию базы.
10. rivalsh 02.07.21 10:58 Сейчас в теме
(4) да, менял, но через блокнот. Просто открывал и везде менял на название мне нужное. Но не дает загрузить, пишет какую-то ошибку в Tool_1CD. Но! Если ничего не менять, не переименовывать, то дает загрузить таблицу. Но мне нужна переименованная...
15. user856012 14 02.07.21 11:15 Сейчас в теме
(10)
менял, но через блокнот
Файл не предназначен для правки Блокнотом: в нем есть нетекстовые символы - например, 00h.

Так что только HEX-редактор.
Но не дает загрузить, пишет какую-то ошибку в Tool_1CD.

Можно попробовать встроенный редактор FAR - у меня после него загружается.

Или выложите тут архив с выгруженной таблицей, подправлю.
22. rivalsh 02.07.21 12:00 Сейчас в теме
(15) вот выгруженная таблица из того же релиза БП 2.0.66.146, только чистая база

Нужно InfoRg8568 переименовать(изменить) на InfoRg10398
Прикрепленные файлы:
_INFORG8568.rar
25. XAKEP 02.07.21 12:07 Сейчас в теме
(22)
у вас базовая или проф ?
26. user856012 14 02.07.21 12:09 Сейчас в теме
(22)
Нужно InfoRg8568 переименовать(изменить) на InfoRg10398
Извиняюсь, только сейчас сообразил: длина чисел в именах таблицы и полей отличается (4 и 5 знаков), так что поправить HEX-редактором не получится.

FARом можно попытаться "раздвинуть", но результат сомнителен, да и времени сейчас уже нет, попробую вечером, если у вас не получится решить проблему другими способами.
23. rivalsh 02.07.21 12:01 Сейчас в теме
(15) ОРИГИНАЛЬНАЯ БИТАЯ БАЗА.

Таблица: РегистрСведений.ОтветыНаЗапросыВыпискиИзЕГРЮЛ_ЕГРИП, Имя таблицы хранения: InfoRg10398, Назначение: Основная
- поля:
Запрос (Fld10399)
ИмяФайла (Fld10400)
Данные (Fld10401)
Размер (Fld10402)
РезультатОбработкиЗапроса (Fld10403)
(SimpleKey)
- индексы:
ByDims
Запрос + ИмяФайла (Fld10399 + Fld10400)
ByProperty10404
Размер + Запрос + ИмяФайла (Fld10402 + Fld10399 + Fld10400)
BySimpleKey
(SimpleKey)

А ВОТ НОВАЯ, ЧИСТАЯ БАЗА ТОГО ЖЕ РЕЛИЗА

Таблица: РегистрСведений.ОтветыНаЗапросыВыпискиИзЕГРЮЛ_ЕГРИП, Имя таблицы хранения: InfoRg8568, Назначение: Основная
- поля:
Запрос (Fld8569)
ИмяФайла (Fld8570)
Данные (Fld8571)
Размер (Fld8572)
РезультатОбработкиЗапроса (Fld8573)
(SimpleKey)
- индексы:
ByDims
Запрос + ИмяФайла (Fld8569 + Fld8570)
ByProperty8574
Размер + Запрос + ИмяФайла (Fld8572 + Fld8569 + Fld8570)
BySimpleKey
(SimpleKey)
16. vadim1011985 101 02.07.21 11:18 Сейчас в теме
(10) а какую ошибку дает при загрузке измененной таблицы ?

Нужно менять не только имя таблицы но имена полей FLD так как они не соответствуют структуре битой базы
28. rivalsh 02.07.21 12:26 Сейчас в теме
(16) такие ошибки выдает при загрузке таблицы измененной. Если ничего не менять и загружать, то всё загружает без ошибок.

P.S не смотрите, что там название INFORG9999, а не INFORG10398. Я просто проверял может дело в длине символов.
Прикрепленные файлы:
20. nomad_irk 76 02.07.21 11:41 Сейчас в теме
(1)Средствами конфигуратора выполняли ли ТиИ с видом "реструктуризация таблиц информационной базы"?
21. rivalsh 02.07.21 11:48 Сейчас в теме
(20) да, дропается ТИИ, выкидывает из конфигуратора. А утилита chdbfl.exe пишет, что ошибок не обнаружено.
33. SAShikutkin 14 02.07.21 12:42 Сейчас в теме
(1) Просто как ещё один вариант, попробовать сделать полный РИБ базы. Вероятность маленькая, что всё получится, но ....
3. vadim1011985 101 02.07.21 01:32 Сейчас в теме
Если есть архивы базы , то лучше описание Таблицы взять из архива - меньше геморроя по переименованию точнее его вообще нет -экспортировать таблицу из архива и создать в текущей
alex_bob; +1 Ответить
9. rivalsh 02.07.21 10:56 Сейчас в теме
(3) Архивов нет. Т.к из-за этой ошибки не дает выгружать dt-файл, Мы делаем копию базы с помощью копирования папки с файлом 1CD.
11. XAKEP 02.07.21 10:58 Сейчас в теме
17. rivalsh 02.07.21 11:22 Сейчас в теме
5. XAKEP 02.07.21 06:15 Сейчас в теме
два варианта

дешевый - выгружайте нужную информацию в файлы
сохраняйте в новую чистую базу

дороже - фриланс ,могу сказать способ,но результат может оказаться тем же
( базу удалось запустить,но в определенных моментах она выключалась )

т.е. пока работает - сохраните данные и загружайте в чистую базу.

после этого, лично для вас :
1.конфигурация на замке
2.бэкап в два разных места перед обновлением.
3.никогда не обновлять динамически - только в монопольном режиме.
13. rivalsh 02.07.21 11:06 Сейчас в теме
(5) да, первым делом я пробовал через обработку Выгрузка-загрузка XML перенести документы и справочники из битой в чистую базу того же релиза. Но что-то ломается там. Выгружаю из битой базы 300 тыс. объектов, а при загрузке в чистую базу объектов становится более 1,5 млн. и загрузка не останавливается, загружает и загружает без остановки. Хотя должен загрузить тоже 300 тыс. объектов.
14. XAKEP 02.07.21 11:08 Сейчас в теме
(13)
Выгрузка-загрузка XML

из битой базы - не пройдет.

1CD - какой размер ?
18. rivalsh 02.07.21 11:22 Сейчас в теме
19. XAKEP 02.07.21 11:30 Сейчас в теме
(18)
если выгрузите в гугл диск,
посмотрю завтра после 15 по киеву
или сегодня 19-20, если получится.

но сейчас мне нужно знать ,
когда выгружался дт файл - месяц назад или полгода или год назад ?
6. XAKEP 02.07.21 06:19 Сейчас в теме
1С:Предприятие 8.3 (8.3.18.1334) у меня,
в зависимости от срочности и цены с понедельника могу посмотреть :)
7. minarenko 02.07.21 06:45 Сейчас в теме
Самый простой способ - в конфигураторе удалить РегистрСведений.ОтветыНаЗапросыВыпискиИзЕГРЮЛ_ЕГРИП, сохранить конфигурацию, создать этот регистр в конфигураторе
8. Psylocibine 02.07.21 09:01 Сейчас в теме
Сейчас решаем подобную проблему с ЗУП, пока остановились на варианте настроить РИБ, создать подчиненную базу и после отвязать ее от главного узла и дальше использовать ее как основную
24. rivalsh 02.07.21 12:04 Сейчас в теме
(8) попробую тоже РИБ создать. Спасибо за идею.
27. XAKEP 02.07.21 12:13 Сейчас в теме
(24)
?
идею я вам дал вначале... база проф или базовая ?
29. rivalsh 02.07.21 12:30 Сейчас в теме
(27) ПРОФ. к сожалению, не могу дать базу для работы. Конфиденциальность. Просто тут хотел услышать советы, способы
30. XAKEP 02.07.21 12:32 Сейчас в теме
(29)
у меня уже до пяти восстановлений было и данные вернулись вместе с базами.
что не сделал - также вернул.

вы не ответили , когда в последний раз дт выгружался нормально.
31. rivalsh 02.07.21 12:35 Сейчас в теме
(30) не знаю, не нашел dt-файл. Недавно в их компании и вот дали такую базу. Копии делали просто копированием 1CD
32. XAKEP 02.07.21 12:40 Сейчас в теме
(31)
надумаете - файл оригинальный в зип с паролем выложите

если в гугл диск, сегодня скачаю
больше вариантов у меня нет

вам восстановить базу или нужны данные - это не одно и тоже...

insertbox
dog
zoho
com

можете на почту или в личку
34. XAKEP 02.07.21 13:28 Сейчас в теме
(31)
Бухгалтерия предприятия, редакция 2.0 (2.0.66.145)
уже есть оригинальная конфигурация, сейчас обновление скачаю.
базу на восстановление приму до 16 по Киеву
36. XAKEP 02.07.21 15:45 Сейчас в теме
(31)
у вас мало осталось времени для решения :)

давать файл - не давать.

ни ответа от вас ни запрета...
что скажете ?
35. vadim1011985 101 02.07.21 14:40 Сейчас в теме
Есть еще утилита по чтению и выгрузки таблиц данных 1с_Lib огромным плюсом данной утилиты является доступ к метаданным конфигурации. и групповое удаление таблиц Когда-то делал следующее

Выгружал таблицы данных из убитой базы и рабочей , сопоставлял имена таблиц по иенам объектов , копировал нужные файлы в нужную папку

и через tools_1cd заливал измененные данные предварительно подготовленную базу с удаленными таблицами данных кроме системных таблиц (опять же удалял через 1с_lib)

Работало на ура ! помогало когда крошилась таблица DBSHEMA или запись DBNAME в таблице PARAMS
37. hamsar 16 08.07.21 10:05 Сейчас в теме
Прошу прощения, а chdbfl что говорит?
38. user856012 14 08.07.21 10:17 Сейчас в теме
(37) См. (21):
А утилита chdbfl.exe пишет, что ошибок не обнаружено.
39. hamsar 16 08.07.21 10:59 Сейчас в теме
(38) удалить регистр можете?
Загрузить cf конфигурации поставщика.
41. user856012 14 08.07.21 11:08 Сейчас в теме
(39)
удалить регистр можете?
Я? Разумеется, не могу - я не автор темы. :)
40. user856012 14 08.07.21 11:06 Сейчас в теме +0.42 $m
Не знаю, актуален ли еще вопрос для автора, но вроде как мне удалось исправить файл описания таблицы, результат прилагаю.

По крайней мере, таблица создается в базе, хотя и ругается на ошибку открытия файла импорта таблицы root.

Для импорта надо в Tool_1CD использовать кнопку "Импорт и создание таблиц",
Прикрепленные файлы:
_INFORG10398.zip
43. rivalsh 16.07.21 10:02 Сейчас в теме
(40) спасибо! Таблица рабочая оказалась. Ошибка исчезла. А как вы сделали, если не секрет? С помощью hex-редактора или иными способами?
44. user856012 14 16.07.21 11:07 Сейчас в теме
(43)
С помощью hex-редактора или иными способами?
Именно так, только не "или", а "и" :)

HEX-редакторы (по крайней мере, известные мне) не позволяют "раздвигать" содержимое файла (менять его размер), поэтому увеличивать длину имен полей пришлось встроенным редактором FARа - он корректно обходится с символами 00h: не удаляет их, в отличие от Блокнота.

Но вводить такие символы FAR не дает, поэтому пришлось вставлять после каждого добавленного символа (кодировка двухбайтная) что-то, не встречающееся в файле. Помнится, я использовал звездочку ("*").

А "раздвинутый" таки образом файл окончательно исправил HEX-редактором, в котором заменил все звездочки на 00h.
42. daenur1301 08.07.21 13:32 Сейчас в теме
(7) Я пошёл бы таким же путем, только ручное создание регистра может сказаться на последующем обновлении...

По пунктам и на копии базы:
1. Сохранить конфигурацию поставщика (Конфигурация - Поддержка - Настройка поддержки - Сохранить в файл)
2. Снять конфигурацию с поддержки (Конфигурация - Поддержка - Настройка поддержки - Включить возможность изменения, затем Снять с поддержки)
3. Удаляете из основной конфигурации РегистрСведений.ОтветыНаЗапросыВыпискиИзЕГРЮЛ_ЕГРИП
4. Сохраняете и обновляете конфигурацию ИБ
5. Загружаете конфигурацию поставщика (Конфигурация - Загрузить конфигурацию из файла - Выбираем ранее сохраненный файл), в процессе загрузки предложить поставить конфигурацию на поддержку - подтверждаете.
6. Сохраняете и обновляете конфигурацию ИБ

Если на п. 4 программа не вылетит, то всё должно получиться.

Теоретически может быть битая конфигурация поставщика, можно взять её из чистой или демо-базы с тем же релизом.
45. Xershi 1555 16.09.24 12:49 Сейчас в теме
Оставьте свое сообщение

Для получения уведомлений об ответах подключите телеграм бот:
Инфостарт бот