Как средствами адинес исправить "зацикливание" групп ? #299548


#0 by smaharbA
Группа я вляется родителем самой себя (может быть и сложнее вариант) НайтиПоНаименованию и НайтиПоКоду не сработало, выгрузка/загрузка само собою ничего не изменила, ТИИ конечноже зависает на сутки (пока не вырубишь, в логах стопорится на 10:43:13;;C;Doctor;dctLgInt;1;;; ... конечно тупа открыл ЕМ и сделал select * from sc236 where parentid=id ну и так далее... ... немогу сообразить как это сделать чиста средствами адинес...
#1 by Дядя Васька
Если СпрТвойСправочник.ТекущийЭлемент=СпрТвойСправочник.Родитель Тогда )))))
#2 by IUnknown
а счего взято преположение что сделано чисто средствами адинес...
#3 by smaharbA
не так понял, хотя сделано средствами адинес (сам делал )) ), но вопрос как вернуть все взад средствами адинес ? где взять .ТекущийЭлемент ? он падла и в обходе не попадает
#4 by GrayT
Извращенец...
#5 by GrayT
+4 Кстати, если попытаться сразу присвоить другую группу - падает напрочь..
#6 by FreeFin
Загнать в такого "родителя" можно. Штатно выгнать=нифига. такшо токмо parentid="     0" и ник иначе. В выборку такие "элементы" не попадут.
#7 by ildus
зациклить что-ли все группы перед увольнением )
#8 by Дядя Васька
ВыбратьЭлементы;
#9 by GrayT
Вообщето я проверил прежде чем постить...
#10 by FreeFin
Да, был не прав. Так=вытягивает.
#11 by Дядя Васька
#12 by Дядя Васька
чего-то сегодня форум тупит как никогда ))
#13 by smaharbA
Странно, а у меня неработало через выбор, о чем написал в
#14 by smaharbA
так перегоняет обратно ? когда падает ?
#15 by GrayT
В корень, см 5 - загнать сразу в другую группу не получилось Не просто выбор, а выбор без иерархии. Кстати первый вариант я попробовал вообще без перебора, а прямо в форме списка с отключенной иерархией
#16 by YF
Дык ТИИ все сделает за вас...
#17 by smaharbA
у меня в форме списка его вообще небыло и всех его детей, правдо когда посчелкаешь иерархией несколько раз, он появляется, но любое действие с ним (пробовал и перенести в группу (корень)) приводило к ступору с последующим выпадом с ошибкой типа "адрес анкнов ..."
#18 by GrayT
"ТИИ конечноже зависает на сутки (пока не вырубишь, в логах стопорится на 10:43:13;;C;Doctor;dctLgInt;1;;; " - говорит не хочет делать....
#19 by GrayT
ХЗ, я сделал в пустой базе одну пустую группу саму на себя. Если стоять на ней и попытаться включить иерархию - зависала.
#20 by smaharbA
спецом на копии запустил вчера - полутора суток ниче не делало, вообще (уж как определять делает или нет - знаю) базато с гулькин хрен - 68 мБ (усн)
#21 by YF
У меня помогало, тока база тогда была маленькой ...
#22 by smaharbA
в ней было порядка 300 элементов - не отображались никак вообще...
#23 by YF
+ Ну давно это было, может че и запамятовал ...
#24 by Дядя Васька
И не отобразиться, качни...
#25 by Дядя Васька
+ *отобразится
#26 by smaharbA
да делал я так, просто входит в ступор и все... делал и через найти и даже подсовывал значениеизстрокивнутр, тупо подставив значения подсмотренные в таблице...
#27 by Дядя Васька
Просто в ВыбратьЭлементы собсно 0 не поставил. Обрати внимание что в инерактиве зацикленный не видно при включенной иерархии и видно при отключенной, и здесь так же...
#28 by smaharbA
да я пробовал спецом на чистой, все так как говорите, а на той фиг, даже видимость проявляется только после нескольких кликах на вкл/выкл иерархии, и при попытке любого действия над группой - ступор...
#29 by Дядя Васька
Может из-за того что скуль... А если в дбф выгрузить и попробовать?
#30 by AcaGost
Был такой случай. Вначале перенес все элементы из такой папки, затем, включив непосредственное удаление, удалил эту папку
#31 by Torquader
Отключение иерархии должно помогать. Потом выбираем всё дело в таблицу значений (где пишем ссылку на родителя и ссылку на сам элемент). В таблице находим все, которые нам не подошли (поиск очень простой, начинаем с любого элемента до тех пор, пока ссылка на родителя не станет пустой и каждого следующего родителя во временный список, если он уже там есть, то это цикл - и надо родителя тому элементу, который указал на наличествующего в списке, поставить нулевого - то есть пустое значение данного справочника).
#32 by Torquader
Забыл добавить - глюк возникает при заполнении свойства Уровень у элемента, когда включена иерархия, то оно готовится заранее, а при его вычислении мы идём по родителям, и идём без конца, просто инкрементируя счётчик (почему-то не отлавливаются его переходы через ноль). Хотя, если это делается методами SQL сервера, то там счётчик обычно 8 байт.
Тэги:
Ответить:
Комментарии доступны только авторизированным пользователям