![]() |
![]() |
|
Дебиторка с отсрочкой по договорам одним запросом. | ☑ | ||
---|---|---|---|---|
0
Dimulka
18.10.13
✎
14:27
|
Учет ведется "по договорам в целом".
Дебиторку получилось сделать всеми нелюбимым запросом в цикле. Как все впихнуть в один запрос ума не приложу (для каждого договора приходится менять начало периода соответствено отсрочке). Реально ли? Запрос = Новый Запрос; Запрос.Текст = "ВЫБРАТЬ | ДоговорыКонтрагентов.Владелец КАК Контрагент, | ДоговорыКонтрагентов.Ссылка КАК Договор, | ДоговорыКонтрагентов.ДопустимоеЧислоДнейЗадолженности КАК Отсрочка |ИЗ | Справочник.ДоговорыКонтрагентов КАК ДоговорыКонтрагентов |ГДЕ | ДоговорыКонтрагентов.ВидДоговора = ЗНАЧЕНИЕ(Перечисление.ВидыДоговоровКонтрагентов.СПокупателем) | И ДоговорыКонтрагентов.Владелец В ИЕРАРХИИ(&Владелец) | |СГРУППИРОВАТЬ ПО | ДоговорыКонтрагентов.Владелец, | ДоговорыКонтрагентов.Ссылка, | ДоговорыКонтрагентов.ДопустимоеЧислоДнейЗадолженности | |УПОРЯДОЧИТЬ ПО | ДоговорыКонтрагентов.Владелец.Наименование"; Запрос.УстановитьПараметр("Владелец",Контрагент); Результат = Запрос.Выполнить(); Выборка = Результат.Выбрать(); Пока Выборка.Следующий() Цикл НП=Период-86400*Выборка.Отсрочка; КП=Период; ЗапросДолг=Новый Запрос; ЗапросДолг.Текст="ВЫБРАТЬ | ВзаиморасчетыСКонтрагентамиПоДокументамРасчетовОстаткиИОбороты.Контрагент, | ВзаиморасчетыСКонтрагентамиПоДокументамРасчетовОстаткиИОбороты.ДоговорКонтрагента КАК Договор, | СУММА(ВзаиморасчетыСКонтрагентамиПоДокументамРасчетовОстаткиИОбороты.СуммаВзаиморасчетовНачальныйОстаток - ВзаиморасчетыСКонтрагентамиПоДокументамРасчетовОстаткиИОбороты.СуммаВзаиморасчетовРасход) КАК Долг, | ВзаиморасчетыСКонтрагентамиПоДокументамРасчетовОстаткиИОбороты.ДоговорКонтрагента.ДопустимоеЧислоДнейЗадолженности КАК Отсрочка |ИЗ | РегистрНакопления.ВзаиморасчетыСКонтрагентамиПоДокументамРасчетов.ОстаткиИОбороты(&НП, &КП, , , ДоговорКонтрагента = &Договор) КАК ВзаиморасчетыСКонтрагентамиПоДокументамРасчетовОстаткиИОбороты | |СГРУППИРОВАТЬ ПО | ВзаиморасчетыСКонтрагентамиПоДокументамРасчетовОстаткиИОбороты.ДоговорКонтрагента, | ВзаиморасчетыСКонтрагентамиПоДокументамРасчетовОстаткиИОбороты.Контрагент, | ВзаиморасчетыСКонтрагентамиПоДокументамРасчетовОстаткиИОбороты.ДоговорКонтрагента.ДопустимоеЧислоДнейЗадолженности"; ЗапросДолг.УстановитьПараметр("НП",НП); ЗапросДолг.УстановитьПараметр("КП",КП); ЗапросДолг.УстановитьПараметр("Договор",Выборка.Договор); КонецЦикла; |
|||
1
neckto
18.10.13
✎
14:36
|
Получи сальдо ДЗ в разрезе дат возникновения задолженности, к каждой дате прибавь отсрочку.
|
|||
2
Dimulka
18.10.13
✎
14:48
|
(1), хитро, но надо поигратся
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |