Битые ссылки, объект не найден, поиск удаленного объекта
Задачи пользователя - Поиск данных
Файлы
ВНИМАНИЕ: Файлы из Базы знаний - это исходный код разработки. Это примеры решения задач, шаблоны, заготовки, "строительные материалы" для учетной системы. Файлы ориентированы на специалистов 1С, которые могут разобраться в коде и оптимизировать программу для запуска в базе данных. Гарантии работоспособности нет. Возврата нет. Технической поддержки нет.
Подписка PRO — скачивайте любые файлы со скидкой до 85% из Базы знаний
Оформите подписку на компанию для решения рабочих задач
Оформить подписку и скачать решение со скидкойВы можете заказать платную доработку или адаптацию этой разработки под вашу конфигурацию на «Бирже заказов».
- 0% комиссии — оплата напрямую исполнителю;
- Исполнители любого масштаба — от отдельных специалистов до команд под проект;
- Прямой обмен контактами между заказчиком и исполнителем;
- Безопасная сделка — при необходимости;
- Рейтинги, кейсы и прозрачная система откликов.
Практически каждый программист 1С сталкивался со следующей ситуацией: кто-то из пользователей случайно/намеренно помечает на удаление объект информационной базы. В зависимости от ситуации можно действовать по-разному:
- Ничего не искать и не выяснять, подойти к проблеме философски - заранее понять и простить виновника и просто снять пометку удаления. На мой взгляд, так и стоит поступить, если последствия незначительны, подобные случаи легко обнаруживаются пользователем и
вообще никого это не волнуетнет веской причины для выяснения обстоятельств; - Найти записи о пострадавшем объекте в журнале регистрации, установить виновника - пользователь установивший пометку удаления, совершил ли он это действие со своего компьютера или пытался кого-то подставить (скандалы, интриги, расследования) и действовать в соответствии с полученной информацией;
- Обнаружить, что по факту объект в информационной базе полностью отсутствует. В попытках восстановить хронологию событий в журнале регистрации осознать, что записи по нему не обнаружены, хотя у нас есть веские доказательства его существования. Для такого случая как раз и создана эта обработка.
Не смотря на то, что поиск элемента в журнале регистрации результата не выдает, в нем могут записи вида <Объект не найден>. Данная обработка выводит все подобные записи за указанный период:

Желательно не задавать большой период, особенно на базах с большим количеством пользователей и большим объемом данных.
Если вы начинающий программист, то обратите внимание, что в случае явного удаления объекта, в первую очередь нужно проверить всех пользователей на наличие права доступа "Непосредственное удаление", т.е. право удаления объектов без контроля ссылочной целостности. Также стоит проверить все внешние обработки и конфигурацию а использование метода "Удалить()", которые также действует без использования контроля ссылочной целостности.
С помощью материалов сайта https://helpf.pro/faq/view/483/html (огромное спасибо автору) с переделкой под управляемый формы была создана обработка для получения GUID из строки вида " <Объект не найден> (84:bf5600145e3710ab11dda4c605dbe824)". Далее, в копии информационной базы с помощью той же обработки по этому GUID были получены ссылки этих объектов и таким образом удалось отследить всю историю событий:

Отпуск под номером 42-кд был создан и проведен одним пользователем, снят с проведения и помечен другим и удален из базы данных фоновым заданием, т.е. обработкой "УдалениеПомеченныхОбъектов", вот это поворот.
Для удобства поиска и анализа в обработке есть возможность отфильтровать журнал по представлению данных, если есть его точные номер и дата документа, либо по метаданным.

Вступайте в нашу телеграмм-группу Инфостарт