Рассмотрим ситуацию, с которой часто сталкиваются начинающие разработчики: при изменении структуры метаданных в Конфигураторе пропадают накопленные данные. Разберем детально, почему это происходит, когда мы снимаем «галочку» у документа в списке регистраторов РегистрБухгалтерии.
Когда вы снимаете флажок в свойствах РегистраБухгалтерии, указывающий на то, что определенный документ является регистратором, вы фактически меняете архитектуру базы данных. В процессе сохранения конфигурации (нажатие кнопки F7 или «Обновить конфигурацию базы данных») платформа 1С инициирует процедуру реструктуризации таблиц.
Давайте проанализируем, что происходит на уровне СУБД:
Документом и РегистромБухгалтерии более не поддерживается настройками метаданных.Регистратор в таблице регистра больше не должно содержать ссылки на этот тип документа.Важно понимать: это не просто «скрытие» записей или их деактивация. Это физическое удаление данных из таблиц СУБД. Именно поэтому система не может «вернуть» их обратно при включении галочки — связь была разорвана на уровне структуры хранения.
Проанализируем доступные варианты решения проблемы. Если записи были удалены в результате реструктуризации, необходимо осознать, что в текущей «живой» информационной базе эти данные больше не существуют. Мы рассмотрим два основных сценария восстановления:
ВыгрузкиЗагрузкиДанныхXML или аналогичных инструментов).РегистреБухгалтерии согласно алгоритмам проведения в модулях объектов.Многие разработчики задаются вопросом: «Стираются ли данные или просто обнуляются ссылки?». Посмотрим на поведение системы внимательнее. Если у регистратора было выбрано несколько типов документов и мы снимаем один из них, удаляются записи только для этого конкретного типа. Остальные данные остаются нетронутыми.
Это подтверждает, что платформа работает с таблицей как с набором данных, привязанных к конкретному объекту-регистратору. После выполнения реструктуризации эти данные становятся недоступны для запросов 1С. В файловом варианте базы (файл 1Cv8.1CD) теоретически можно найти «следы» данных до момента выполнения операции Тестирования и исправления (сжатия таблиц), но на практике извлечение данных вручную из структуры 1CD — задача с крайне низкой вероятностью успеха из-за сложности внутренних индексов и смещений.
Чтобы избежать подобных потерь в будущем, возьмите за правило следующие действия:
Всегда делайте резервную копию базы данных перед внесением изменений в структуру метаданных.
Если вам нужно изменить состав регистраторов, попробуйте следующий алгоритм:
ВыгрузкуДанных).Конфигуратор.Помните, что использование Tool1CD или прямых SQL-запросов в попытках «вернуть записи» — это путь, который в 99% случаев ведет к повреждению структуры базы данных и делает ее неработоспособной. Если записи удалены реструктуризацией, рассматривайте их как безвозвратно утраченные, если нет бэкапа.
Таким образом, мы выяснили, что снятие метки регистратора — это критическая операция, вызывающая удаление записей в СУБД. Будьте осторожны, работая в Конфигураторе, и всегда имейте актуальную копию для восстановления данных.