Выдает ошибку обработка
{ВнешняяОбработка.ДеревоУровень.Форма.Форма.Форма(19)}: Итератор для значения не определен
Для Каждого стрДерева из ДеревоЗн Цикл
Вот текст обработки:
&НаКлиенте
Процедура ПодсчитатьУровни(Команда)
КоличествоУровней = 0;
СтрокиДер = 0;
ПодсчитатьУровниНаСервере(СтрокиДер,СтрокиДер );
Сообщить("Максимальное количество уровней = " + КоличествоУровней);
КонецПроцедуры
&НаСервере
Процедура ПодсчитатьУровниНаСервере(СтрДер, К)
Для Каждого стрДерева из ДеревоЗн Цикл
Если стрДерева.Строки.Количество() <> 0 Тогда
ПодсчитатьУровниНаСервере(стрДерева.Строки, К);
К = стрДерева.Уровень();
КонецЕсли;
КонецЦикла;
КонецПроцедуры
(3) Что значит "дерево значений на форме обработки"? Это элемент формы?
Работать нужно с данными элемента, то что в поле ПутьКДанным в свойствах элементах, а не самим элементом.
На клиенте нет такого типа, как дерево значений. У топикастера какой-то изврат, который в переменной лежит общей. Я бы так не стал делать, да и уровень дерева в запросе можно получить (в ряде случаев).
(11), а я ничего не писал, что оно есть, на клиенте есть "неудобное" ДанныеФормыДерево.
Относительный аналог "Для Каждого стрДерева из ДеревоЗн.Строки Цикл" является "Для Каждого стрДерева из ДеревоЗн.ПолучитьЭлементы() Цикл"
(14) Ну мало ли... Все таки арсенал методов для работы с прикладным ДЗ шире, чем с ДанныеФормыКоллекция... Все зависит от задачи и используемых данных.