Ошибка SQL Таблица не найдена
Восстановление базы 1С после неудачного обновления.
Часть вторая
Ошибка SQL Таблица не найдена ‘NNNNNNNN’
При написании статьи использовались публикации
https://infostart.ru/public/99809/
http://www.softmaker.kz/1s/oshibka-subd-oshibka-sql-tablica-ne-najdena-reference-kak-ispravit.html
Итак в предыдущем обзоре я писал что восстановил базу используя HEX редактор. Итак ставлю клиенту базу, у него радости выше крыши и довольный ухожу. Через несколько часов звонок
>Спасибо все хорошо, все документы и справочники целые, только в реализацию не пускает.
!? А как ругается?
>Ошибка SQL Таблица не найдена
Опа!
Копия базы осталась, захожу в журнал документов и точно — Ошибка SQL Таблица не найдена ‘ Document351’
Запускаю конфигуратор преревожу запуск базы как обычное приложение и открываю обработку Соответствие всех объектов конфигурации с таблицами.epf (Самая лучшая это ПосмотрМетаданных82_ОНО.epf. Я ее использовал когда базу на SQL подрезал. Ну что что первое было под руками.)
Чет мне стало нехорошо. Звоню и спрашиваю:
А много реализаций было?
> Да были, но не очень много
Запустил Tool_1CD на пару с Hiew, но шапки документа 351 (Реализация) в самом раннем файле испорченной базы не нашел. Есть табличная часть с указанием услуг и суммой документа. Это хоть что-то.
Ладно, но ведь ссылки на документ могут остаться в проводках и хотя бы в РегистреСведений ДаныеПервичныхДокументов _INFORG12800
Хорошо, думаю, сейчас базу проиндексирую и оно восстановит мне. Ага, Щаз! Не надо быть таким наивным по отношению к фирме 1С.
Короче, оно не индексируется, ссылаясь на отсутствие таблицы _ReferenceChngR2473
А это что за справочник? Основные средства. Их у них нет.
Вспомнилась история, как Желдорэкспедиция приобрела погрузчик и отдельно кабину к нему. Пока бухгалтер думала да гадала как его ввести в эксплуатацию да модернизировать – погрузчик сгорел нахрен с кабиной в ангаре. Пришлось сделать списание.
Приступим.
Первое – делаем копию и ничего не боимся. Если таблица отсутствует – нужно удалить объект конфигурации и по любому проиндексировать базу. Вот почему я и люблю SQL. Там бы посоздавал таблицы и голова бы не болела.
Как я делал. Создал пустую базу с идентичной конфигурацией. Из нее я буду копировать справочники и документы Cltr +C и Cltr +V
В раненой базе добавляю буковку «я» впереди документа РеализацияТоваровУслуг. Потом делаю глобальную замену яРеализацияТоваровУслуг на РеализацияТоваровУслуг. В одном модуле потом дорисовать эту буковку «я». Само ругнется. А потом в чистой конфигурации становлюсь мышкой на документ РеализацияТоваровУслуг (Cltr +C) – а в раненой на Документы (Cltr +V)
И помечаю на удаление яРеализацияТоваровУслуг. Выскочит куева туча ссылок
Нужно удалить ссылки. Я ставил на копированный документ, хотя к конце всего этого процесса он удалится при обновлении конфигурации.
Потом у меня вылез документ РеализацияОтгруженныхТоваров
Чтобы быстрее шла работа – используйте фильтр. И момент, про который не все знают
Тут интуитивно понятно.
Итак я удалил два документа, а потом полезли справочники…. Благо что в них изначально ничего не было.
Логика такова – удалять на что ругается, пока не проиндексирует базу.
После того как база проиндексирована – нужно загрузить идентичную нашей, конфигурацию из файла. Оно удалит созданные нами документы и справочники, загрузит оригинальные и самое главное – создаст таблицы. Номера у таблиц будут другие, не такие как у исчезнувших. Итак загружаю конфигурацию из файла и созерцаю.
Я не буду лезть в подробности и грохну содержимое регистра. Ничего интересного там нет.
И по иронии судьбы вылез регистр ДанныеПервичныхДокументов. Я в Tool_CD выгружу из дохлой базы данные таблицы, грохну содержание регистра в новой , обновлю конфигурацию базы данных, а потом загружу в регистр данные. Не забываем про конвертацию с помощью cnvdbfl.exe и Tool_1CD_alpha. Про нее расписано в первой части.
Сделал, как написал выше и запустил индексацию.
Знаете что он удалил? А я знаю. Записи реализации. Эсники без подляны никак не могут.
Что имеем в осадке.
А имеем две таблицы полученные из первоначальной мертвой базы с помощью Tool_CD. Первая – это реализация услуг.
Вторая это регистр
Соответствия есть. И при желании можно в SQL…
Предложение есть и для файлового варианта
https://infostart.ru/public/143704/
Ввиду ограниченности бюджета у заказчика на этом все и закончилось. Документов было немного. Их проще и дешевле забить руками.
И напоследок.
https://forum.infostart.ru/forum105/topic24464/?PAGEN_1=7
Валерий Агеев (awa) разработчик Tool_CD
Опубликовано:24.03.2019Yurissum