1. Поиск: для элементов ищутся ссылки на них и делятся на 2 типа — зависимые и независимые. Зависимые — это подчиненные элементы справочников, например «Единицы измерения» и регистры сведений, список которых указывается в коде, например регистр сведений «Версии объектов». Он независимый, но информация в нем подчиненная. Эти данные отображаются в нижнем правом окошке. Независимые элементы — документы, элементы справочников, регистров сведений и прочее — отображается в левом окошке. Если элемент справочника «Номенклатура» удалить можно, то он в верхней таблице будет подкрашен зеленым, если нельзя — никак подкрашен не будет.
2. Удаление: ставится пометка на удаление всем подчиненным элементам-справочникам — «Единицы измерения», «Назначения использования» и прочее. Записи регистров сведений удаляются. И помечается на удаление сам элемент справочника «Номенклатуры». Потом это все надо удалять обработку удаления помеченных, сделано на всякий случай, теоретически и на подчиненные элементы-справочники могут быть ссылки где-то еще.
Реализован отбор по группам, сделано наиболее просто — если группа наверху заполнена, то проверяются только ее элементы, если нет — все элементы. Кнопки — есть для последовательного процесса — отдельно «Найти» и отдельно «Пометить на удаление», если хочется сначала посмотреть что найдет обработка и например добавить регистр в коде в список зависимых. И есть кнопка «Найти и пометить на удаление», которая делает все сразу, чтоб в конце рабочего дня нажать и процесс пошел.. В коде реализован поиск и удаление без транзакций и порций, что есть не оптимально, но для мелких и средних баз будет вполне работать. Впрочем в других обработках на данном сайте, кроме одной платной, транзакции и порции тоже не реализованы, ну или я не увидел. Написано на платформе 8.3, неуправляемые формы.
Работаю с другими инструментами, но эта понравилавь своей методикой, плюсую.
Нужна такая обработка для УТ10.2 (8.1)
Почему не сделана универсальной? Для любых справочников?
не работает