| 0
    
        Pepeega   04.03.21✎ 14:26 | 
        Добрый день, есть управляемая форма и на ней дерево значений, добавил 2 кнопки в КП, 1 будет проставлять все флажки, другая будет их снимать, поставил у флажка(Пометка), три состояния и число, написал код, но ничего не меняется, в переменную пометка, приходит цифра, 1 или 0, подскажите в чем проблема?
 
 Процедура ОбходДереваДетально(ПереданноеДер, Пометка)
 
 Для Каждого СтрПолученногоДерева Из ПереданноеДер.Строки Цикл
 СтрПолученногоДерева.Пометка = Пометка;
 Если СтрПолученногоДерева.Строки.Количество()>0 Тогда
 ОбходДереваДетально(СтрПолученногоДерева, Пометка);
 КонецЕсли;
 КонецЦикла;
 
 КонецПроцедуры
 |  | 
    
        | 2
    
        fisher   04.03.21✎ 15:09 | 
        ЗначениеВРеквизитФормы() необходимо только если зачем-то перед этим выгружаешь "ДанныеФормыДерево" в "ДеревоЗначений".
Для простейших операций этого сто лет не надо и можно спокойно обходить непосредственно "ДанныеФормыДерево", причем даже не уходя с клиента и не генерируя лишних клиент-серверных вызовов.
 |  | 
    
        | 3
    
        Fedor-1971   04.03.21✎ 15:15 | 
        (0) Проблема в том, что ты пытаешься обойти дерево, а не коллекцию значений формы
Примерно так:
 
 
ур1 = ДеревоНаФорме.ПолучитьЭлементы();
 Для каждого элУр1 из Ур1 цикл
 ур2 = элУр1.ПолучитьЭлеемнты();
 Для ...  КонецЦикла;
 КонецЦикла;
 
Расставляй свои флажки на нужном уровне
 |  |