Дорошкевич Антон | Руководитель проектов | ООО ЦБР "ИнфоСофт"

«1С-Батл. PostgreSQL 9,10 vs MS SQL 2016»

Сравнение возможностей PostgreSQL и MS SQL для работы с 1С. Результаты нагрузочного тестирования "Восстановления последовательности партионного учёта" на базе 1С размером более 1 ТБ. 2 года, 500+ баз 1С, 4ТБ данных Репликация История одного Production 1C на PostgreSQL

Свернуть / Развернуть дерево значений

1. ness 13.02.14 12:49 Сейчас в теме
Долго бегал в поисковик мучался искал как свернуть / развернуть дерево значений программно, безрезультатно. В итоге в который раз убедился, что Отладчик + Синтаксис-помощник рулят. Результаты моих поисков:

//Свернуть все выделенные строки дерева
Для каждого Строка Из ЭлеменетыФормы.ТабличноеПоле.ВыделенныеСтроки Цикл
ЭлементыФормы.ДеревоЗначений.Развернуть(Строка);
КонецЦикла;

//Развернуть все строки дерева
Для каждого Строка Из ЭлеменетыФормы.ДеревоЗначений.Значение.Строки Цикл
ЭлементыФормы.ДеревоЗначений.Свернуть(Строка);
КонецЦикла;
mailrum2004; wokituk; matveev.andrey.v; FeliceYa; monkbest; marku; rokhin; +7 Ответить
Ответы
Сортировка: Древо
2. Rothschild 13.02.14 16:04 Сейчас в теме
(1) ness, ну молодец!!!
а вопрос то в чем, где это в мануале лежит ???
3. Rothschild 13.02.14 16:08 Сейчас в теме
(2)
пути в синтакс помошнике:

для 8.1: Интерфейсные объекты \ Элементы управления \ Табличное поле \ ТабличноеПоле \ Методы
для 8.2: Интерфейс (обычный) \ Элементы управления \ Табличное поле \ ТабличноеПоле \ Методы


ТабличноеПоле (TableBox)
Развернуть (Expand)
Синтаксис:
Развернуть(<Строка>, <С подчиненными>)

Параметры:
<Строка> (обязательный)
Строка табличного поля. Тип значения строки табличного поля приведен в описаниях расширений табличного поля у соответствующих объектов.
<С подчиненными> (необязательный)
Тип: Булево. Определяет необходимость раскрытия подчиненных узлов. Истина - раскрывать подчиненные узлы, Ложь - не раскрывать подчиненные узлы.
Значение по умолчанию: Ложь
Описание:
Разворачивает узел в указанной строке дерева.
Недоступен на сервере 1С:Предприятие. Не используется в модуле внешнего соединения.
Примечание:
Используется в случае, если с табличным полем связано дерево значений или список справочника в виде дерева.
Показать


ТабличноеПоле (TableBox)
Свернуть (Collapse)
Синтаксис:
Свернуть(<Строка>)

Параметры:
<Строка> (обязательный)
Строка табличного поля. Тип значения строки табличного поля приведен в описаниях расширений табличного поля у соответствующих объектов.
Описание:
Сворачивает узел в указанной строке дерева.
Недоступен на сервере 1С:Предприятие. Не используется в модуле внешнего соединения.
Примечание:
Используется в случае, если с табличным полем связано дерево значений или список справочника в виде дерева.
Показать
4. Rothschild 13.02.14 16:16 Сейчас в теме
(3)
ну еще есть аналогичный путь для управляемых форм:
для 8.2: Интерфейс (управляемый) \ Таблица формы \ ТаблицаФормы \ Методы

ЗЫ:
еще один полезный метод из той же серии:

ТаблицаФормы (FormTable)
Развернут (Expanded)

Синтаксис:

Развернут(<Строка>)
Параметры:

<Строка> (обязательный)

Тип: Произвольный.
Идентификатор строки таблицы.
Возвращаемое значение:

Тип: Булево.

Описание:

Определяет, развернут ли узел дерева в указанной строке.

Доступность:

Тонкий клиент, веб-клиент, толстый клиент.
Показать
6. nporrep 46 29.12.14 11:33 Сейчас в теме
(1) ness, не Элеменеты, а Элементы, нуб
5. ness 13.02.14 18:34 Сейчас в теме
А это не вопрос, это чтобы поисковик проиндексировал и какой нибудь нуб если столкнется с той же проблемой, мог без проблем ее решить.

З.Ы. Спасибо что дополнил пост.
Olenevod; pm74; Sanz; +3 Ответить
7. hexus 3 29.12.14 12:01 Сейчас в теме
Вообще-то у элеменат формы с деревом есть свойство как его отображать.
Не проще ли было написать
ЭлементыФормы.Дерево.НачальноеОтображениеДерева = НачальноеОтображениеДерева.РаскрыватьВсеУровни;
German_Tagil; config; EMelihoff; ya.Avoronov; psa247; pbahushevich; kivals; UniversaLL; colci; rokhin; +10 Ответить
12. pbahushevich 30.04.16 22:47 Сейчас в теме
(7) hexus, О спасибо тебе мудрый человек!!!!
13. German_Tagil 6 21.12.16 13:49 Сейчас в теме
(7) hexus, Работает на обычных формах
8. renmy 83 09.02.15 16:59 Сейчас в теме
НачальноеОтображениеДерева не сработало.

