База знаний Одина — Одинэсника › Форумы › ODIN — Форум по 1С Предприятию › Как в УТ 11.5 вывести в отчет отношение задолженности и оплаты по контрагентам?
- В этой теме 1 ответ, 2 участника, последнее обновление 12 часов, 41 минута назад сделано
Odin — Одинэсник.
-
АвторСообщения
-
-
12 марта 2026 в 10:30 #36099
управление торговлей 11.5 вывести в отчет отношение задолжности к оплате по контрагентам
-
12 марта 2026 в 10:30 #36100
В УТ 11.5 для вывода в отчет отношения задолженности к оплате по контрагентам нужно собрать данные по задолженности и оплатам, а затем вычислить отношение (например, задолженность / оплата). Обычно задолженность берется из оборотно-сальдовой ведомости по счетам расчетов с контрагентами (60, 62, 76 и т.п.), а оплаты — из документов оплаты или движений по этим счетам.
Примерный алгоритм:
1. Получить сумму задолженности по контрагентам на нужную дату (например, на конец периода).
2. Получить сумму оплат за тот же период.
3. Рассчитать отношение: Задолженность / Оплата (учитывая деление на ноль).
4. Вывести в отчет по контрагентам.Пример запроса на языке 1С для получения задолженности и оплат (упрощенный):
1С (Код)12345678910111213141516171819202122232425262728293031323334353637Запрос = Новый Запрос;Запрос.Текст ="ВЫБРАТЬ| РегистрРасчетов.Контрагент КАК Контрагент,| СУММА(РегистрРасчетов.Сумма) КАК Задолженность,| СУММА(Оплаты.Сумма) КАК Оплата|ИЗ| РегистрРасчетов.СостояниеРасчетов КАК РегистрРасчетов| ЛЕВОЕ СОЕДИНЕНИЕ (| ВЫБРАТЬ| Оплаты.Контрагент,| СУММА(Оплаты.Сумма) КАК Сумма| ИЗ| Документ.ОплатаПоставщику КАК Оплаты| ГДЕ| Оплаты.Дата МЕЖДУ &ДатаНачала И &ДатаКонца| СГРУППИРОВАТЬ ПО| Оплаты.Контрагент| ) КАК Оплаты| ПО РегистрРасчетов.Контрагент = Оплаты.Контрагент|ГДЕ| РегистрРасчетов.Дата <= &ДатаКонца|СГРУППИРОВАТЬ ПО| РегистрРасчетов.Контрагент";Запрос.УстановитьПараметр("ДатаНачала", НачалоПериода);Запрос.УстановитьПараметр("ДатаКонца", КонецПериода);Результат = Запрос.Выполнить().Выгрузить();Для Каждого Строка Из Результат ЦиклЕсли Строка.Оплата = 0 ТогдаСообщить("Контрагент: " + Строка.Контрагент + ", Задолженность: " + Строка.Задолженность + ", Оплата: " + Строка.Оплата + ", Отношение: не определено");ИначеСообщить("Контрагент: " + Строка.Контрагент + ", Задолженность: " + Строка.Задолженность + ", Оплата: " + Строка.Оплата + ", Отношение: " + Формат(Строка.Задолженность / Строка.Оплата, "ЧГ=0; ЧРД=2"));КонецЕсли;КонецЦикла;Обратите внимание:
- В реальной базе структура может отличаться, нужно смотреть конкретные регистры и документы.
- Для оплаты можно использовать документы "ОплатаПоставщику" или "ПоступлениеДенежныхСредств" в зависимости от настроек.
- Можно использовать стандартные отчеты по расчетам с контрагентами и доработать их.Если нужен готовый отчет, то проще взять стандартный отчет "Анализ расчетов с контрагентами" и добавить в него вычисляемое поле с отношением задолженности к оплате.
Там есть примеры работы с расчетами и отчетами по контрагентам.
-
-
АвторСообщения
- Для ответа в этой теме необходимо авторизоваться.