![]() |
|
Как получить начальные остатки по месяцам | ☑ | ||
---|---|---|---|---|
0
pavlushov
30.06.15
✎
15:03
|
Есть регистр "Взаиморасчеты", измерение: ДокументРасчетов и ресурс: Сумма, нужно помесячно за указанный период получить нач. остаток по каждому документу расчетов.
делаю так: Запрос = Новый Запрос; Запрос.УстановитьПараметр("НачПериода", НачПериода); Запрос.УстановитьПараметр("КонПериода", КонПериода); Запрос.УстановитьПараметр("ДокументРасчетов", ДокументРасчетов); Запрос.Текст = "ВЫБРАТЬ | Д_ВзаиморасчетыСКлиентамиПоДокументамОстаткиИОбороты.Период КАК Период, | Д_ВзаиморасчетыСКлиентамиПоДокументамОстаткиИОбороты.ДокументРасчетов КАК ДокументРасчетов, | Д_ВзаиморасчетыСКлиентамиПоДокументамОстаткиИОбороты.СуммаВзаиморасчетовНачальныйОстаток КАК СуммаВзаиморасчетовНачальныйОстаток |ИЗ | РегистрНакопления.Д_ВзаиморасчетыСКлиентамиПоДокументам.ОстаткиИОбороты(&НачПериода, &КонПериода, Месяц, , ) КАК Д_ВзаиморасчетыСКлиентамиПоДокументамОстаткиИОбороты |ГДЕ | Д_ВзаиморасчетыСКлиентамиПоДокументамОстаткиИОбороты.ДокументРасчетов = &ДокументРасчетов | |УПОРЯДОЧИТЬ ПО | Период |ИТОГИ ПО | Период ПЕРИОДАМИ(МЕСЯЦ, , )"; ВыборкаПериод = Запрос.Выполнить().Выбрать(ОбходрезультатаЗапроса.ПоГруппировкам, "Период", "Все"); Пока ВыборкаПериод.Следующий() Цикл Сообщить(ВыборкаПериод.Период); Выборка = ВыборкаПериод.Выбрать(); Пока Выборка.Следующий() Цикл Сообщить(" "+ Выборка.ДокументРасчетов + " " + Выборка.СуммаВзаиморасчетовНачальныйОстаток); КонецЦикла; КонецЦикла; получаю: 01.01.2015 0:00:00 Реализация товаров и услуг УТРАД001077 от 07.11.2014 17:34:41 14 000 01.02.2015 0:00:00 01.03.2015 0:00:00 Реализация товаров и услуг УТРАД001077 от 07.11.2014 17:34:41 14 000 что не так? |
|||
1
pavlushov
30.06.15
✎
15:20
|
Извиняюсь, сам тупил:
решается так: Запрос = Новый Запрос; Запрос.УстановитьПараметр("НачПериода", НачПериода); Запрос.УстановитьПараметр("КонПериода", КонПериода); Запрос.УстановитьПараметр("ДокументРасчетов", ДокументРасчетов); Запрос.Текст = "ВЫБРАТЬ | Д_ВзаиморасчетыСКлиентамиПоДокументамОстаткиИОбороты.ДокументРасчетов КАК ДокументРасчетов, | Д_ВзаиморасчетыСКлиентамиПоДокументамОстаткиИОбороты.Период КАК Период, | Д_ВзаиморасчетыСКлиентамиПоДокументамОстаткиИОбороты.СуммаВзаиморасчетовНачальныйОстаток КАК СуммаВзаиморасчетовНачальныйОстаток |ИЗ | РегистрНакопления.Д_ВзаиморасчетыСКлиентамиПоДокументам.ОстаткиИОбороты(&НачПериода, &КонПериода, Месяц, , ) КАК Д_ВзаиморасчетыСКлиентамиПоДокументамОстаткиИОбороты |ГДЕ | Д_ВзаиморасчетыСКлиентамиПоДокументамОстаткиИОбороты.ДокументРасчетов = &ДокументРасчетов | |УПОРЯДОЧИТЬ ПО | Период |ИТОГИ | СУММА(СуммаВзаиморасчетовНачальныйОстаток) |ПО | ДокументРасчетов, | Период ПЕРИОДАМИ(МЕСЯЦ, &НачПериода, &КонПериода)"; ВыборкаДокументРасчетов = Запрос.Выполнить().Выбрать(ОбходРезультатаЗапроса.ПоГруппировкам); Пока ВыборкаДокументРасчетов.Следующий() Цикл Сообщить(ВыборкаДокументРасчетов.ДокументРасчетов); ВыборкаПериод = ВыборкаДокументРасчетов.Выбрать(ОбходрезультатаЗапроса.ПоГруппировкам, "Период", "Все"); Пока ВыборкаПериод.Следующий() Цикл Сообщить(" " + ВыборкаПериод.Период + " " + ВыборкаПериод.СуммаВзаиморасчетовНачальныйОстаток); КонецЦикла; КонецЦикла; Результат: Реализация товаров и услуг УТРАД001077 от 07.11.2014 17:34:41 01.01.2015 0:00:00 14 000 01.02.2015 0:00:00 14 000 01.03.2015 0:00:00 14 000 01.04.2015 0:00:00 0 01.05.2015 0:00:00 0 01.06.2015 0:00:00 0 01.07.2015 0:00:00 0 01.08.2015 0:00:00 0 01.09.2015 0:00:00 0 01.10.2015 0:00:00 0 01.11.2015 0:00:00 0 01.12.2015 0:00:00 0 |
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |