2
alnovin
09.06.12
✎
09:36
|
Вот такие костыли получились:
ТекущаяСтрока = ДеревоНоменклатуры.НайтиПоИдентификатору(ИдентификаторСтроки);
Родитель = ТекущаяСтрока.ПолучитьРодителя();
ЭлементыСклад = Родитель.ПолучитьЭлементы();
ЭлементНайден = Ложь;
ЭлементОбработан = Ложь;
Для Каждого ЭлементСклад Из ЭлементыСклад Цикл
Если ЭлементНайден Тогда
ЭлементОбработан = истина;
Элементы.ДеревоНоменклатуры.ТекущаяСтрока = Элементы.ДеревоНоменклатуры.ТекущаяСтрока + 1;
Прервать;
КонецЕсли;
Если ЭлементСклад = ТекущаяСтрока Тогда
ЭлементНайден = Истина;
КонецЕсли;
КонецЦикла;
//попробуем активизировать первый элемент склад в следующей ветки если она есть
ЭлементНайден = ложь;
Если Не ЭлементОбработан Тогда
ЭлементыНоменклатура = ДеревоНоменклатуры.ПолучитьЭлементы();
Для каждого ЭлементНоменклатура Из ЭлементыНоменклатура Цикл
Если ЭлементНайден Тогда
ЭлементыСклад = ЭлементНоменклатура.ПолучитьЭлементы();
Если ЭлементыСклад.Количество() > 0 тогда
Элементы.ДеревоНоменклатуры.ТекущаяСтрока = Элементы.ДеревоНоменклатуры.ТекущаяСтрока + 2;
КонецЕсли;
Прервать;
КонецЕсли;
Если ЭлементНоменклатура = Родитель Тогда
ЭлементНайден = Истина;
КонецЕсли;
КонецЦикла;
КонецЕсли;
|
|