Удаление помеченных объектов с отображением иерархии ссылок (с возможностью немонопольного удаления и быстрой очистки регистров сведений)

Администрирование - Сервисные утилиты

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

Обработка была разработана для оперативного анализа возможности удаления объектов, зачистки неподчиненных регистров сведений. В ряде случаев обработку удобно использовать при групповой пометке на удаление объектов, зависимых от помеченного на удаление объекта.

Обработка является универсальной и работает во всех конфигурациях на платформе 8.1, а также в конфигурациях на платформе 8.2 в режиме толстого клиента.

Имеется реальный опыт применения обработки в масштабах промышленного предприятия, где за два рабочих дня было удалено  ~10000 объектов (~70 различных справочников и документов), анализ возможности удаления которых стандартными средствами потребовал бы неопределенного времени (+ написание обработок для зачистки регистров сведений).

P.S. Старый скриншот оставил, так как в комментариях имеется ссылка на его содержание.

Преимущества и отличия данной обработки от встроенной:

  1. Отображение иерархии ссылок объектов (см. скриншот).
  2. Возможность удалять объекты не монопольно.
  3. Возможность отбора по метаданным.
  4. Возможность отбора по дате документов.
  5. Возможность очистки неподчиненных регистров сведений.
  6. Возможность пометки "зависимых" объектов на удаление.
  7. Возможность просмотреть иерархию ссылок на непомеченные на удаление объекты (например, удаляемый объект ссылается на непомеченную на удаление номенклатуру. В иерархии ссылок будут отображены все документы, в которых встречается данная номенклатура. Таким образом, можно быстро оценить, к чему приведет пометка на удаление номенклатуры).

Я крайне не рекомендую удалять объекты не монопольно, если есть реальная возможность удалить объекты штатными средствами.

В первую очередь данная обработка полезна при анализе возможности удаления объектов и подготовке базы к удалению помеченных объектов в монопольном режиме (удаление записей регистров сведений, пометка на удаление подчиненных объектов).

Причины скачать:

  1. Быстрый и наглядный анализ возможности удаления объектов (что подтверждено опытом многих пользователей).
  2. Возможность отбора по метаданным и датам документов для анализа возможности удаления только тех объектов, которые Вас интересуют в данный момент.
  3. Простейшая очистка неподчиненных регистров сведений в один клик (например, версий объектов).
  4. Возможность групповой пометки на удаление объектов, из-за которых невозможно удаление объекта.
  5. Возможность открытия любого объекта из дерева, в том числе и записей неподчиненных регистров сведений (открывается форма списка по умолчанию, отфильтрованная по соответствующей записи).
  6. Возможность сформировать дерево объектов с анализом ссылок не только на помеченные на удаление объекты.
  7. Опыт эксплуатации более 400 пользователей бесплатной версии и ни единого комментария о найденных ошибках, только положительные отзывы.
  8. Успешный опыт применения данной обработки в масштабах крупного промышленного предприятия (4200+ работников)  для обслуживания нескольких информационных баз (ЗиК, УПП, Документооборот).
  9. Открытый код.
  10. Возможность использования обработки для регламентной очистки информационных баз от помеченных на удаление объектов (требуется доработка конфигурации клиента).

С 18.08.2015 публикация переведена из платных в условно бесплатные (покупка за $m), поэтому счетчик скачиваний обнулился.

Скачать файлы

Наименование Файл Версия Размер
Обработка удаления помеченных объектов с отображением иерархии ссылок (с возможностью немонопольного удаления и быстрой очистки регистров сведений) - v8.2
.epf 20,95Kb
18.08.15
175
.epf 20,95Kb 175 Скачать
Обработка удаления помеченных объектов с отображением иерархии ссылок (с возможностью немонопольного удаления и быстрой очистки регистров сведений) - v8.1
.epf 21,15Kb
18.08.15
6
.epf 21,15Kb 6 Скачать

См. также

