Имя: Пароль:
1C
1С v8
Флажки дерево значений 1С УФ
0 skupidom
 
09.01.18
16:55
На уф обработки есть реквизиты формы: дерево значений и 2 кнопки установить флажки,снять флажки.Программно пишу код для установки и снятия флажков в дереве:
&НаСервере
Процедура ОбходДереваДетально(ПереданноеДер,Пом)
    
    Для Каждого СтрПолученногоДерева Из ПереданноеДер.Строки Цикл
        
        Если Пом = 1 Тогда
            СтрПолученногоДерева.Выбран=Истина;
        ИначеЕсли Пом = 0 Тогда
            СтрПолученногоДерева.Выбран=Ложь;
        Иначе
            СтрПолученногоДерева.Выбран = НЕ СтрПолученногоДерева.Выбран;                     
        КонецЕсли;
        
        Если СтрПолученногоДерева.Строки.Количество()>0 Тогда
            ОбходДереваДетально(СтрПолученногоДерева,Пом);
        КонецЕсли;
        
    КонецЦикла;
    
    ЗначениеВРеквизитФормы(ПереданноеДер,"СоставОбмена");  
    
КонецПроцедуры

&НаСервере
Процедура ОбойтиДеревоНаСервере(Пом)
    
    Дерево = РеквизитФормыВЗначение("СоставОбмена");
    ОбходДереваДетально(Дерево,Пом);
    
КонецПроцедуры

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

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

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

&НаКлиенте
Процедура СброситьВсе(Команда)
    УстановитьПометки(0);
КонецПроцедуры
1 skupidom
 
09.01.18
16:56
Ошибка:
{ВнешняяОбработка.рар_ОбменЗУП_УПП.Форма.Форма.Форма(2138)}: Ошибка при вызове метода контекста (ЗначениеВРеквизитФормы)
    ЗначениеВРеквизитФормы(ПереданноеДер,"СоставОбмена");  
по причине:
Недопустимое значение параметра (параметр номер '2')
2 skupidom
 
09.01.18
16:59
реквизит формы - СоставОбмена тип ДеревоЗначений
3 vicof
 
09.01.18
17:00
Дерево не доступно на клиенте
4 cw014
 
09.01.18
17:14
А зачем преобразование в дерево? Почему нельзя работать напрямую с "ДанныеФормыДерево"?
5 cw014
 
09.01.18
17:15
А падает на том, что ты не дерево помещаешь, а строки дерева
Чтобы обнаруживать ошибки, программист должен иметь ум, которому доставляет удовольствие находить изъяны там, где, казалось, царят красота и совершенство. Фредерик Брукс-младший