К статье
Практический материал

Администрирование · 11 мин

1С «Объект не найден»: как найти и удалить битую ссылку

Что означает ошибка «Объект не найден» в 1С, как найти битые ссылки через ТиИ и удалить их без потери данных. Пошаговая инструкция для администратора.

Ошибка «Объект не найден» (в списках она выглядит как «<Объект не найден> (123:abc...)») появляется в 1С, когда в базе осталась ссылка на запись, которая была физически удалена. Такое случается после прямого удаления объектов без контроля ссылочной целостности, сбоев при обмене данными, нештатного прерывания записи или восстановления базы из устаревшей копии.

Сама по себе битая ссылка не разрушает базу, но мешает работе: документы с такой ссылкой могут не проводиться, отчёты — выдавать ошибку, обмены — завершаться с предупреждениями. Поэтому объект с пометкой «не найден» нужно либо восстановить, либо корректно удалить вместе со всеми ссылками на него.

Ниже разобраны способы найти источник проблемы, безопасно удалить «мёртвые» ссылки и проверить результат. Все действия выполняются в тестовой копии или после создания резервной копии — это обязательное условие.

Что означает ошибка «Объект не найден» и почему она возникает

Каждая запись в 1С (элемент справочника, документ) имеет уникальный внутренний идентификатор. Когда в документе или регистре указывается ссылка на элемент, хранится именно этот идентификатор. Если сам элемент удалили напрямую — минуя механизм контроля ссылочной целостности — идентификатор остаётся «висеть» в других объектах, а платформа при обращении показывает «<Объект не найден>».

Типичные причины появления битых ссылок:

  • прямое удаление объектов обработками без проверки ссылок;
  • сбой при обмене данными (РИБ, выгрузки в другие системы), когда объект-приёмник удалён, а ссылки на него пришли из другого узла;
  • аварийное завершение работы сервера или отключение питания в момент записи;
  • восстановление базы из копии, сделанной до удаления объектов, при том что часть данных уже была изменена;
  • ошибки в самописных доработках, удаляющих записи напрямую запросом.

Как определить масштаб проблемы перед удалением

Прежде чем что-то удалять, оцените, одиночная это ошибка или системная. Откройте объект, в котором видна надпись «<Объект не найден>», и запомните, в каком реквизите она стоит. Если ошибка встречается в одном-двух документах — вероятно, это локальный случай после ручного удаления. Если «не найденные» объекты массово появляются в списках справочников или в регистрах — проблема глубже, и сначала стоит выяснить её причину, иначе после чистки ошибки появятся снова.

Полезно проверить журнал регистрации: отфильтруйте события по удалению данных за период, когда ошибка появилась впервые. Так можно понять, кто и каким способом удалил объект — вручную, обработкой или при обмене.

Одиночная ошибка1–2 документа с битой ссылкой

Вероятно ручное удаление — можно чистить точечно

Массовые ошибкиДесятки записей в списках

Проверить обмены и регламентные задания, искать причину

Ошибка после обменаПоявилась после загрузки данных

Проверить настройки обмена и удаление в узлах

Ошибка после сбояПоявилась после отключения питания

Запустить полное тестирование и исправление

Подготовка: резервная копия и монопольный доступ

Любые операции по исправлению ссылочной целостности выполняются только после создания резервной копии. Для файловой базы достаточно скопировать файл 1Cv8.1CD или сделать выгрузку в dt через конфигуратор (Администрирование → Выгрузить информационную базу). Для клиент-серверной базы — средствами СУБД или также через выгрузку dt.

Для запуска «Тестирования и исправления» с функциями удаления требуется монопольный доступ к базе: все пользователи должны выйти, регламентные задания — быть остановлены. В клиент-серверном варианте дополнительно убедитесь, что на сервере 1С нет активных сеансов фоновых заданий, иначе проверка не запустится или завершится с ошибкой.

Способ 1: удаление через «Тестирование и исправление»

