База знаний Одина — Одинэсника › Форумы › ODIN — Форум по 1С Предприятию › Как выбрать оплаты по контрагентам в УТ 11.5 за период? › Ответ в теме: Как выбрать оплаты по контрагентам в УТ 11.5 за период?
Вот пример текста запроса для конфигурации «Управление торговлей» 11.5, который выбирает оплаты (платежные документы) по контрагентам за заданный период. В УТ 11.5 оплаты обычно отражаются в документах «Платежное поручение входящее» (ППВ) или «Поступление на расчетный счет» (ПРС), в зависимости от настроек и используемых документов.
Пример запроса для выборки оплат по контрагентам из документа «Платежное поручение входящее» за период:
|
1 2 3 4 5 6 7 8 9 10 |
ВЫБРАТЬ | ППВ.Контрагент КАК Контрагент, | ППВ.ДоговорКонтрагента КАК ДоговорКонтрагента, | ППВ.Дата КАК ДатаОплаты, | ППВ.СуммаДокумента КАК СуммаОплаты, | ППВ.Номер КАК НомерДокумента |ИЗ | Документ.ПлатежноеПоручениеВходящее КАК ППВ |ГДЕ | ППВ.Дата МЕЖДУ &НачалоПериода И &КонецПериода |
Пояснения:
— &НачалоПериода и &КонецПериода — параметры запроса, задающие период выборки.
— Контрагент и ДоговорКонтрагента — для группировки и фильтрации.
— СуммаДокумента — сумма оплаты.
— Можно добавить дополнительные условия, например, по конкретному контрагенту.
Если в вашей базе оплаты отражаются в других документах (например, «Поступление на расчетный счет»), то запрос будет аналогичным, только меняется источник:
|
1 2 3 4 5 6 7 8 9 10 |
ВЫБРАТЬ | ПРС.Контрагент КАК Контрагент, | ПРС.ДоговорКонтрагента КАК ДоговорКонтрагента, | ПРС.Дата КАК ДатаОплаты, | ПРС.СуммаДокумента КАК СуммаОплаты, | ПРС.Номер КАК НомерДокумента |ИЗ | Документ.ПоступлениеНаРасчетныйСчет КАК ПРС |ГДЕ | ПРС.Дата МЕЖДУ &НачалоПериода И &КонецПериода |
Если нужно объединить оплаты из нескольких документов, можно использовать объединение запросов (UNION ALL):
|
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 |
ВЫБРАТЬ | ППВ.Контрагент КАК Контрагент, | ППВ.ДоговорКонтрагента КАК ДоговорКонтрагента, | ППВ.Дата КАК ДатаОплаты, | ППВ.СуммаДокумента КАК СуммаОплаты, | ППВ.Номер КАК НомерДокумента, | "Платежное поручение входящее" КАК ВидДокумента |ИЗ | Документ.ПлатежноеПоручениеВходящее КАК ППВ |ГДЕ | ППВ.Дата МЕЖДУ &НачалоПериода И &КонецПериода | |ОБЪЕДИНИТЬ ВСЕ | |ВЫБРАТЬ | ПРС.Контрагент КАК Контрагент, | ПРС.ДоговорКонтрагента КАК ДоговорКонтрагента, | ПРС.Дата КАК ДатаОплаты, | ПРС.СуммаДокумента КАК СуммаОплаты, | ПРС.Номер КАК НомерДокумента, | "Поступление на расчетный счет" КАК ВидДокумента |ИЗ | Документ.ПоступлениеНаРасчетныйСчет КАК ПРС |ГДЕ | ПРС.Дата МЕЖДУ &НачалоПериода И &КонецПериода |
Параметры запроса нужно передавать из кода:
|
1 2 3 4 5 |
Запрос = Новый Запрос; Запрос.Текст = ТекстЗапроса; // текст выше Запрос.УстановитьПараметр("НачалоПериода", НачалоПериода); Запрос.УстановитьПараметр("КонецПериода", КонецПериода); Запрос.Выполнить(); |
Если нужны оплаты с детализацией по табличной части «РасшифровкаПлатежа», то запрос усложняется, нужно делать выборку из табличной части документа.
—
Если нужна помощь с конкретным вариантом документа или детализацией — уточните, я помогу составить точный запрос.