Удаление помеченных объектов с отображением иерархии ссылок (не монопольно). Для быстрого анализа возможности удаления объекта удобно анализировать ссылки не только на удаляемый объект, но и ссылки на объект, из-за которого удаляемый объект удалить невозможно. Данная обработка предоставляет такую возможность, отображая иерархию ссылок объектов в виде дерева.
(2) jetoo, уровень вложенности не ограничен. Существует лишь условие, что один объект должен присутствовать в ветке один раз (иначе зациклится).
Но обработка формирует дерево в двух режимах:
1. Анализируются ссылки только на помеченные на удаление объекты.
2. Анализируются ссылки на все объекты (медленнее и рекомендуется при анализе возможности удаления какого-то одного типа метаданных). На скриншоте показан второй вариант, где отображаются ссылки на не помеченный на удаление документ внутреннего заказа. Если бы дерево формировалось в первом режиме, то ссылок на записи регистров сведений мы бы не увидели.
Замечание насчет уровня вложенности - наверное следует его опционально ограничивать,
иначе на построение дерева ссылок может уйти много времени.
В моей выше упомянутой обработке есть ограничения на уровень вложенности и на максимальное число ссылок на один объект.
Если ограничения превышены - рекурсивный поиск прекращается.
Соответствующие строки выделяются в дереве ссылок красным цветом и не могут быть удалены.
Пара вопросов:
1) При построении дерева ссылок реально используется защита от зацикливания или
при наличии рефлексивных ссылок придется прерывать обработку насильственно?
2) Можно ли открывать объекты при клике в дереве (и выполнять прочие действия, например, пометить объект на удаление)?
В том числе при клике по строке сответствующей записи регистра?
В последнем случае было бы полезно открывать список записей регистра с активизацией нужной строки?
(15) yuraos,
1) Защита от зацикливания присутствует, в предыдущих комментариях я об этом писал.
2) Открывать объекты можно. Если это запись РС, то будет открыта дефолтная форма списка, отфильтрованная по соответствующей записи.
Пометить на удаление отмеченные объекты или же удалить записи неподчиненных РС также можно (это в подменю "Дополнительно").
По поводу ограничения уровня вложенности объектов. Для ускорения построения дерева поиск ссылок выполняется один раз в самом начале, при этом есть два режима поиска ссылок (в предыдущих комментариях они описаны). Соответственно ограничить уровень вложенности на этапе поиска ссылок не представляется возможным (без ущерба для быстродействия), так как неизвестно где в дереве окажется тот или иной объект.
(15)
ЗЫ
это когда коллега платно стало?
я то еще бесплатно скачал (за 1SM).
Что с тех времен что-то кардинально улутшилось в обработке ?
...
"портировать" штоли на 8.х свою аналогичную разработку под 7.7 в качестве альтернативы
;)
(42) yuraos, добавился отбор по дате документов, немного поправлено оформление :) В принципе, обработка получилась удобная и стоящая, поэтому прошу за нее денег. Ну и, что немаловажно, их платят. Поэтому делать бесплатной ближайшее время не планирую.
По поводу портирования - я только "За". Приветствую здоровую конкуренцию ;)
А с чем связано ограничение, что если объект встретится два раза, то обработка зациклится ?
это написано тут: (3) ?
Вообще тема очень полезная и реализация судя по скриншоту достойная.
Спасибо большое!
(25) dandrontiy, приведу пример. Есть номенклатура, у которой задана единица хранения остатков. У единицы хранения остатков в свою очередь владельцем будет эта номенклатура. В дереве это будет выглядеть следующим образом:
Справочники
Номенклатура
Аптечка медицинская
шт
Если же не вводить ограничение, то получится зацикливание ветки дерева (из-за того, что единица измерения также ссылается на номенклатуру-владельца):
Справочники
Номенклатура
Аптечка медицинская
шт
Аптечка медицинская
шт
Аптечка медицинская
......
Особенности и отличия данной обработки от встроенной:
Отображение иерархии ссылок объектов.
Возможность удалять объекты не монопольно.
Возможность отбора по метаданным.
Возможность очистки неподчиненных регистров сведений.
Возможность пометки объектов на удаление.
Возможность просмотреть иерархию ссылок на непомеченные на удаление объекты (например, удаляемый объект ссылается на непомеченную на удаление номенклатуру. В иерархии ссылок будут отображены все документы, в которых встречается данная номенклатура. Таким образом, можно быстро оценить, к чему приведет пометка на удаление номенклатуры).
(6) ryabov_d, вы правы. Поиском и заменой значений много дублей пришлось заменить :) Но для этого в стандартный поиск и замену значений добавил подбор. Если интересно, можете глянуть: Ссылка
(18) zavyzka, отличия от штатной очевидны в плане удобства. И когда речь идет о сотнях и тысячах помеченных на удаление объектов, то анализировать возможность удаления данной обработкой на порядок удобнее, чем скакать по списку объектов штатной обработки.
вот чем мне всегда импонируют такие вещи - просто, наглядно и со вкусом. Без миллиона разных кнопок, закладок и режимов.
ссылку на такую работу не стыдно кинуть грамотному заказчику и не потребуется еще писать ему толстенное "руководство по эксплуатации" ПРИСОЕДЕНЯЮСЬ КО ВСЕМ ПОЛОЖИТЕЛЬНЫМ ОТЗЫВАМ ОЧЕНЬ ПОЛЕЗНАЯ ШТУКА...
(32) graphbuh, да и к тому же плюсы не многие ставят, куда уж платить. А хочется, чтобы обработкой пользовались. Как вариант, можно оставить электронные кошельки и посмотреть на добровольную финансовую благодарность.
Я да. У меня была проблема - быстро поудалять объекты в 1С документооборот. А там как раз засада с регистрами.
И я наклепал подобную вашей штуку где то часов за шесть, увидел что не успеваю убрать все баги и поступил как все - тупой запрос и удаление всего и вся. Перед этим как раз искал на инфостарте и в принципе 1000-1500 руб готов был выложить за удобный инструмент. Т.е. как раз принадлежу к числу внедренцев которые покупают чужие разработки если это экономически выгодно. А вы убили прогресс на корню - т.к. если я сейчас просто выложу более убогий велосипед будут пинать. А если доработаю и выложу платный - запинают :) Поэтому будет лучше если вы учтете все замечания и сделаете в итоге продукт платным. И в принципе это честно. Т.к. те кто плюсовал скачали его бесплатно. Было бы неплохо для всех нас, если бы это превратилось в тенденцию.
Мне кажется добровольная финансовая благодарность это из области фантастики (сужу по себе). С одной стороны разработчик, в момент когда он творит, не должен думать о бабках и о времени. И часто хороший программист, не очень хороший менеджер и продавец. Плюс зачастую разработчик не может объективно оценить работу, это же его творение. Мне кажется для продвижения и полноценной обратной связи (не все же скажут разработчику, что они думают о продукте) нужен на сайте менедежер, который будет отбирать разработки, связываться с автором и , с его согласия , продвигать их. Вообще монетизация убила не один сайт, поэтому необходимо чтобы изменилась какая то критическая масса людей, которая поставляет разработки. Т.е. какой то свод правил, в котором будет пункт, что возможность делать свою работу качественно в рыночных условиях предполагает адекватную оплату. Если ты продал по демпинговой цене работу, ты подрываешь возможности качественного оказания услуг другими участниками.
(36) graphbuh, огромное спасибо за ценные мысли и рассуждения на тему :) Думаю, платной обработке быть. Главное, задать пинка в нужном направлении, что Вам, несомненно, удалось.
Мне кажется добровольная финансовая благодарность это из области фантастики (сужу по себе). С одной стороны разработчик, в момент когда он творит, не должен думать о бабках и о времени. И часто хороший программист, не очень хороший менеджер и продавец. Плюс зачастую разработчик не может объективно оценить работу, это же его творение. Мне кажется для продвижения и полноценной обратной связи (не все же скажут разработчику, что они думают о продукте) нужен на сайте менедежер, который будет отбирать разработки, связываться с автором и , с его согласия , продвигать их. Вообще монетизация убила не один сайт, поэтому необходимо чтобы изменилась какая то критическая масса людей, которая поставляет разработки. Т.е. какой то свод правил, в котором будет пункт, что возможность делать свою работу качественно в рыночных условиях предполагает адекватную оплату. Если ты продал по демпинговой цене работу, ты подрываешь возможности качественного оказания услуг другими участниками.
Полностью согласен - за хорошую работу нужно брать деньги.
(39) _LEV_, добровольная финансовая благодарность существует, но не в России, а в США и в Европе.
Например создатель протокола torrent и первого bittorrent клиента - не работает и его семья хорошо живёт на добровольные "благодарности" за его работу!
(44) sip, так по идее должна работать в толстом клиенте 8.3. Извините, что долго отвечал, не увидел комментарий. Т.е. данную обработку можно запустить даже на базах, которые полностью написаны на управляемых формах. Достаточно запустить базу в режиме толстого клиента. Переделку под управляемые формы посчитал нецелесообразной :) Сорри.
Классная обработка. Возможно даже кому-то нужная.
Но мне не понятно почему надо взять существующую типовую обработку, приделать бантик и сразу бежать на базар.
(47) CaptainMorgan, видать вы не сталкивались с необходимостью удаления десятков тысяч объектов и необходимостью быстрого анализа возможности удаления данных объектов. Плюс возможности быстрой очистки неподчиненных РС и пометки на удаление зависимых объектов.
Обработка экономит время, а соответственно и деньги. Если считаете, что с помощью данного инструмента Вы не сэкономите больше 1500 руб. (в чем я лично сомневаюсь, если стоит задача регулярного удаления объектов), то пользуйтесь стандартными средствами удаления объектов.
Здравствуйте! Можно ли вывести на печать дерево удаляемых объектов с ссылками а объекты, препятствующими удалению (например, прав. кнопкой - вывести список)?
Здравствуйте. Нашла у себя на сервере Вашу обработку. Качала вроде в 2012 году. Только она выдает ошибку на объекты, если имя объекта имеет более 1 первой заглавной буквы. Ошибка, к примеру:
{ПланОбмена.ФИБОбменБухгалтерскимиСправками.МодульМенеджера(777,32)}: Переменная не определена (ФИБОбменБухгалтерскимиСправками)
ВерсииФормата.Вставить("1.0", <<?>>ФИБОбменБухгалтерскимиСправками);
Подскажите, в текущей версии обработки ошибка исправлена?
(52) katenok86, так это ошибка не в обработке же. У вас в коде ошибка. Выполните синтаксический контроль модулей, он укажет на проблемное место (хотя его и так видно: в модуле менеджера плана обмена ФИБОбменБухгалтерскимиСправками перейдите к 777 строке, там используется ранее не объявленная переменная).
Добрый день!
Для обычных форм есть замечательный набор инструментов "Инструменты разработчика 1С", но его невозможно использовать в линуксе и в тонком и веб клиенте.
Поэтому мы решили собрать подобный пакет, но который будет работать только на платформенных механизмах или с использованием кроссплатформенных компонент.
Использование этого пакета инструментов хотим сделать общедоступным(OpenSource), разработку вести через гитхаб с использованием EDT.
Можем ли мы включить в этот набор обработки(или часть идей и функционала) вашей обработки по удалению объектов?
На текущий момент нашли основные инструменты (консоль запросов, консоль кода, редактор реквизитов, консоль компоновки и др.) для включения в инструментарий. Сейчас занимаемся получением одобрения авторов. Часть включаем свои- редактор предопределенных, редактор констант, Групповая обработка
(55)
Я выше писал, что смысла не вижу на управляемые формы переделывать, учитывая, что на обычных формах практически все современные конфигурации запускаются.
(56) Странное утверждение. Навероно все-таки имели ввиду, что Ваша обработка запускается на современных конфиграциях в режиме обычного приложения. Соглашусь, в этом есть смысл, так как в режиме обычного приложениея анализ и удаление работают намного быстрее. Вот только проанализировать удаляемые документы управляемых приложений тяжело, поскольку они в этом режиме не открываются.