Комментарии
Сортировка: Древо
1. iov 364 10.02.12 10:17 Сейчас в теме
2. Jetoo 10.02.12 13:39 Сейчас в теме
Каково количество уровней вложенности?
3. TheGrr 136 10.02.12 13:53 Сейчас в теме
(2) jetoo, уровень вложенности не ограничен. Существует лишь условие, что один объект должен присутствовать в ветке один раз (иначе зациклится).
Но обработка формирует дерево в двух режимах:
1. Анализируются ссылки только на помеченные на удаление объекты.
2. Анализируются ссылки на все объекты (медленнее и рекомендуется при анализе возможности удаления какого-то одного типа метаданных). На скриншоте показан второй вариант, где отображаются ссылки на не помеченный на удаление документ внутреннего заказа. Если бы дерево формировалось в первом режиме, то ссылок на записи регистров сведений мы бы не увидели.
15. yuraos 937 04.03.12 10:15 Сейчас в теме
(3)
Респект и уважение автору и единомышленнику!
У меня есть аналогичная разработка, но для 1С-77.

Замечание насчет уровня вложенности - наверное следует его опционально ограничивать,
иначе на построение дерева ссылок может уйти много времени.
В моей выше упомянутой обработке есть ограничения на уровень вложенности и на максимальное число ссылок на один объект.
Если ограничения превышены - рекурсивный поиск прекращается.
Соответствующие строки выделяются в дереве ссылок красным цветом и не могут быть удалены.

Пара вопросов:
1) При построении дерева ссылок реально используется защита от зацикливания или
при наличии рефлексивных ссылок придется прерывать обработку насильственно?
2) Можно ли открывать объекты при клике в дереве (и выполнять прочие действия, например, пометить объект на удаление)?
В том числе при клике по строке сответствующей записи регистра?
В последнем случае было бы полезно открывать список записей регистра с активизацией нужной строки?
16. TheGrr 136 04.03.12 16:02 Сейчас в теме
(15) yuraos,
1) Защита от зацикливания присутствует, в предыдущих комментариях я об этом писал.
2) Открывать объекты можно. Если это запись РС, то будет открыта дефолтная форма списка, отфильтрованная по соответствующей записи.

Пометить на удаление отмеченные объекты или же удалить записи неподчиненных РС также можно (это в подменю "Дополнительно").

По поводу ограничения уровня вложенности объектов. Для ускорения построения дерева поиск ссылок выполняется один раз в самом начале, при этом есть два режима поиска ссылок (в предыдущих комментариях они описаны). Соответственно ограничить уровень вложенности на этапе поиска ссылок не представляется возможным (без ущерба для быстродействия), так как неизвестно где в дереве окажется тот или иной объект.
42. yuraos 937 29.01.13 14:23 Сейчас в теме
(15)
ЗЫ
это когда коллега платно стало?
я то еще бесплатно скачал (за 1SM).
Что с тех времен что-то кардинально улутшилось в обработке ?
...
"портировать" штоли на 8.х свою аналогичную разработку под 7.7
в качестве альтернативы
;)
43. TheGrr 136 31.01.13 12:58 Сейчас в теме
(42) yuraos, добавился отбор по дате документов, немного поправлено оформление :) В принципе, обработка получилась удобная и стоящая, поэтому прошу за нее денег. Ну и, что немаловажно, их платят. Поэтому делать бесплатной ближайшее время не планирую.

По поводу портирования - я только "За". Приветствую здоровую конкуренцию ;)
25. dandrontiy 27.04.12 10:31 Сейчас в теме
А с чем связано ограничение, что если объект встретится два раза, то обработка зациклится ?
это написано тут: (3) ?
Вообще тема очень полезная и реализация судя по скриншоту достойная.
Спасибо большое!
26. TheGrr 136 27.04.12 10:42 Сейчас в теме
(25) dandrontiy, приведу пример. Есть номенклатура, у которой задана единица хранения остатков. У единицы хранения остатков в свою очередь владельцем будет эта номенклатура. В дереве это будет выглядеть следующим образом:
Справочники
Номенклатура
Аптечка медицинская
шт