Штатный инструмент платформы — «Тестирование и исправление информационной базы» — умеет находить ссылки на несуществующие объекты и обрабатывать их одним из выбранных способов. Это основной сценарий для большинства ситуаций.

Порядок действий:

  1. Откройте конфигуратор под пользователем с полными правами.
  2. Меню Администрирование → Тестирование и исправление.
  3. В списке проверок отметьте «Проверка ссылочной целостности информационной базы». Остальные проверки при первом запуске можно отключить, чтобы сократить время.
  4. В группе «При наличии ссылок на несуществующие объекты» выберите действие: «Удалять объект» — если битая ссылка найдена в самостоятельном объекте, который не нужен; «Очищать ссылки» — если нужно просто вычистить реквизиты; «Не изменять» — для диагностического прогона.
  5. Для частично потерянных объектов задайте аналогичную настройку «При частичной потере данных объектов».
  6. Нажмите «Выполнить» и дождитесь окончания. Для больших баз процедура может занять часы.
Порядок действий в ТиИ
  1. 1
    Сделайте резервную копию базы
  2. 2
    Завершите сеансы пользователей и фоновые задания
  3. 3
    Откройте ТиИ, включите проверку ссылочной целостности
  4. 4
    Сначала выполните прогон в режиме «Не изменять» — оцените объём проблем
  5. 5
    Повторите с режимом «Очищать ссылки» или «Удалять объект»
  6. 6
    Проверьте проблемные документы и отчёты после исправления

Рекомендуемая практика — сначала выполнить проверку в режиме «Не изменять». Вы получите список всех битых ссылок без изменения данных и сможете осознанно решить, что с ними делать. Затем повторный прогон с очисткой или удалением уберёт проблему.

Способ 2: точечная очистка вручную и через обработки

Если битая ссылка находится в конкретном документе, иногда проще исправить его вручную: открыть документ, очистить реквизит с надписью «<Объект не найден>» или подставить правильное значение и перепровести. Это оправдано, когда объектов мало и понятно, что должно стоять вместо удалённого.

Для массовой, но контролируемой чистки используются обработки. В типовых конфигурациях на БСП есть штатные инструменты: «Поиск и удаление дублей» (для дублей), «Удаление помеченных объектов» (Администрирование → Обслуживание) — он удаляет помеченные объекты с контролем ссылок и показывает, где они используются. Сторонние обработки «поиск битых ссылок» сканируют базу и выводят список объектов, содержащих ссылки на несуществующие записи, после чего ссылки можно очистить выборочно.

Сравнение способов

Тестирование и исправление

Подходит для массовых проблем и после сбоев. Требует монопольного доступа, действует по всей базе сразу

Ручная правка документов

Подходит для 1–5 объектов, когда известно правильное значение. Не масштабируется

Удаление помеченных объектов

Штатный сценарий для обычного удаления с контролем ссылок. Не чинит уже существующие битые ссылки

Сторонние обработки очистки

Гибкая выборочная чистка. Требуют проверки надёжности обработки и копии базы

Способ 3: восстановление вместо удаления

Удалять битую ссылку — не всегда правильное решение. Если удалённый объект был нужен (например, контрагент, на которого ссылаются десятки документов), корректнее восстановить данные: поднять объект из резервной копии через выгрузку/загрузку данных или создать элемент заново и подставить его вместо битой ссылки.

Обратите внимание: при создании элемента заново он получит новый внутренний идентификатор, поэтому старая битая ссылка автоматически не «оживёт» — её нужно заменить на новый объект в каждом месте использования. Восстановить прежний идентификатор возможно только специализированными средствами, и это задача для опытного специалиста.

Маршрут решения

Как выбрать действие

Удалённый объект не нужен, ссылки мешаютОчистите ссылки через ТиИ или обработку
Удалённый объект нужен для учётаВосстановите объект из копии и замените ссылки
Ошибка появилась после обменаСначала исправьте настройки обмена, затем чистите ссылки
Причина ошибок неизвестнаПрогоните ТиИ в режиме «Не изменять» и изучите журнал регистрации

Проверка результата и профилактика

