Имя: Пароль:
1C
1C 7.7
v7: Бух итоги Субконто
0 MistaEr
 
15.10.13
10:10
Ит = СоздатьОбъект("БухгалтерскиеИтоги");
    Ит.ИспользоватьПланСчетов(ОсновнойПланСчетов());
    Ит.ИспользоватьСубконто(,, 1);
    
    Ит.ВыполнитьЗапрос(, ТекущийДокумент(), "58.1.1, 58.1.2, 58.2, 58.4, 76.59, 008.01, 008.02",,, 1,, "СК");
    Ит.ВыбратьСчета();
    Пока Ит.ПолучитьСчет() = 1 Цикл
        Ит.ВыбратьСубконто(1);
        Пока Ит.ПолучитьСубконто(1) = 1 Цикл  
            Если Ит.Счет.КоличествоСубконто() > 1 Тогда
                Ит.ВыбратьСубконто(2); //здесь выдает ошибку Число фильтров субконто превысило допустимое значение!
                Пока Ит.ПолучитьСубконто(2) = 1 Цикл  
                    Если Ит.Счет.КоличествоСубконто() > 2 Тогда
                        Ит.ВыбратьСубконто(3);
                        Пока Ит.ПолучитьСубконто(3) = 1 Цикл
                            ДобавитьСтроку(Ит, 3);    
                        КонецЦикла;
                    Иначе
                        ДобавитьСтроку(Ит, 2);
                    КонецЕсли;    
                КонецЦикла;
            Иначе
                ДобавитьСтроку(Ит, 1);
            КонецЕсли;    
        КонецЦикла;
    КонецЦикла;

Выдает ошибку Число фильтров субконто превысило допустимое значение!
Не пойму в чем проблема
1 Kreont
 
15.10.13
10:17
по коду:
Ит.ИспользоватьСубконто(,, 1); один раз, а
Ит.ВыбратьСубконто  3 раза встречается.
2 MistaEr
 
15.10.13
10:19
это же можно написать только перед ВыполнитьЗапрос, как понимаю. И что 3 раза повторять?)
3 MistaEr
 
15.10.13
10:19
Если указать вид субконто, тогда нужно и значения субконто указывать
4 MistaEr
 
15.10.13
10:35
Обновим
5 zak555
 
15.10.13
10:37
Ит.ИспользоватьСубконто(,, 1);
Ит.ИспользоватьСубконто(,, 1);
Ит.ИспользоватьСубконто(,, 1);
6 MistaEr
 
15.10.13
10:40
а ведь реально так надо оказывается. Спасибо!
7 zak555
 
15.10.13
10:40
(6) 500р
8 MistaEr
 
15.10.13
11:04
Еще раз спасибо!!)
9 zak555
 
15.10.13
11:05
600р
Закон Брукера: Даже маленькая практика стоит большой теории.