Имя: Пароль:
1C
1С v8
УФ. Можно ли как-то отключать вывод "плюсика" в иерархических списках?
0 fisher
 
28.05.12
17:24
Например, для последних веток дерева?
Хоть как-нибуть? И если да - то как?
1 DrShad
 
28.05.12
17:24
а зачем?
2 fisher
 
28.05.12
17:27
А зачем он нужен для последнего листа? Только в заблуждение пользователя вводит, юзабилити ухудшает.
3 ProProg
 
28.05.12
17:35
(0) можно. у тебя видимо детальные записи в последний уровень идут и все выглядит как дубляж.
4 ProProg
 
28.05.12
17:35
Только придется пожертвовать кое чем....
5 ProProg
 
28.05.12
17:37
(1) это известная проблема, что при выгрузке запроса в дерево на последнем уровне идет дублирующая строка (детальная запись) и получается задвоение. Те мы видим вроде бы то что нужно, но на каждой нижней строке есть еще строка этой же строки.
6 fisher
 
28.05.12
17:38
(3) Не, нифига. Никаких дубляжей. Речь именно об интерфейсном элементе. Последний элемент дерева тоже штатно отображается с "плюсиком", но при развороте пусто. Оно всегда так было для деревьев. Но мне в одном бы месте изменить штатное поведение...
Меня бы даже устроила возможность вообще отключить вывод "плюсиков".
7 ProProg
 
28.05.12
17:41
(6) хм. Вот этого у меян никогда не было, то что ты пишешь.
Если у строки в подсинении ничего нет то и плюсика не будет.
других возможностей отключать включать их нет. Только сворачивать или разворачивать.
Если у тебя на нижних уровнях плюсики - ты криво получил/написал дерево.
8 Feanor
 
28.05.12
17:42
(7) подозреваю, речь о динамическом списке
9 ProProg
 
28.05.12
17:43
(8) ну так динам. список и дерево это разные вещи.
10 ProProg
 
28.05.12
17:43
у него дерево. в прошлой ветке он про пометки вел разговор.
11 fisher
 
28.05.12
17:44
Да. Прошу прощения. Речь в самом деле о динамическом списке.
12 ProProg
 
28.05.12
17:44
(6) попадает под (5). иначе в дереве не могут быть еще плюсиким на нижнем уровне. А это значит что ты криво получил/заполнил дерево.
13 ProProg
 
28.05.12
17:44
(11) ааа.
14 fisher
 
28.05.12
17:46
В 7.7 можно было хоть отключить эту лабуду. В 8-ке ничего похожего не нашел...
15 fisher
 
28.05.12
17:47
Тьфу. Совсем зарапортовался. В какой нафиг 7.7? В обычных формах можно было отключить эту лабуду :)
16 Feanor
 
28.05.12
17:48
(11) а если отловить событие развертывания дерева, перебрать подчиненные, посмотреть, есть ли у них подчиненные, и развернуть их, если нет?
17 fisher
 
28.05.12
17:49
(10) А пометки - да. Для обычного не динамического списка были мне нужны в дереве. С ними все вышло отлично, как и хотелось (через группу колонок с группировкой в ячейке).
18 fisher
 
28.05.12
17:52
(16) Эмулировать ручное развертывание последних листьев дерева? Не представляю, как это можно осуществить.
19 Feanor
 
28.05.12
18:18
(18) вроде работает, но задумывается (в справочнике 59 тыщ элементов)

&НаСервере
Функция ПолучитьМассивСсылок(Родитель)
   
   Запрос = Новый Запрос;
   Запрос.Текст = "
   |ВЫБРАТЬ
   |    Ссылка
   |ПОМЕСТИТЬ
   |    ВТ_ПервыеПотомки
   |ИЗ
   |    Справочник.ХХХ
   |ГДЕ
   |    Родитель = &Родитель
   |;
   |ВЫБРАТЬ
   |    Родитель,
   |    Ссылка
   |ПОМЕСТИТЬ
   |    ВТ_ВторыеПотомки
   |ИЗ
   |    Справочник.ХХХ
   |;
   |ВЫБРАТЬ
   |    Ссылка
   |ИЗ
   |    ВТ_ПервыеПотомки
   |ГДЕ
   |    Ссылка НЕ В (ВЫБРАТЬ Родитель ИЗ ВТ_ВторыеПотомки)
   |;
   |УНИЧТОЖИТЬ
   |    ВТ_ПервыеПотомки
   |;
   |УНИЧТОЖИТЬ
   |    ВТ_ВторыеПотомки";
   
   Запрос.УстановитьПараметр("Родитель", Родитель);
   РезультатЗапроса = Запрос.Выполнить();
   Выборка = РезультатЗапроса.Выбрать();
   
   Результат = Новый Массив;
   Пока Выборка.Следующий() Цикл
       Результат.Добавить(Выборка.Ссылка);
   КонецЦикла;
   
   Возврат Результат;
   
КонецФункции

&НаКлиенте
Процедура СписокПередРазворачиванием(Элемент, Строка, Отказ)
   
   мРазворачиваем = Разворачиваем;
   Если мРазворачиваем = Неопределено Тогда
       Разворачиваем = Истина;
       
       МассивСсылок = ПолучитьМассивСсылок(Строка);
   
       Для Каждого Ссылка ИЗ МассивСсылок Цикл
           Элементы.Список.Развернуть(Ссылка);
       КонецЦикла;        
   КонецЕсли;
   
   Если мРазворачиваем = Неопределено Тогда
       Разворачиваем = Неопределено;
   КонецЕсли;
   
КонецПроцедуры
20 Feanor
 
28.05.12
18:21
+(19) упс, во второй ВТ забыл условие дописать

|ГДЕ
|    Родитель В (ВЫБРАТЬ Ссылка ИЗ ВТ_ПервыеПотомки)
21 fisher
 
28.05.12
18:48
Хм... Интересно.
Только решение шибко брутальное, как по мне. Лучше уж нехай крестики остаются, раз иначе никак. На такие жертвы ради небольшой красивости я не готов :)
22 Deniskind
 
28.05.12
19:06
(0) Можно еще выгружать в ДеревоЗначений и показывать его. Но, если потребуется добавление/изменение/удаление то там дописывать придется.
23 Feanor
 
28.05.12
19:12
(21) "Хоть как-нибуть" ))))))
24 Feanor
 
28.05.12
19:14
+(23) там большая часть времени тратится на операции с формой
Есть два вида языков, одни постоянно ругают, а вторыми никто не пользуется.