Имя: Пароль:
1C
1С v8
Управляемые формы. Отображение иерархии в нескольких колонках .
0 zzhiraf
 
03.11.11
15:58
В настройках колонок таблицы управляемой формы (Отображение таблицы в виде Дерева) нет настройки ОтображатьИерархию. Каким образом можно вывести иерархию в нескольких колонках, а не только в первой?
1 Mort
 
03.11.11
15:59
А зачем?
2 zzhiraf
 
03.11.11
16:07
У меня есть несколько колонок с флажками. Если нужно выделить всю группу в иерархии пользователь нажимает на один флажок (корневой для группы) и флажки проставляются сразу у всех подчиненных элементов, то есть чисто визуально видно на какой флажок надо нажать, чтобы выделить всю группу.. если же они идут сплошняком то пользователю не виден корневой флажок группы, нужно сопоставлять флажки с иерархией которая отображается в первой колонке. Если таких колонок с флажками много, первой колонки не видно и это просто не удобно в общем)
3 ILM
 
гуру
03.11.11
16:14
(2) А зачем?
4 Axel2009
 
03.11.11
16:18
ну зафиксируй количество левых колонок?
5 zzhiraf
 
03.11.11
16:26
Это не удобно для пользователя и не красиво выглядит) Не зря же есть такая возможность в обычных формах.
6 zzhiraf
 
03.11.11
16:27
(3) Не понял, что конкретно зачем?
7 Mort
 
03.11.11
16:28
Я вообще нихрена не понял.
8 Mort
 
03.11.11
16:29
Выделяй иерархические элементы шрифтом или цветом фона и будет тебе щасте.
9 zzhiraf
 
03.11.11
16:32
В общем давайте оставим вопрос зачем и вернемся к первоначальному вопросу. Вариации с цветом, шрифтом это не вариант решения проблемы по-моему это очевидно, особенно при большом кол-ве уровней иерархии.
10 Mort
 
03.11.11
16:37
(9) Нет это не очевидное решение, возможность разместить несколько иерархий в разных колонках в обычных формах это просто недоразумение, возможность, которая появилась вследствие реализации, а не наоборот.

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

Вот если бы описал что хочешь сделать (что будет в дереве) можно было бы ещё понять проблему.
11 zzhiraf
 
03.11.11
16:41
(10) По поводу того, что это недоразумение это Ваше оценочное мнение или я что-то пропустил и была такая тема?)
12 zzhiraf
 
03.11.11
16:46
(10) Я просто хочу выводить колонки с флажками иерархически :)
13 Mort
 
03.11.11
16:49
(11) Покажи мне хоть одну действующую программу где такое есть.
14 zzhiraf
 
03.11.11
16:51
(13) В моей обработке на 8.1 такое есть, хочу тоже самое сделать на 8.2...
15 zzhiraf
 
03.11.11
16:53
16 Mort
 
03.11.11
16:58
(14) Ну у меня тоже такого есть, волосы дыбом встают. Я говорю об общеизвестных программах, ну тех самых, которые формируют у пользователей условный рефлекс на понимание UI.

(15) Посмотрел. Структуру свойств зафиксировать (это же очевидно), флажки в одно поле со значениями характеристик (это надо было ещё в 8.1 сделать, в отдельной колонке выглядит, простите, омерзительно).
17 zzhiraf
 
03.11.11
17:00
(16) если флажки сделать в одном поле со значениями характеристик, то сами значения редактировать нельзя будет, по-моему...
18 zzhiraf
 
03.11.11
17:03
(16) спасибо за совет... если вы считаете что это омерзительно, попробую поковыряться сделать в одной колонке)
19 Mort
 
03.11.11
17:05
(17) Да, в 8.1 нельзя (без гимора).
А вообще у меня складывается впечатление, весь интерфейс можно было бы по другому организовать.
Не совсем понятно, а что делают флажки в двух словах?
20 Mort
 
03.11.11
17:10
Если брать за основу всё таки такой, лично я бы сделал флажки справа в горизонтальной группе ячеек. Но тут на вкус и цвет..
21 zzhiraf
 
23.11.11
14:41
(8) Что-то не могу сообразить как через условное оформление выделить разные уровни иерархии разными цветами) Если только добавлять в дерево поле типа УровеньИерархии, и заполнять его при формировании дерева?
22 zzhiraf
 
23.11.11
16:09
ЭлементУО = УсловноеОформление.Элементы.Добавить();
   
   ЭлементУО.Оформление.УстановитьЗначениеПараметра("ЦветФона", WebЦвета.Голубой);
   ЭлементУО.Оформление.УстановитьЗначениеПараметра("Шрифт", Новый Шрифт(,,Истина));
   
   ЭлементУсловия = ЭлементУО.Отбор.Элементы.Добавить(Тип("ЭлементОтбораКомпоновкиДанных"));
   ЭлементУсловия.ЛевоеЗначение = Новый ПолеКомпоновкиДанных("???");
   ЭлементУсловия.ВидСравнения = ВидСравненияКомпоновкиДанных.Равно;//???
   ЭлементУсловия.ПравоеЗначение = 0;//???
   
   ОформляемоеПоле = ЭлементУО.Поля.Элементы.Добавить();
   ОформляемоеПоле.Поле = Новый ПолеКомпоновкиДанных("ДеревоНоменоклатурыНоменклатура");