Друзья, срочно нужна ваша помощь! Нужно рассчитать дебет/кредит на начало и конец периода для каждого контрагента с справочника контрагентов в разрезе 361, 362, 631 и 632 счетов. Я написал отчет со следующим алгоритмом:
1. Перебираю циклом справочник контрагентов.
2. Для каждого контрагента в цикле перебираю нужные 4 счета
3. Для каждого счета делаю запрос к БИ.
Код:
Для прклСчет=1 По 4 Цикл
Если прклСчет=1 Тогда Счет="361";
би1 = СоздатьОбъект("БухгалтерскиеИтоги");
би1.ИспользоватьСубконто(ВидыСубконто.Контрагенты,ТекКонтрагент,,1);
би1.использоватьсубконто(видысубконто.заказы,,,1);
би1.ВыполнитьЗапрос(Дата1,Дата2,Счет,,,,,);
би1.ВыбратьСубконто();
Пока би1.ПолучитьСубконто()=1 Цикл
ЗадолженностьН = Строка(би1.Субконто(2));
ДебитовоеСальдо=би1.СНД(Счет);
КредитовоеСальдо=би1.СНК(Счет);
ДебитовоеСальдоКонец=би1.СКД(Счет);
КредитовоеСальдоКонец=би1.СКК(Счет);
КонецЦикла;
ИначеЕсли прклСчет=2 Тогда Счет="362";
и т.д.
Оно работает и все правильно считает, но работает МЕДЛЕННО
А учитывая, что в справочнике 15000 контрагентов и расчет нужен поквартально за несколько лет, то результаты ждать по сутках...
(( Подскажите, пожалуйста, можно ли как-то упростить код и ускорить расчет????? Спасибо!