|
Получить обороты счета | ☑ | ||
---|---|---|---|---|
0
malev35
10.09.12
✎
17:12
|
Функция ПолучитьОборот (ТекСтрока)
Запрос = Новый Запрос; Запрос.Текст ="ВЫБРАТЬ |ЕПСБУОбороты.Счет, |ЕПСБУОбороты.Субконто2, |ЕПСБУОбороты.Субконто3, |ЕПСБУОбороты.СуммаОборотКт |ИЗ |РегистрБухгалтерии.ЕПСБУ.Обороты(&НачПериода, &КонПериода, Период, Счет В (&СписокСчетов), , (Субконто2 = &Контрагент) И (Субконто3 = &Договор) )КАК ЕПСБУОбороты"; Запрос.УстановитьПараметр("НачПериода", НачалоМесяца(Дата)); Запрос.УстановитьПараметр("КонПериода", КонецМесяца(Дата)); СписокСчетов = Новый СписокЗначений; СписокСчетов.Добавить(ПланыСчетов.ЕПСБУ.РасчетыСПлательщикамиДоходовОтУслуг); //205.31.(2.0.2) СписокСчетов.Добавить(ПланыСчетов.ЕПСБУ.ДСУчрежденияНаЛСВБанке); //201.21.(2.2) СписокСчетов.Добавить(ПланыСчетов.ЕПСБУ.Касса); //201.34.(2.1.2) //Запрос.УстановитьПараметр("Счет", ПланыСчетов.ЕПСБУ.РасчетыСПлательщикамиДоходовОтУслуг); Запрос.УстановитьПараметр("СписокСчетов", СписокСчетов); Запрос.УстановитьПараметр("Контрагент",ТекСтрока.Плательщик ); Запрос.УстановитьПараметр("Договор",ТекСтрока.Договор); Выборка = Запрос.Выполнить().Выбрать(); Пока Выборка.Следующий() Цикл Продолжить; КонецЦикла; Возврат Выборка.СуммаОборотКт; КонецФункции Как оптимизировать данный код для запроса сразу по всем строкам табличной части и соответственно выгрузки результата запроса в колонку табличной части документа? |
|||
1
DrShad
10.09.12
✎
17:14
|
неужто в цикле функция выбирается!?
|
|||
2
DrShad
10.09.12
✎
17:15
|
а вот это
Пока Выборка.Следующий() Цикл Продолжить; КонецЦикла; Возврат Выборка.СуммаОборотКт; феерично! |
|||
3
malev35
10.09.12
✎
17:15
|
знаю что в корне неверно, скажите как надо
|
|||
4
DrShad
10.09.12
✎
17:17
|
(3) ответ на (1) будет?
|
|||
5
salvator
10.09.12
✎
17:19
|
Выгрузить ТЧ в ТЗ, запросом присоединить к ней данные по оборотам, выгрузить-загрузить колонку полученной ТЗ в ТЧ.
|
|||
6
malev35
10.09.12
✎
17:19
|
(5) а кодом или пример где смотреть
|
|||
7
DrShad
10.09.12
✎
17:21
|
(6) а деньгами помочь сообществу или еще как?
|
|||
8
malev35
10.09.12
✎
17:21
|
(5) ТЗ=ТабЧастьДокумента.Выгрузить()
так, а дальше? |
|||
9
DrShad
10.09.12
✎
17:25
|
колонку по контрагентам выгружаешь в массив контрагентов, с договорами соответственно, пишешь такой же запрос, только
|РегистрБухгалтерии.ЕПСБУ.Обороты(&НачПериода, &КонПериода, Период, Счет В (&СписокСчетов), , (Субконто2 в (&Контрагент)) И (Субконто3 в (&Договор)) )КАК ЕПСБУОбороты"; в параметры передаешь массивы, получаешь общий результат - поиском по нему находишь нужный и пишешь в соответствующую строку а еще лучше получить уже готовый результат для загрузки в ТЧ, но это супермегасильное колдунство |
|||
10
malev35
10.09.12
✎
17:36
|
(9) спасибо за совет
не я придумал, но почему то в большинстве случаев принято сначала заполнить потом рассчитать (в том же Камине). попробую все таки поколдовать. |
|||
11
DrShad
10.09.12
✎
17:41
|
ну и пусть будет заполнить, ТЧ пихай в запрос и там рассчитывай
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |