В практике работы с платформой 1С:Предприятие 7.7 специалисты нередко сталкиваются с ситуацией, когда процедура выгрузки информационной базы через Конфигуратор («Администрирование» — «Выгрузка данных») проходит без сообщений об ошибках, однако сформированный файл архива 1Cv77.dat оказывается существенно меньше ожидаемого объема. При последующей загрузке такого архива в чистую или текущую базу выявляется критическая проблема: справочники остаются на месте, а документы журнала полностью или частично отсутствуют.
Рассмотрим подробно причины возникновения этой проблемы, анализируем особенности штатных механизмов платформы 1С 7.7 и разберем наиболее надежные методы резервного копирования и восстановления потерянных документов.
Проанализируем поведение платформы 1С 7.7 при выгрузке информационной базы. В отличие от современных версий, штатный механизм выгрузки в версии 7.7 критично чувствителен к целостности физической структуры таблиц DBF и корректности записей в SQL-версии.
1SJOURN (или _1SJOURN в SQL-версии), таблицах подчиненности 1SCRDOC или конкретных таблицах документов присутствуют поврежденные записи, выгрузка штатным архиватором может прерваться на поврежденной записи. При этом Конфигуратор часто не выдает сообщения об ошибке, а просто упаковывает в архив уже прочитанную часть данных (обычно только справочники и метаданные).1Cv77.dat оказывается усеченным..cdx: В файловом варианте (DBF) при сбоях питания или нештатном завершении работы 1С индексы рассинхронизируются с данными таблиц .dbf. Механизм выгрузки при обходе таблиц по индексам теряет последовательность записей и пропускает блоки документов.Разберем по шагам, как предотвратить потерю данных и заменить нестабильную процедуру выгрузки через Конфигуратор на надежные способы создания копий.
1. Правильное архивирование файловой базы (DBF)
Штатная операция выгрузки данных через меню Конфигуратора является средством упаковки данных для переноса, а не средством резервного копирования. Для файловых баз наиболее надежным методом архивации является прямое копирование каталога базы данных.
.lck и .cdx).2. Резервное копирование SQL-версии 1С 7.7
Для центральных баз, работающих на базе MS SQL Server, выгрузку через Конфигуратор выполнять не рекомендуется. Выясним, как правильно делать бэкап на сервере:
.bak) средствами MS SQL Server Management Studio.1cv7.md и файлы настроек из каталога базы данных.Если сбой уже произошел и при загрузке архива документы пропали, проанализируем последовательность действий для восстановления базы данных.
В исходной базе (до выгрузки) выполним переиндексацию и проверку целостности. Зайдем в Конфигуратор, откроем пункт меню «Администрирование» — «Тестирование и исправление информационной базы». Отметим галочками пункты «Реиндексация», «Проверка логической целостности» и «Проверка физической целостности». После устранения ошибок попробуем выполнить выгрузку повторно.
В файловой базе закроем 1С, удалим все файлы с расширением .cdx из каталога базы данных. При следующем запуске Конфигуратора или режима «Предприятие» система автоматически переиндексирует все таблицы, исправив обход записей при выгрузке.
Если выгрузка производилась для периферийной базы распределенной структуры, восстановим периферийную базу из последней исправной копии (пусть даже устаревшей). Затем выполним повторный обмен данными с центральной SQL-базой. Центральная база передаст все отсутствующие документы в узлы периферии через штатный механизм выгрузки/загрузки счетов и документов распределенной ИБ.
Вывод: Никогда не используйте штатный пункт «Выгрузка данных» в 1С 7.7 как единственный способ создания резервных копий. При наличии ошибок в базе данный метод может сгенерировать неполный архив без вывода предупреждений. Для файловых баз применяйте физическое копирование каталога ИБ, а для SQL-версий — резервное копирование средствами СУБД.