Имя: Пароль:
1C
 
Не получается обойти дерево значенмй и правильгам знач вывести на экоан
0 gabd_marat
 
30.11.18
13:15
|ВЫБРАТЬ
                       |    втСрезПоследнихВходнойКонтроль.Номенклатура КАК Номенклатура,
                       |    втСрезПоследнихВходнойКонтроль.Статус,
                       |    втСрезПоследнихВходнойКонтроль.ПоступлениеТоваровУслуг,
                       |    втСрезПоследнихВходнойКонтроль.НомерСтрокиПартии,
                       |    втСрезПоследнихВходнойКонтроль.ЗаказНаПроизводство,
                       |    ПоступлениеТоваровУслугТовары.Количество,
                       |    ПоступлениеТоваровУслугТовары.НомерСертификата,
                       |    втСрезПоследнихВходнойКонтроль.МетодКонтроля КАК МетодКонтроля
                       |ИЗ
                       |    втСрезПоследнихВходнойКонтроль КАК втСрезПоследнихВходнойКонтроль
                       |        ВНУТРЕННЕЕ СОЕДИНЕНИЕ Документ.ПоступлениеТоваровУслуг.Товары КАК ПоступлениеТоваровУслугТовары
                       |        ПО втСрезПоследнихВходнойКонтроль.ПоступлениеТоваровУслуг = ПоступлениеТоваровУслугТовары.Ссылка
                       |            И втСрезПоследнихВходнойКонтроль.Номенклатура = ПоступлениеТоваровУслугТовары.Номенклатура
                       |            И втСрезПоследнихВходнойКонтроль.НомерСтрокиПартии = ПоступлениеТоваровУслугТовары.НомерСтроки
                       |ИТОГИ ПО
                       |    МетодКонтроля,
                       |    Номенклатура";
1 gabd_marat
 
30.11.18
13:16
ВыборкаМетодКонтроля = Запрос.Выполнить().Выбрать(ОбходРезультатаЗапроса.ПоГруппировкам);
    Пока ВыборкаМетодКонтроля.Следующий() Цикл
        ВеткаДерева = ДеревоЗначенийВходногоКонтроля.Строки.Добавить();                  
        ВеткаДерева.НоменклатураПартия = ВыборкаМетодКонтроля.МетодКонтроля;
        ВыборкаНоменклатура = ВыборкаМетодКонтроля.Выбрать();        
        Пока ВыборкаНоменклатура.Следующий() Цикл
            ВеткаДереваПодчиненная = ВеткаДерева.Строки.Добавить();                  
            ВеткаДереваПодчиненная.НоменклатураПартия = ВыборкаНоменклатура.Номенклатура;
            ВыборкаПартия = ВыборкаНоменклатура.Выбрать();
            Пока ВыборкаПартия.Следующий() Цикл
                СтрокаДерева = ВеткаДереваПодчиненная.Строки.Добавить();
                ДокПоступление = СтрЗаменить(Строка(ВыборкаПартия.ПоступлениеТоваровУслуг),"Поступление товаров и услуг ","");
                ДокПоступление = Лев(ДокПоступление,25); //СтрДлина(ДокПоступление) - Найти(ДокПоступление, " от"));
                СтрокаДерева.НоменклатураПартия = "Партия " + ДокПоступление + " №" + Строка(ВыборкаПартия.НомерСертификата);
                СтрокаДерева.ПоступлениеТоваровУслуг = ВыборкаПартия.ПоступлениеТоваровУслуг;
                СтрокаДерева.Номенклатура = ВыборкаПартия.Номенклатура;    
                СтрокаДерева.ЗаказНаПроизводство = ВыборкаПартия.ЗаказНаПроизводство;
                СтрокаДерева.Статус = ВыборкаПартия.Статус;
                СтрокаДерева.НомерСертификата = ВыборкаПартия.НомерСертификата;
                СтрокаДерева.НомерСтрокиПартии = ВыборкаПартия.НомерСтрокиПартии;
                СтрокаДерева.Количество = ВыборкаПартия.Количество;
            КонецЦикла;        
        КонецЦикла;
    КонецЦикла;
2 1Сергей
 
30.11.18
13:27
Мой Вам совет, не садитесь за работу в алкогольном опьянении
3 gabd_marat
 
30.11.18
13:28
(2) Поздно, уже сел
4 gabd_marat
 
30.11.18
13:33
Выводяться только 2 ветки : методконтроля и номенклатура, в 3 цикл вообще не заходит
5 catena
 
30.11.18
13:40
(4)Второй раз тоже по группировкам выбирай
6 Михаил Козлов
 
30.11.18
14:00
Сколько "измерений" в итогах - столько и циклов.
Можно еще попробовать дерево = Запрос.Выполнить().Выгрузить(ОбходРезультатаЗапроса.ПоГруппировкам);