Если же не вводить ограничение, то получится зацикливание ветки дерева (из-за того, что единица измерения также ссылается на номенклатуру-владельца):
Справочники
Номенклатура
Аптечка медицинская
шт
Аптечка медицинская
шт
Аптечка медицинская
......
4. TheGrr 136 10.02.12 17:13 Сейчас в теме
5. front11 16.02.12 11:46 Сейчас в теме
Особенности и отличия данной обработки от встроенной:
Отображение иерархии ссылок объектов.
Возможность удалять объекты не монопольно.
Возможность отбора по метаданным.
Возможность очистки неподчиненных регистров сведений.
Возможность пометки объектов на удаление.
Возможность просмотреть иерархию ссылок на непомеченные на удаление объекты (например, удаляемый объект ссылается на непомеченную на удаление номенклатуру. В иерархии ссылок будут отображены все документы, в которых встречается данная номенклатура. Таким образом, можно быстро оценить, к чему приведет пометка на удаление номенклатуры).


Столько информативности, спасибо!
6. ryabov_d 17.02.12 11:39 Сейчас в теме
Осталось только объединить эту обработку с обработкой по поиску дублей и замене значений)
7. TheGrr 136 17.02.12 12:05 Сейчас в теме
(6) ryabov_d, вы правы. Поиском и заменой значений много дублей пришлось заменить :) Но для этого в стандартный поиск и замену значений добавил подбор. Если интересно, можете глянуть: Ссылка
8. ryabov_d 17.02.12 13:01 Сейчас в теме
(7)
Да, полезное добавление. Но я имел ввиду удаление второго значения после объединения дублей.
9. latrium 23.02.12 13:43 Сейчас в теме
Вот это полезная вещь. Спасибо огромное
10. romansun 177 23.02.12 14:14 Сейчас в теме
вот чем мне всегда импонируют такие вещи - просто, наглядно и со вкусом. Без миллиона разных кнопок, закладок и режимов.

ссылку на такую работу не стыдно кинуть грамотному заказчику и не потребуется еще писать ему толстенное "руководство по эксплуатации"

пасибо )
11. TheGrr 136 23.02.12 15:01 Сейчас в теме
(10) romansun, спасибо за спасибо :) Приятно видеть лестные отзывы и отсутствие сообщений об обнаруженных багах :D
12. Kamikadze 44 25.02.12 00:09 Сейчас в теме
не пробовал, но судя по описанию затраты времени приличные. за это и плюс
13. inga75 28.02.12 12:08 Сейчас в теме
Очень необходимо, особенно когда много пользователей
17. balgarin 07.03.12 14:20 Сейчас в теме
классная вещь, удобнее чем штатная
18. zavyzka 49 07.03.12 15:05 Сейчас в теме
Штатная тоже не особо напрягает.
19. TheGrr 136 07.03.12 15:24 Сейчас в теме
(18) zavyzka, отличия от штатной очевидны в плане удобства. И когда речь идет о сотнях и тысячах помеченных на удаление объектов, то анализировать возможность удаления данной обработкой на порядок удобнее, чем скакать по списку объектов штатной обработки.
20. arjuna 09.03.12 14:56 Сейчас в теме
Да, таких нужных мелочей не хватало в стандартной обработке.
21. Lena_Rich 2 09.03.12 16:33 Сейчас в теме
Спасибо за обработку - чудная штучка! НАГЛЯДНО. Изящная работа. Автору респект.
22. KliMich 10.03.12 21:44 Сейчас в теме
Спасибо! Намного лучше, чем стантартная
23. Гость 20.03.12 20:55 Сейчас в теме
24. dtitov 22.03.12 19:47 Сейчас в теме
Очень достойно. Автору респект. С удовольствием плюсую!!!
27. _LEV_ 27.04.12 15:45 Сейчас в теме
Поддерживаю - "Осталось только объединить эту обработку с обработкой по поиску дублей и замене значений) "
Разработка несомненно полезная. Спасибо.
28. AB3012 27.04.12 23:19 Сейчас в теме
вот чем мне всегда импонируют такие вещи - просто, наглядно и со вкусом. Без миллиона разных кнопок, закладок и режимов.

