1c7. черный запрос или бух.итоги?

KiR

НЕ шибка опытный програмер)
11.09.2007
1 581
0
#1
Нужно получить остатки по счету 76.5 по всем контрагентам, но по договорам определенного вида (брокерские). что будет работать быстрее - черный запрос или бух. итоги? Как в бух. итогах задать подобное условие?
 

vitfil

IT-интегратор
02.04.2004
2 062
0
#2
Быстрее отработает черный запрос.
В бухитоги передать...
Я бы сделал список договоров и в ИспользоватьСубконто передал бы этот список
 

KiR

НЕ шибка опытный програмер)
11.09.2007
1 581
0
#3
А как тогда этот самый запрос написать? В семерке ведь нет регистра как в восьмерке. что и откуда мне нужно отбирать?
 
K
#4
ТекстЗапроса =
"//{{ЗАПРОС(Сформировать)
|Договоры = Справочник.Договоры.ТекущийЭлемент;
|ВидДоговора = Справочник.Договоры.ВидДоговора;
|Группировка Договоры без групп;
|Условие(ВидДоговора = ХХХ);
|"//}}ЗАПРОС
 

KiR

НЕ шибка опытный програмер)
11.09.2007
1 581
0
#5
НЕ. мне не это отобрать нужно. Мне нужно отобрать СКК и СКД по 76.5 причем вид договоров (субконто2 - договор) должно равняться брокерским. вот написал, но думаю не совсем мне поможет:

Код:
"//{{ЗАПРОС(Запрос)
|Период с (НачалоПериодаБИ()) по (КонМесяца(ДатаСверки));
|Без итогов;
|Сум = Операция.Сумма;
|Сч = Операция.Счет;
|ВидД = Операция.Субконто.Договоры.ВидДоговора;
|Контрагент = Операция.Субконто.Контрагенты;
|Функция СумСКД = СКД(Сум);
|Функция СумСКК = СКК(Сум);
|Группировка ВидД;
|Условие(Сч = СчетПОКоду(""76.5""));
|Условие(ВидД = Брок);
|"//}}ЗАПРОС
;
 
K
#6
ТекстЗапроса =
"//{{ЗАПРОС(Сформировать)
|Договоры = Справочник.Договоры.ТекущийЭлемент;
|ВидДоговора = Справочник.Договоры.ВидДоговора;
|Группировка Договоры без групп;
|Условие(ВидДоговора = ХХХ);
|"//}}ЗАПРОС
//выполнить бла бла бла
СписокДоговоров = СоздатьОбъект("СписокЗначений");
Пока запрос.группировка()=1 Цикл
СписокДоговоров.ДобавитьЗначение(Запрос.Договоры);
КонецЦикла;

БухИт = СоздатьОбъект("БухгалтерскиеИтоги");
БухИт.ИспользоватьСубконто(ВидыСубконто.Договоры,СписокДоговоров,2);

// и так далее
 

KiR

НЕ шибка опытный програмер)
11.09.2007
1 581
0
#7
ааааа... вот что ты имел ввиду. спасибо. ща попробую
 

KiR

НЕ шибка опытный програмер)
11.09.2007
1 581
0
#9
Код:
ИТ = СоздатьОбъект("БухгалтерскиеИтоги");
ИТ.ИспользоватьСубконто(ВидыСубконто.Номенклатура,СписокНоменклатуры,2,0); 
ИТ.ИспользоватьСубконто(ВидыСубконто.Договоры,,1,0);
ИТ.ВыполнитьЗапрос(,КонМесяца(ДатаСверки),"76.5",,,1,,1);
ИТ.ВыбратьСубконто();
Пока ИТ.ПолучитьСубконто() = 1 Цикл
Сообщить(ИТ.ПредставлениеСубконто(2));	
КонецЦикла;
Возвращает всего 2 договора. В списке номенклатуры 3 значения. Если каждое отдельное значение отбирать в оборотке - возвращает кучу договоров. Как такое может быть?
 

KiR

НЕ шибка опытный програмер)
11.09.2007
1 581
0
#12
Неа. таки черный вопрос быстрее бухитогов получился.... Но все равно спасибо. ловите свои плюсы