Как убрать «плюсики» в дереве значений?
Как можно скрыть значки группировок в дереве значений, выводимом в табличном поле? Чтобы дерево выводилось всегда полностью развернутым и без них?
(1) Дык тогда это уже не дерево будет 🙂 Иерархия мне как раз нужна.
Просто так как в моем случае дерево всегда будет развернутым без возможности его свернуть, было бы неплохо скрыть значки группировки, т.к. они становятся лишними.
(3) Как это смысл?? Потому что это иерархия и глупо её эмулировать в ТЗ. Не говоря уже о том, что как не бейся, а родное дерево всё равно красивше.
Не надо предлагать никаких извратов. Если нет такой возможности — ничего страшного. Значит будет «минусики» светить.
Может поможет:
КолонкаТабличногоПоля (TableBoxColumn)
ОтображатьИерархию (ShowHierarchy)
Использование:
Чтение и запись.
Описание:
Тип: Булево. Содержит признак вывода линий иерархии и пиктограмм раскрытия узлов дерева.
установить свойство «РаскрыватьВсеУровни» в табличном поле, но если дерево огромное, а если методы ПриВыводеСтроки или ПриПолученииДанных модифицируют ячейки, то будут тормоза при открытии и движении по дереву
(9) Надо в идеале чтобы строки шли с отступами и линиями иерархии (как стандартно и выводится) но без пиктограмм сворачивания/разворачивания уровней (т.к. дерево всегда развёрнуто и сворачивание запрещено).
У меня, если снимаю «ОтображатьИерархию», отображается линейным списком — без отступов и линий иерархии, как обычная колонка ТЗ.
а что, (7) по-моему нормально должно отработать.
запретить можно в обработке события. иили я что-то недопонимаю?
(13) Недопонимаете. Вернее, ленитесь читать. Вопрос не в том как развернуть дерево или запретить его сворачивать (это тривиально), а как при этом еще и скрыть пиктограммы сворачивания/разворачивания уровней.
м.б.
При открытии (а не при выводе)
1. убрать иерархию в дереве
2. получить массив всех строк дерева
3. бежать по массиву и с условием что есть подчиненные строки раскрывать строку в дереве
ЭлементыФормы.ДеревоЗначений.Развернуть(СтрокаМассива);
кажется так
итого должно быть дерево развернуто, но без отображения иерархии.
результат не видел
Процедура ПриВыводеСтроки(. )
.
Наименование = СтрПовторить(Пробел, Уровень * 3) + Наименование;
.
КонецПроцедуры
Источник
Работа с деревом значений
Доброе утро, у кого-то уже день. Сразу сто раз извиняюсь за глупые вопросы.
Как в дереве значений добавить колонку?
Пишу так:
Если ПолучатьЦены Тогда
ДеревоОстатков.Колонки.Добавить(«Номенклатура»);
СтрокаНоменклатуры = ДеревоОстатков.Строки.Добавить();
Пока ПолучисьЦенушка.Следующий() Цикл
ЗаполнитьПоляСумм(СтрокаСклад, ПолучисьЦенушка, СписокЦенОстатков, КурсыВалют);
Выдает ошибку — «Ошибка при вызове метода контекста «Добавить»»
(0)Сделать то что хочешь?
Обычные управляемые формы?
Дерево будешь фомировать или это режим отображения табличного поля?
И в догонку вопрос, как скрыть колонку дерева значений? Пишу
ДеревоОстатков.ХарактеристикаСклад.Видимость — Ложь;
Тоже выдает ошибку, что поле не обнаружено.
У меня выборка по складам идет. Раньше задача стояла — показывать плановую цену, только той номенклатуре которая есть на складе. Теперь нужно чтобы цена выходила на все.
Поэтому условие — если остатка на складе нет — то добавляем колонку — номенклатура в ней выводим номенклатуру и рядом цену, а колонку «Склад» прячем.
(12) Хорошо — пусть не видимость. Тогда вернемся к первому вопросу. Как создать столбец, т.е. колонку.
ДеревоЗначений (ValueTree)
Свойства:
Колонки (Columns)
Строки (Rows)
ВыбратьСтроку (ChooseRow)
Скопировать (Copy)
Используется для доступа к свойствам и методам дерева значений в целом.
Объект, представляющий собой древовидную структуру, обладает сходной функциональностью с таблицей значений, а также обладает возможностью добавлять подчиненные строки к какой-либо строке дерева.
Внимание! В толстом клиенте (обычное приложение) передача значений данного типа с клиента на сервер и обратно приводит к возникновению исключения.
Сервер, толстый клиент, внешнее соединение.
Сериализуется. Данный объект может быть сериализован в/из XDTO. Тип XDTO, соответствующий данному объекту, определяется в пространстве имен . Имя типа XDTO: ValueTree
Пример:
ДеревоРезультатов = Новый ДеревоЗначений;
Для Каждого Колонка ИЗ ТаблицаРезультатов.Колонки Цикл
ДеревоРезультатов.Колонки.Добавить(Колонка.Имя);
КонецЦикла;
ДеревоЗначений, метод Скопировать
РезультатАнализаДанныхПоискАссоциаций, метод ВыгрузитьПравила
СтрокаДереваЗначений, метод Владелец
(15) На форме есть дерево значений — ОстаткиДляНовогоКлиента. В функции
Функция СоздатьКолонкиДереваОстатков(ТаблицаПоиска = Неопределено, ВсеТипыЦен = Ложь) Экспорт
ДеревоОстатков = Новый ДеревоЗначений;
МассивБазовыхТиповЦен = Новый Массив;
МассивРасчитываемыхЦен = Новый Массив;
СформироватьМассивБазовыхТиповЦен(ТаблицаПоиска, МассивБазовыхТиповЦен, МассивРасчитываемыхЦен, ВсеТипыЦен);
ДеревоОстатков.Колонки.Добавить(«ХарактеристикаСклад», Новый ОписаниеТипов(«СправочникСсылка.ХарактеристикиНоменклатуры,СправочникСсылка.Склады»));
//ДеревоОстатков.Колонки.Добавить(«Номенклатура», Новый ОписаниеТипов(«Строка»));
ДеревоОстатков.Колонки.Добавить(«ГВ», Новый ОписаниеТипов(«СправочникСсылка.ГодВыпуска»));
ДеревоОстатков.Колонки.Добавить(«МестоХранения» , Новый ОписаниеТипов(«Строка»));
ДеревоОстатков.Колонки.Добавить(«Общий» , Новый ОписаниеТипов(«Число», Новый КвалификаторыЧисла(15,3)));
ДеревоОстатков.Колонки.Добавить(«Свободный» , Новый ОписаниеТипов(«Число», Новый КвалификаторыЧисла(15,3)));
ДеревоОстатков.Колонки.Добавить(«СвободныйОжидаемый» , Новый ОписаниеТипов(«Число», Новый КвалификаторыЧисла(15,3)));
ДеревоОстатков.Колонки.Добавить(«ВРезерве» , Новый ОписаниеТипов(«Число», Новый КвалификаторыЧисла(15,3)));
// Тут колонки добавляются в том порядке в котором они идут в списке типов цен
Если МассивБазовыхТиповЦен.Количество() > 0 Тогда
// колонки для Каждого типа цены
Для Каждого Элемент Из МассивБазовыхТиповЦен Цикл
ПрефиксИмени = ОпределитьПрефиксИмениКолонки(ТаблицаПоиска, Элемент);
СоздатьКолонкиСуммДерево(ДеревоОстатков, ПрефиксИмени);
КонецЦикла;
Для Каждого Элемент Из МассивРасчитываемыхЦен Цикл
ПрефиксИмени = ОпределитьПрефиксИмениКолонки(ТаблицаПоиска, Элемент);
СоздатьКолонкиСуммДерево(ДеревоОстатков, ПрефиксИмени);
КонецЦикла;
Источник
УФ Дерево значений — скрыть строку
(4) Если во время применения условного оформления дерево развёрнуто, то не пропадут. Еще можно использовать параметр оформления «Отображать», тогда вместо строки «Группа 3» будет просто пустая строка.
(3) Вот поди просто так догадайся, что дерево целиком не подойдет, а нужно каждую колонку в отдельности добавить в оформляемые поля. В то время как для покраски дерево целиком подходит )
&НаКлиенте Процедура СкрытьСтроки(Команда) СкрытьСтрокиНаСервере(); КонецПроцедуры &НаСервере Процедура СкрытьСтрокиНаСервере() УсловноеОформление.Элементы.Очистить(); ЭлементУО = УсловноеОформление.Элементы.Добавить(); ЭлементУО.Оформление.УстановитьЗначениеПараметра("Видимость", Ложь); ЭлементОтбора = ЭлементУО.Отбор.Элементы.Добавить(Тип("ЭлементОтбораКомпоновкиДанных")); ЭлементОтбора.ЛевоеЗначение = Новый ПолеКомпоновкиДанных("ДеревоЗначений.Скрыть"); ЭлементОтбора.ВидСравнения = ВидСравненияКомпоновкиДанных.Равно; ЭлементОтбора.ПравоеЗначение = Истина; Для Каждого КолонкаДерева Из Элементы.ДеревоЗначений.ПодчиненныеЭлементы Цикл ОформляемоеПоле = ЭлементУО.Поля.Элементы.Добавить(); ОформляемоеПоле.Поле = Новый ПолеКомпоновкиДанных(КолонкаДерева.Имя); КонецЦикла; КонецПроцедуры
(14)Колонки скрываются, если текущая строка не видимая.
Как вариант — делать текущей строкой одну из видимых строк.
Имхо, плохой вариант скрывать строки.
(9) Соглашусь. Потому что чует мое сердце, что вряд ли задача состоит только в визуальности. Думаю, что где-то там за кадром стоит задача работать с этим деревом, а не просто на него смотреть. Тем более, что непонятно, как поведут себя строки после сворачивания-разворачивания родителя «скрытой» строки.
Источник
Можно ли некоторые элементы дерева значений сделать не видимыми
Не смог понять по справке. Пытаюсь придумать где что хранить и как обрабатывать.
Дерево создал, часть элементов не имеют дочерних значений и по сути мне нужны для дальнейшей обработки, анализу так сказать.
Можно ли сделать их не видимыми?
Можно. Добавить колонку в которую проставить галочку «показывать/не показывать» и установить отбор.
Но сразу предупреждаю — вы не сможете добавить ни одной строчки, они сразу же будут скрываться по условиям отбора. Оно вам надо?
(2)Строго говоря строк добавлять не планирую, а вот с данными скрытых строк работать нужно будет, изменять их
Можно будет?
И еще — я хотел контекстное меню использовать на элементах формы, что то не увидел возможности добавить этот элемент
(14) Тема как называется? Так мы сейчас и до лечения геморроя доберемся. Ищи «Условное оформление управляемых форм», и крась что душе угодно.
ЭтотОбъект.УсловноеОформление.Элементы.Очистить(); // Видимость строк ЭлементУО = УсловноеОформление.Элементы.Добавить(); Отбор = ЭлементУО.Отбор.Элементы.Добавить(Тип("ЭлементОтбораКомпоновкиДанных")); //ГруппаОтбора.ТипГруппы = ТипГруппыЭлементовОтбораКомпоновкиДанных.ГруппаНе; //Отбор = ГруппаОтбораРейс.Элементы.Добавить(Тип("ЭлементОтбораКомпоновкиДанных")); Отбор.ЛевоеЗначение = Новый ПолеКомпоновкиДанных("Прог_Дерево.ТипСтрокиСостава"); Отбор.ВидСравнения = ВидСравненияКомпоновкиДанных.НеРавно; Отбор.ПравоеЗначение = Новый ПолеКомпоновкиДанных("Перечисления.ТипыСтрокСоставаСпецификации.Материал"); // Видимость строк: ОтборГрузополучатель Для Каждого Элемент Из ЭтотОбъект.Элементы.Прог_Дерево.ПодчиненныеЭлементы Цикл ПолеУО = ЭлементУО.Поля.Элементы.Добавить(); ПолеУО.Поле = Новый ПолеКомпоновкиДанных(Элемент.Имя); КонецЦикла; ЭлементУО.Оформление.УстановитьЗначениеПараметра("Видимость", Ложь);
Источник
Дерево значений управляемые формы. как скрыть строку ? #689006
Есть дерево. колонки сгруппированы так, что колонки в 2 ряда. получается что 1 строка отображаеться в двух рядках. вот можно ли свернуть так, что бы было видно только значение с 1 ряда колонок, и наоборот развернуть. кто то делал такое ?
колонки в 2 ряда. строка получается так же в 2 ряда. вот нужно иметь возможность свернуть в 1 рядок. так понятно ? 🙂
Похожие вопросы 1С
- V8: Дерево значений
- Как быстро выгрузить таблицу значений в дерево значений?
- Как выгрузить результаты запроса в дерево значений
- Дерево значений, в Таблицу значений
- Быстро «выгрузить» дерево значений в таблицу значений
- Выгрузить запрос в дерево значений на форме?
- Как выгрузить дерево значений в таблицу значений?
- 8.2 + Управляемые формы + дерево значений + контекстное меню = проблемы
- Управляемые формы, Дерево значений, Динамический список, ОТБОРЫ
- Управляемые формы. Выделить строку таблицы значений.
- Таблица значений в дерево значений.
- Управляемые формы. Убрать заголовок формы
В этой группе 1С
- v8: В запросе делаю 2 паралельных запроса — результат выводит в 2 строки в чем ошибка
- Автоматическая ширина колонок в макете
- Получить запись по ключу записи
- Как удобно отобразить содержимое массива?
- v8: как правильно выгрузить платежные поручения из УРМ в БГУ
- v7: Выгрузка данных из 77 в файл XML
- ИнтернетПочта.Послать не посылает, если один из ящиков не существует
- Как толкнуть дальше бизнес-процесс
- БлокировкаДанных — в какой момент происходит снятие блокировки?
- результат запроса выгрузить в соовтетствие
- БП 3.0 Журнал кассовые документы
- Перезапуск сеанса в 1С
- ЗаполнитьЗначенияСвойств ускорить можно?
- ЗУП 2.5 файлы блокировок в папке с базой, а Активных пользователей нет
- Актуальные данные, отображаемые в таблице на форме. Как сделать эффективно?
- Бухгалтерия+пообъектный учет+кадры и расчет зарплаты 8.2
- COM соединение время выполнение запроса.
- Как выгрузить значение SQL запроса к внешнему источнику?
- ЗУП Как прикрепить плановые начисления к должности.
- Регистр «Расчеты с контрагентами»
Источник