Вход | Регистрация

1С:Предприятие ::

Метки: 

Флажки в дереве значений УФ

Я
   Альбатрос
 
06.07.18 - 07:10
Вопрос возможно и тривиальный, но я понять не могу как правильно сделать.
Итак, имеется обработка, в обработке есть дерево значений, у ДЗ есть поле "Отм" с типом булево, которое является флажком. Хочу по кнопке Отметить все флажки, пишу вот такой г*внокод:

&НаКлиенте
Процедура ОтметитьВсе(Команда)
    
ОтметитьВсеНаСервере();
    
КонецПроцедуры

&НаСервере
Процедура ОтметитьВсеНаСервере()
    
    ОбработкаОбъект = РеквизитФормыВЗначение("Объект");
    Для каждого СтрокаДерева из ОбработкаОбъект.ТаблицаАнализа.Строки Цикл
        
        СтрокаДерева.Отм = Истина;
        
        ДЛя каждого СтрокаСтроки из СтрокаДерева.Строки Цикл
            
            СтрокаСтроки.Отм = Истина;
            
        КонецЦикла;
        
    КонецЦикла;
    
    ЗначениеВРеквизитФормы(ОбработкаОбъект,"Объект");
    
КонецПроцедуры


Ессесно после его исполнения флажки отмечаются, Но все уровни строк сворачиваются до верхнего родителя. Как оставить их развернутыми? Или как правильно оформить флажки в ДЗ?
 
 
   МимохожийОднако
 
1 - 06.07.18 - 07:31
Это пробовал?
...ТаблицаФормы.Развернуть (FormTable.Expand)
ТаблицаФормы (FormTable)
Развернуть (Expand)
Синтаксис:

Развернуть(<ИдентификаторСтроки>, <СПодчиненными>)
Параметры:

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

Тип: Произвольный.
Идентификатор строки таблицы. 
<СПодчиненными> (необязательный)

Тип: Булево. 
Определяет необходимость раскрытия подчиненных узлов. Истина - раскрывать подчиненные узлы, Ложь - не раскрывать подчиненные узлы.
Значение по умолчанию: Ложь.
Описание:

Разворачивает узел в указанной строке дерева.

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

Тонкий клиент, веб-клиент, толстый клиент, мобильное приложение(клиент).
--------------------------------------------------------------------------------

     Методическая информация
   Альбатрос
 
2 - 06.07.18 - 07:36
(1) А как изначально определить, какие строки у меня развернуты? То есть мне не надо разворачивать все строки, а только те, которые до этого были развернуты пользователем.
   Альбатрос
 
3 - 06.07.18 - 07:38
Вопрос снимается, есть свойство Развернут. Спасибо!
   Альбатрос
 
4 - 06.07.18 - 07:42
Хотя все равно повыпендриваться придется. Сначала нужно обойти все строки, запомнить идентификаторы развернутых, после отметки по идентификатором их опять развернуть.
   тарам пам пам
 
5 - 06.07.18 - 09:15
(0) а нахрена ты вообще идешь на сервер и затем еще и гоняешь ДанныеФормы в объект и обратно? Обойди дерево прямо на клиенте, тогда скорее всего и сворачиваться ничего не будет.
   Тихий омут
 
6 - 06.07.18 - 09:57
&НаКлиенте
Процедура Уст(Коллекция)
    ВсеЭл=Коллекция.ПолучитьЭлементы();
    Для Каждого Эл Из ВсеЭл Цикл
        Эл.Фл=Истина;
        Уст(Эл);
    КонецЦикла;//  Эл Из Коллекция 

КонецПроцедуры// Уст(Коллекция) 


&НаКлиенте
Процедура Команда1(Команда)
    Уст(Реквизит1);
КонецПроцедуры


Список тем форума
Рекламное место пустует   Рекламное место пустует
ВНИМАНИЕ! Если вы потеряли окно ввода сообщения, нажмите Ctrl-F5 или Ctrl-R или кнопку "Обновить" в браузере.
Тема не обновлялась длительное время, и была помечена как архивная. Добавление сообщений невозможно.
Но вы можете создать новую ветку и вам обязательно ответят!
Каждый час на Волшебном форуме бывает более 2000 человек.
Рекламное место пустует