Что она делает:
Указываем том, где надо искать, и, при необходимости, объект поиска, если он не указан, поиск будет произведен по всем объектам присоединенных файлов.
Поиск производится по Справочникам, название которых (синоним) начинается с "Присоединенные файлы (".
По кнопке найти объекты производится поиск файлов в томе, который указан в шапке (а не в том, что прописан в базе), если по указанному пути файл найден, ставится галка "Существует", если нет, то файл ищется по названию в папке объекта, например ДоговорыКонтрагентов\20230405\IMG_0001 (3).pdf, т.е. поиск будет происходить в папке 20230405. Если файл в папке найден, его путь будет отражен в колонке "найден в той-же папке". Если файл не найден и не стоит галка "искать только в то-же папке", тогда будет произведен поиск по всему тому, если нашлось, то в колонку "найден в других папках" будет проставлен путь 1-го нашедшегося файла, а в колонке кол-во будет показано сколько всего таких файлов в томе.
Это что касается анализа.
Теперь корректировка:
По кнопке "Изменить том" у всех объектов в таблице том будет изменен на том из шапки.
По кнопке "Изменить путь" у всех не найденных объектов путь будет заменен на путь из таблицы "найден в той-же папке" (если он там заполнен)
По кнопке "Изменить Найденные Где 1" у всех не найденных объектов которые не нашлись в той-же папке, но нашлись в томе, путь будет заменен на путь из таблицы "найден в других папках" при условии, что кол-во найденных = 1, т.е. файл уникален.
Тестировалось на версии Управление нашей фирмой, редакция 3.0 (3.0.4.65), но должно подойти к любой конфигурации, где присоединенные файлы хранятся в справочниках вида "Присоединенные файлы (Договоры контрагентов)", "Присоединенные файлы (Авансовый отчет)" и т.д.
Изменения от 29.08.2023
Добавлена функция удаления ссылок на файлы не найденные всеми выше приведенными способами из базы данных.
Т.е. после всех анализов и изменений можно удалить совсем потерянные ссылки из базы, работает так: обходится таблица, если не заполнено файл существует или файл найден или найден в других папках, то на ссылку ставится пометка на удаление, если стоит галка Удалять Не Найденные Пути Непосредственно, то ссылка на файл будет удалена непосредственно без проверки ссылочной целостности, на ваш страх и риск. Очень рекомендуется резервная копия, перед удалением.
Все действия производятся по таблице, таблица открыта для редактирования, если какие-то строки не надо обрабатывать, их можно просто удалить из таблицы.
Обработку можно подключить как внешнюю в базу или открывать через файл.
Собственно, все.