Процедура ПереместитьСтрокуДерева(Дерево, ПеремещаемаяСтрока, НовыйРодитель, Уровень = 0) Если Уровень = 0 Тогда НоваяСтрока = НовыйРодитель.Строки.Добавить(); ЗаполнитьЗначенияСвойств(НоваяСтрока, ПеремещаемаяСтрока); ПереместитьСтрокуДерева(Дерево, ПеремещаемаяСтрока, НоваяСтрока, Уровень + 1); Если ПеремещаемаяСтрока.Родитель = Неопределено Тогда Дерево.Строки.Удалить(ПеремещаемаяСтрока); Иначе ПеремещаемаяСтрока.Родитель.Строки.Удалить(ПеремещаемаяСтрока); КонецЕсли; Иначе Для Каждого Стр ИЗ ПеремещаемаяСтрока.Строки Цикл НоваяСтрока = НовыйРодитель.Строки.Добавить(); ЗаполнитьЗначенияСвойств(НоваяСтрока, ПеремещаемаяСтрока); ПереместитьСтрокуДерева(Дерево, Стр, НоваяСтрока, Уровень + 1); КонецЦикла; КонецЕсли; КонецПроцедуры