После чистки откройте документы и списки, где ранее была ошибка, и убедитесь, что надпись «<Объект не найден>» исчезла. Перепроведите затронутые документы, сформируйте ключевые отчёты (оборотно-сальдовую ведомость, отчёты по взаиморасчётам) — они должны строиться без ошибок. Если используется обмен данными, выполните тестовую синхронизацию.

Чтобы проблема не повторялась: удаляйте объекты только через пометку удаления и штатное «Удаление помеченных объектов» с контролем ссылок; запретите пользователям прямое удаление (настройка прав «Интерактивное удаление»); регулярно делайте резервные копии; при использовании обменов следите за регистрацией удалений в узлах.

Контрольные точки

Как проверить результат

Списки и документы
Норма

Нет надписей «<Объект не найден>»

Тревожный признак

Надписи остались или появились новые

Проведение документов
Норма

Документы проводятся без ошибок

Тревожный признак

Ошибки при проведении затронутых документов

Отчёты
Норма

Формируются без сообщений об ошибках

Тревожный признак

Ошибка при обращении к данным

Повторный прогон ТиИ
Норма

Проверка целостности не находит проблем

Тревожный признак

Снова обнаружены битые ссылки

Типичные ошибки
01
Запуск ТиИ с исправлением без резервной копии — при ошибке данные теряются безвозвратно
02
Удаление битых ссылок без поиска причины — после очередного обмена ошибки возвращаются
03
Создание нового элемента вместо удалённого и ожидание, что старые ссылки «оживут» — идентификатор другой, ссылки нужно заменять вручную
04
Очистка ссылок вместо восстановления нужного объекта — теряется аналитика в отчётах
05
Запуск ТиИ при активных сеансах — проверка обрывается или работает некорректно
Итог

Что важно запомнить

«Объект не найден» — это ссылка на удалённую запись. Основной инструмент удаления — «Тестирование и исправление» с проверкой ссылочной целостности, запущенный после резервного копирования при монопольном доступе. Если удалённый объект нужен учёту — восстанавливайте его, а не чистите ссылки. После исправления обязательно проверьте проведение документов и отчёты.

Частые вопросы

Можно ли удалить «Объект не найден» прямо из списка справочника?

Как правило, нет: записи с такой надписью в списке — это сами битые ссылки, а не реальные элементы, и штатное удаление на них не срабатывает. Их убирает «Тестирование и исправление» с проверкой ссылочной целостности либо специализированная обработка очистки.

Тестирование и исправление удалит нужные документы?

При включённой опции «Удалять объект» ТиИ удаляет объекты, которые сами оказались повреждены или недоступны, — восстановить их можно только из копии. Чтобы ничего не потерять, сначала выполните прогон в режиме «Не изменять», изучите список проблем и только потом выбирайте действие.

Почему после чистки ошибка появилась снова?

Значит, источник битых ссылок продолжает работать: чаще всего это обмен данными, в котором удаление объектов не регистрируется корректно, или регламентная обработка, удаляющая записи напрямую. Найдите причину по журналу регистрации и устраните её, иначе чистку придётся повторять регулярно.

Чем отличается «Очищать ссылки» от «Удалять объект» в ТиИ?

«Очищать ссылки» вычищает битые идентификаторы из реквизитов, сами документы и элементы остаются. «Удалять объект» удаляет целиком объект, который повреждён или ссылается на несуществующие данные. Для сохранения учётных данных обычно безопаснее начать с очистки ссылок.

Нужен ли конфигуратор, если база клиент-серверная?

Да, «Тестирование и исправление» запускается из конфигуратора независимо от режима работы базы. Для клиент-серверного варианта дополнительно потребуется завершить все сеансы на сервере и остановить фоновые задания, чтобы обеспечить монопольный доступ.

Можно ли восстановить удалённый объект с тем же идентификатором?

Штатными средствами — нет: при создании нового элемента присваивается новый идентификатор. Восстановление прежнего GUID возможно только специальными техническими средствами и требует опыта; на практике чаще создают объект заново и заменяют на него битые ссылки.