ссылку на такую работу не стыдно кинуть грамотному заказчику и не потребуется еще писать ему толстенное "руководство по эксплуатации" ПРИСОЕДЕНЯЮСЬ КО ВСЕМ ПОЛОЖИТЕЛЬНЫМ ОТЗЫВАМ ОЧЕНЬ ПОЛЕЗНАЯ ШТУКА...
29. Старый 03.05.12 18:07 Сейчас в теме
30. ulili 04.05.12 12:50 Сейчас в теме
Спасибо очень удобный инструмент!
31. GreenFox 10.05.12 13:04 Сейчас в теме
Спасибо попробую применить в своих разработках.
32. graphbuh 171 16.05.12 17:18 Сейчас в теме
Интересно, а почему вы не сделали данную обработку платной? На текущий момент вполне оригинальный продукт.
33. TheGrr 136 16.05.12 17:23 Сейчас в теме
(32) graphbuh, да была мысль сделать какой-то премиум функционал. Но не придумал какой XD А в виде "as is" Вы бы заплатили? :)
34. TheGrr 136 16.05.12 17:30 Сейчас в теме
(32) graphbuh, да и к тому же плюсы не многие ставят, куда уж платить. А хочется, чтобы обработкой пользовались. Как вариант, можно оставить электронные кошельки и посмотреть на добровольную финансовую благодарность.
35. graphbuh 171 16.05.12 17:46 Сейчас в теме
Я да. У меня была проблема - быстро поудалять объекты в 1С документооборот. А там как раз засада с регистрами.
И я наклепал подобную вашей штуку где то часов за шесть, увидел что не успеваю убрать все баги и поступил как все - тупой запрос и удаление всего и вся. Перед этим как раз искал на инфостарте и в принципе 1000-1500 руб готов был выложить за удобный инструмент. Т.е. как раз принадлежу к числу внедренцев которые покупают чужие разработки если это экономически выгодно. А вы убили прогресс на корню - т.к. если я сейчас просто выложу более убогий велосипед будут пинать. А если доработаю и выложу платный - запинают :) Поэтому будет лучше если вы учтете все замечания и сделаете в итоге продукт платным. И в принципе это честно. Т.к. те кто плюсовал скачали его бесплатно. Было бы неплохо для всех нас, если бы это превратилось в тенденцию.
36. graphbuh 171 16.05.12 18:17 Сейчас в теме
Мне кажется добровольная финансовая благодарность это из области фантастики (сужу по себе). С одной стороны разработчик, в момент когда он творит, не должен думать о бабках и о времени. И часто хороший программист, не очень хороший менеджер и продавец. Плюс зачастую разработчик не может объективно оценить работу, это же его творение. Мне кажется для продвижения и полноценной обратной связи (не все же скажут разработчику, что они думают о продукте) нужен на сайте менедежер, который будет отбирать разработки, связываться с автором и , с его согласия , продвигать их. Вообще монетизация убила не один сайт, поэтому необходимо чтобы изменилась какая то критическая масса людей, которая поставляет разработки. Т.е. какой то свод правил, в котором будет пункт, что возможность делать свою работу качественно в рыночных условиях предполагает адекватную оплату. Если ты продал по демпинговой цене работу, ты подрываешь возможности качественного оказания услуг другими участниками.
37. TheGrr 136 16.05.12 19:11 Сейчас в теме
(36) graphbuh, огромное спасибо за ценные мысли и рассуждения на тему :) Думаю, платной обработке быть. Главное, задать пинка в нужном направлении, что Вам, несомненно, удалось.
39. _LEV_ 13.07.12 13:48 Сейчас в теме
Мне кажется добровольная финансовая благодарность это из области фантастики (сужу по себе). С одной стороны разработчик, в момент когда он творит, не должен думать о бабках и о времени. И часто хороший программист, не очень хороший менеджер и продавец. Плюс зачастую разработчик не может объективно оценить работу, это же его творение. Мне кажется для продвижения и полноценной обратной связи (не все же скажут разработчику, что они думают о продукте) нужен на сайте менедежер, который будет отбирать разработки, связываться с автором и , с его согласия , продвигать их. Вообще монетизация убила не один сайт, поэтому необходимо чтобы изменилась какая то критическая масса людей, которая поставляет разработки. Т.е. какой то свод правил, в котором будет пункт, что возможность делать свою работу качественно в рыночных условиях предполагает адекватную оплату. Если ты продал по демпинговой цене работу, ты подрываешь возможности качественного оказания услуг другими участниками.

