Иногда, когда возникает вопрос, почему не удаляется тот или иной объект, Админ садится и начинает выискивать:
Так, этот объект нельзя удалить, потому что он ссылается на эти 5. Из этих пяти… Ну и так далее. Мне это надоело и я наваял на скорую руку обработку, которая выискивает «неубиваемые» (т.е. либо непомеченные объекты, либо регистры сведений, в которых есть ссылка в измерении, не являющемся ссылки.
Обработка является относительно универсальной: используется функция ЗначениеНеЗаполнено из типовых решений. при желании это можно подправить.
ЗЫ Сильно не копайте: писалось на коленке для себя.
Внимание!!!! Второй файл ограничен по скачиваию: с ним надо оччень аккуратно. Описание в хелпе к обработке
А чем не устраивает «НайтиПоСсылкам» ?
Появляется ошибка «{ВнешняяОбработка.ПочемуНеУдаляетсяОбъект_Простая(16,7)}: Переменная не определена (ОбщегоНазначения)
Если <<?>>ОбщегоНазначения.ЗначениеНЕЗаполнено(СсылкаНаОбъект) Тогда» УТ 8.1 (8.1.13.41)
Гы…
> «ЗначениеНеЗаполнено из типовых решений»
Это ж насколько старое должно быть такое типовое решение?
«ПочемуНеУдаляетсяОбъект_Простая.epf» — подозреваю что должна быть и «Сложная» ? Наверное помечает на удаление и сами ссылки на объекты?
Для 1: Найти по ссылкам находит только по той ссылке (ссылкам), которую укажешь. Пример: почему не удаляется контрагент? потому что у него есть в ссылках договора. Договора помеченные? нет? если помеченные, почему не удаляются. Ну так далее. Ручками — проблематично это вычислить.
Для 2: Как я указал в комментарии, «Обработка является относительно универсальной: используется функция ЗначениеНеЗаполнено из типовых решений. при желании это можно подправить.». В типовых решениях для Украины данная функция находится в общем модуле ОбщегоНазначения
Для 3: см ответ для 2
ЗЫ Критику воспринял. Счас выложу без ссылок на типовое решение 🙂
Обновил
Для 3:
В планах есть. 😉
Открыл из УТ 10.3.. Имеем ошибку:
{ВнешняяОбработка.ПочемуНеУдаляетсяОбъект_Простая(173,9)}: Процедура или функция с указанным именем уже определена (ЗначениеНеЗаполнено)
Функция <<?>>ЗначениеНеЗаполнено(Значение)
Для 6: Возможно у вас есть общий глобальный модуль с подобной функцией. В таком случае закомментируйте функцию в модуле обработки
Просто в записе
Если <<?>>ОбщегоНазначения.ЗначениеНЕЗаполнено(СсылкаНаОбъект) Тогда» УТ 8.1 (8.1.13.41)
Уберите «ОбщегоНазначения.» вызов процедуры будет как из глобального модуля.
Для AngelAlex: судя по имени вызова, вы используете предыдущую версию: в новой переписана функция локально для обработки. Vint, неспотря на старое название файла использует новую.
Или мне грохнуть существующие файлы, назвать по новому и выложить 🙂
э… Я не прошу плюсовать (я уже давно все, что надо скачал с ресурса :-)) Но прокомментировать то можно :-[
ну так надо назвать её ЗначЗАполн или как-то так чтобы не пересекалось
Думаю полезно. Только мне надо было для управляемого приложения. Пришлось делать самому.