Я сделал так:

&НаКлиенте
Процедура РазвернутьДерево(Команда)
	
	ЭлементыДерева = ДеревоТоваров.ПолучитьЭлементы();
	Для каждого ЭлементДерева Из ЭлементыДерева Цикл
		Элементы.ДеревоТоваров.Развернуть(ЭлементДерева.ПолучитьИдентификатор());
	КонецЦикла;
		
КонецПроцедуры

&НаКлиенте
Процедура СвернутьДерево(Команда)
	
	ЭлементыДерева = ДеревоТоваров.ПолучитьЭлементы();
	Для каждого ЭлементДерева Из ЭлементыДерева Цикл
		Элементы.ДеревоТоваров.Свернуть(ЭлементДерева.ПолучитьИдентификатор());
	КонецЦикла;
	
КонецПроцедуры
Показать
johny1987; Andreyyy; Uncore; BalalaykaJazz; Anchoret; pm74; director04; colci; AntonS; +9 Ответить
9. Nuuq 68 24.07.15 15:58 Сейчас в теме
УФ дерево Развернуть

&НаКлиенте
Процедура КомандаТаблицаДанныхРазвернутьВсе(Команда)
	
	РазвернутьВсеДерево(ТаблицаДанных.ПолучитьЭлементы());	
	
КонецПроцедуры

&НаКлиенте
Процедура РазвернутьВсеДерево(КоллекцияЭлементов) 
	
	Для каждого ЭлементКоллекции Из КоллекцияЭлементов Цикл
		Элементы.ТаблицаДанных.Развернуть(ЭлементКоллекции.ПолучитьИдентификатор());
		
		ВложенныеЭлементыКоллекции = ЭлементКоллекции.ПолучитьЭлементы();
		Если (ВложенныеЭлементыКоллекции.Количество() > 0) Тогда
			РазвернутьВсеДерево(ВложенныеЭлементыКоллекции);
		Иначе
			Прервать;
		КонецЕсли;
	КонецЦикла;
	
КонецПроцедуры
Показать


УФ дерево Свернуть

&НаКлиенте
Процедура КомандаТаблицаДанныхСвернутьВсе(Команда)
	
	СвернутьВсеДерево(ТаблицаДанных.ПолучитьЭлементы());	
	
КонецПроцедуры

&НаКлиенте
Процедура СвернутьВсеДерево(КоллекцияЭлементов) 
	
	Для каждого ЭлементКоллекции Из КоллекцияЭлементов Цикл
		ВложенныеЭлементыКоллекции = ЭлементКоллекции.ПолучитьЭлементы();
		Если (ВложенныеЭлементыКоллекции.Количество() > 0) Тогда
			СвернутьВсеДерево(ВложенныеЭлементыКоллекции);
		Иначе
			Прервать;
		КонецЕсли;
		
		Элементы.ТаблицаДанных.Свернуть(ЭлементКоллекции.ПолучитьИдентификатор());
	КонецЦикла;
	
КонецПроцедуры
Показать


Предлагаю как-то развивать тему еще XD
e.a.afanasyev; myoker; IDija; +3 Ответить
10. monkbest 97 03.11.15 09:10 Сейчас в теме
Неть, рекурсия не нужнА. У метода развернуть второй параметр делаем = ИСТИНА, что означает развернуть с подчиненными.
kuzyara; IDija; +2 Ответить
11. dtripleh 15.01.16 08:32 Сейчас в теме
В новой платформе можно развернуть все уровни дерева, указав в свойстве таблицы НачальноеОтображениеДерева - раскрыть все уровни
kuzyara; suggestive; pbahushevich; +3 Ответить
14. Fil15 02.10.17 15:30 Сейчас в теме
А дня обычных форм есть как свернуть/развернуть дерево по заданному уровню?
15. user868076 23.11.17 15:41 Сейчас в теме
При входе на сервер с рабочего стола исчезает значок "свернуть". Как настроить?
16. vasilievil 11 12.05.18 22:42 Сейчас в теме
&НаКлиенте
Процедура РазвернутьВсеДерево(Команда)
   Элементы.Дерево.Развернуть(0,Истина);    
КонецПроцедуры
Оставьте свое сообщение

Вакансии

Удаленный бизнес-аналитик 1С
Санкт-Петербург
Временный (на проект)

Разработчик (эксперт) по направлению 1С:ЗУП 3
Санкт-Петербург
зарплата от 130 000 руб.
Полный день

Архитектор 1С
Санкт-Петербург
Полный день

Программист 1С
Москва
Полный день

Программист 1С
Москва
Полный день