После запуска обработки её выполнение занимает довольно продолжительное время. Так например, если 500 наименований номенклатуры помечено на удаление и 300 из них участвуют в документах установки и регистрации то период выполнения займёт от 30 минут до часа несмотря на максимальную оптимизацию кода. После завершения обработки запускалось тестирование на базы на логическую и ссылочную целостность. Тестирование было завершено без ошибок
Вот так выглядит список ссылок на удаляемую номенклатуру до запуски обработки
Мы видим, что на удаляемую номенклатуру есть ссылки из документов регистрации и установки а также! из других документов.
После завершения обработки мы увидим тот же список по причине того, что номенклатура участвует в других значимых документах.
Важно! Номенклатура будет удалена из табличной части документов регистрации или установки только в том случае если она не участвует ни в каких
других документах! Потому как в корне неправильно удалить номенклатуру из документа установки, которая уже участвует, например, в документе
пересчета товаров.
А конечная цель какая? Или работа ради работы?
(1) cleaner_it, Ради того, чтобы после завершения обработки запустить снова стандартную обработку по удалению помеченных объектов и в случае если та номенклатура, которая потерлась из табличных частей документов регистрации и установки, не участвует ни в каких других значимых документах то она просто удалится из базы. Таким образом, можно удалить довольно большое количество номенклатуры, которая раньше не могла удалиться из-за привязки к документам регистрации и/или установки.
Надо полагать, что обработка запускается не в монопольном режиме?
(3) gull22, Да, монопольный доступ не требуется так как номенклатура удаляется только из табличной части.
Насчет зачистки УстановкиЦен — соглашусь. Но Регистрация Цен контрагентов пишется документом ПоступлениеТМЦ!!! Этот Документ тоже исправляется?
(5) V.Nikonov, Нет, поступление данной обработкой не затрагивается.
Считаю обработку полезной. Сам сталкивался с подобной ситуацией. Если номенклатур «не нужна», то безболезненно можно удалить её из документов установки цен. Важно, что проверяется наличие номенклатуры в других документах.
Опять только управляемые формы?
Я так понимаю только для УТ11. Не плохо было бы это где то указать…
Очень полезная вещь. Сейчас конец года. С нового года планируем перейти на УТ11 и что бы не тянуть номенклатуру вышедшую из обращения нужно как раз таким образом подчистить базу. Как раз планировал писать такую обработку.
Спасибо.
(8) zelevova, Да, только для УФ. УТ редакция 11.1. Впредь, буду указывать номер версии обязательно.
Очень нужная вешь. После чистки и переносе базы- номенклатуру которую нужно удалить -держит именно документ «Установка цен».
Есть ли для УТ 8.2?
(10) zenz, Она самая — платформа 8.2 , УТ редакция 11
Нужна для УТ 10.3 платформа 8.2.
Обработка нужная, но хотелось бы в ней увидеть некоторый функционал. Возможность выбирать номенклатуру или группу номенклатуры для удаление из документов. Это будет удобно, тк в базах может быть номенклатуры более
10 000(помеченных на удаление).
Собрался уже сам писать а оказывается все уже написано до нас 🙂
(12) zenz,
http://infostart.ru/public/251504/
Лучше позже чем никогда!
(15) gull22, Спасибо большое, как раз надо было
(16) agb, откройте обработку в конфигураторе и очистите ее модуль, он там ни к чему. Все действия выполняется только на форме.
(0) заглянул в модуль формы из интереса и вот что я бы точно поменял:
1) в блоке проверки документов, в которых указана номенклатура, я бы синонимы поменял на имена метаданных хотя бы потому, что вероятность изменения синонима гораздо выше, чем имени документа.
2) и я лучше бы не считал количество документов, в которых используется номенклатура, а просто бы прервал бы выполнение цикла проверки на вид документа при первом же документе, из-за которого нельзя уже очищать в установке цен. Это была бы существенная оптимизация.
отлично, дорисовал форму, использовал в УТ10 !!!!
Не работает в УТ 11.2 .3.108
Переменная не определена СоединенияИБКлиент. Можете поправить?