Полностью согласен - за хорошую работу нужно брать деньги.
40. EmpireSer 08.08.12 09:44 Сейчас в теме
(39) _LEV_, добровольная финансовая благодарность существует, но не в России, а в США и в Европе.
Например создатель протокола torrent и первого bittorrent клиента - не работает и его семья хорошо живёт на добровольные "благодарности" за его работу!
44. sip 01.10.13 12:21 Сейчас в теме
49. TheGrr 136 14.03.14 14:03 Сейчас в теме
(44) sip, так по идее должна работать в толстом клиенте 8.3. Извините, что долго отвечал, не увидел комментарий. Т.е. данную обработку можно запустить даже на базах, которые полностью написаны на управляемых формах. Достаточно запустить базу в режиме толстого клиента. Переделку под управляемые формы посчитал нецелесообразной :) Сорри.
45. xten 39 14.03.14 12:22 Сейчас в теме
(Заказ № 53340 от 04.02.2014 22:18) Вроде бы дату обновили. Если есть обновление вышлете на мыло? Спасибо.
46. xten 39 14.03.14 12:24 Сейчас в теме
47. CaptainMorgan 14.03.14 12:29 Сейчас в теме
Классная обработка. Возможно даже кому-то нужная.
Но мне не понятно почему надо взять существующую типовую обработку, приделать бантик и сразу бежать на базар.
48. TheGrr 136 14.03.14 13:43 Сейчас в теме
(47) CaptainMorgan, видать вы не сталкивались с необходимостью удаления десятков тысяч объектов и необходимостью быстрого анализа возможности удаления данных объектов. Плюс возможности быстрой очистки неподчиненных РС и пометки на удаление зависимых объектов.

Обработка экономит время, а соответственно и деньги. Если считаете, что с помощью данного инструмента Вы не сэкономите больше 1500 руб. (в чем я лично сомневаюсь, если стоит задача регулярного удаления объектов), то пользуйтесь стандартными средствами удаления объектов.
50. katenok86 242 20.10.16 14:03 Сейчас в теме
Здравствуйте! Можно ли вывести на печать дерево удаляемых объектов с ссылками а объекты, препятствующими удалению (например, прав. кнопкой - вывести список)?
51. TheGrr 136 24.10.16 23:22 Сейчас в теме
(50) katenok86, это обычное табличное поле. Все стандартные функции доступны. В том числе и вывод в табличный документ
52. katenok86 242 21.11.16 17:46 Сейчас в теме
Здравствуйте. Нашла у себя на сервере Вашу обработку. Качала вроде в 2012 году. Только она выдает ошибку на объекты, если имя объекта имеет более 1 первой заглавной буквы. Ошибка, к примеру:

{ПланОбмена.ФИБОбменБухгалтерскимиСправками.МодульМенеджера(777,32)}: Переменная не определена (ФИБОбменБухгалтерскимиСправками)
ВерсииФормата.Вставить("1.0", <<?>>ФИБОбменБухгалтерскимиСправками);

Подскажите, в текущей версии обработки ошибка исправлена?
53. TheGrr 136 23.11.16 13:22 Сейчас в теме
(52) katenok86, так это ошибка не в обработке же. У вас в коде ошибка. Выполните синтаксический контроль модулей, он укажет на проблемное место (хотя его и так видно: в модуле менеджера плана обмена ФИБОбменБухгалтерскимиСправками перейдите к 777 строке, там используется ранее не объявленная переменная).
Оставьте свое сообщение