Запрос на просрочку в периоде

1. zoeh 31 23.09.22 06:49 Сейчас в теме
как можно сделать запрос если за выбранный период была хотя бы одна просрочка больше 3 дней.

нужно чтоб это условие выполнилось в периоде хотя бы раз
РасчетыСКлиентамиПоСрокамОстатки.ДатаПлановогоПогашения <= &ДатаПлановогоПогашения
и
ДолгОстаток
превысил значение хоть раз в периоде
?

сделать запрос не по остаткам а по остаткам и оборотам?
с группировкой день, потом свернуть ТЗ?



ВЫБРАТЬ

	|	РасчетыСКлиентамиПоСрокамОстатки.ДолгОстаток КАК ДолгОстаток,

	|	РасчетыСКлиентамиПоСрокамОстатки.АналитикаУчетаПоПартнерам.Контрагент КАК Контрагент,

	|	РасчетыСКлиентамиПоСрокамОстатки.ДатаПлановогоПогашения КАК ДатаПлановогоПогашения

	|ИЗ

	|	РегистрНакопления.РасчетыСКлиентамиПоСрокам.Остатки(&КонДата, ) КАК РасчетыСКлиентамиПоСрокамОстатки

	|ГДЕ

	|	РасчетыСКлиентамиПоСрокамОстатки.ДатаПлановогоПогашения <= &ДатаПлановогоПогашения И

	|   РасчетыСКлиентамиПоСрокамОстатки.ДолгОстаток > 500

	|СГРУППИРОВАТЬ ПО

	|	РасчетыСКлиентамиПоСрокамОстатки.АналитикаУчетаПоПартнерам.Контрагент,

	|	РасчетыСКлиентамиПоСрокамОстатки.ДолгОстаток,

	|	РасчетыСКлиентамиПоСрокамОстатки.ДатаПлановогоПогашения
Показать
По теме из базы знаний
Найденные решения
2. nomad_irk 72 23.09.22 08:29 Сейчас в теме
(1)
сделать запрос не по остаткам а по остаткам и оборотам?

В первом приближении - да

ДатаПлановогоПогашения - динамическая же должна быть, не?
Остальные ответы
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
2. nomad_irk 72 23.09.22 08:29 Сейчас в теме
(1)
сделать запрос не по остаткам а по остаткам и оборотам?

В первом приближении - да

ДатаПлановогоПогашения - динамическая же должна быть, не?
3. zoeh 31 23.09.22 13:35 Сейчас в теме
ДатаПлановогоПогашения
(2) кстати да!
4. zoeh 31 26.09.22 05:30 Сейчас в теме
Почему то в выборку попадают не только данные по условию но и
вот такие
РасчетыСКлиентамиПоСрокамОстатки.ДатаПлановогоПогашения = РасчетыСКлиентамиПоСрокамОстатки.Период

условие по периоду не отрабатывается(((
кто гуру дайте пож подсказку?


ВЫБРАТЬ 
		ВЫРАЗИТЬ(РасчетыСКлиентамиПоСрокамОстатки.Период КАК ДАТА) КАК Поле1,


		РасчетыСКлиентамиПоСрокамОстатки.ДолгКонечныйОстаток КАК ДолгКонечныйОстаток,

		РасчетыСКлиентамиПоСрокамОстатки.АналитикаУчетаПоПартнерам.Контрагент КАК Контрагент,

		РасчетыСКлиентамиПоСрокамОстатки.ДатаПлановогоПогашения КАК ДатаПлановогоПогашения,
		РасчетыСКлиентамиПоСрокамОстатки.ДатаВозникновения КАК ДатаВозникновения


	ИЗ

		РегистрНакопления.РасчетыСКлиентамиПоСрокам.ОстаткиИОбороты(&НачалоПериода, &КонецПериода, День, ДвиженияИГраницыПериода, )
		 КАК РасчетыСКлиентамиПоСрокамОстатки

	ГДЕ

		(ДОБАВИТЬКДАТЕ(РасчетыСКлиентамиПоСрокамОстатки.ДатаПлановогоПогашения,ДЕНЬ,3) > РасчетыСКлиентамиПоСрокамОстатки.Период) И

	   РасчетыСКлиентамиПоСрокамОстатки.ДолгКонечныйОстаток > 500 
	СГРУППИРОВАТЬ ПО 
	РасчетыСКлиентамиПоСрокамОстатки.Период,

		РасчетыСКлиентамиПоСрокамОстатки.АналитикаУчетаПоПартнерам.Контрагент,

		РасчетыСКлиентамиПоСрокамОстатки.ДолгКонечныйОстаток,

		РасчетыСКлиентамиПоСрокамОстатки.ДатаПлановогоПогашения,
		РасчетыСКлиентамиПоСрокамОстатки.ДатаВозникновения
Показать
5. zoeh 31 26.09.22 06:16 Сейчас в теме
Причем если пользоваться без функций добавить к дате то работает
6. zoeh 31 26.09.22 06:17 Сейчас в теме
ВЫБРАТЬ 
		ВЫРАЗИТЬ(РасчетыСКлиентамиПоСрокамОстатки.Период КАК ДАТА) КАК Поле1,


		РасчетыСКлиентамиПоСрокамОстатки.ДолгКонечныйОстаток КАК ДолгКонечныйОстаток,

		РасчетыСКлиентамиПоСрокамОстатки.АналитикаУчетаПоПартнерам.Контрагент КАК Контрагент,

		РасчетыСКлиентамиПоСрокамОстатки.ДатаПлановогоПогашения КАК ДатаПлановогоПогашения
		

	ИЗ

		РегистрНакопления.РасчетыСКлиентамиПоСрокам.ОстаткиИОбороты(&НачалоПериода, &КонецПериода, День, ДвиженияИГраницыПериода, )
		 КАК РасчетыСКлиентамиПоСрокамОстатки

	ГДЕ

		 РасчетыСКлиентамиПоСрокамОстатки.Период < РасчетыСКлиентамиПоСрокамОстатки.ДатаПлановогоПогашения И

	   РасчетыСКлиентамиПоСрокамОстатки.ДолгКонечныйОстаток > 500 
	СГРУППИРОВАТЬ ПО 
	РасчетыСКлиентамиПоСрокамОстатки.Период,

		РасчетыСКлиентамиПоСрокамОстатки.АналитикаУчетаПоПартнерам.Контрагент,

		РасчетыСКлиентамиПоСрокамОстатки.ДолгКонечныйОстаток,

		РасчетыСКлиентамиПоСрокамОстатки.ДатаПлановогоПогашения
Показать
7. zoeh 31 26.09.22 12:28 Сейчас в теме
8. nomad_irk 72 26.09.22 13:44 Сейчас в теме
(7)а если показать скрином, что получается и что (не)правильно?
9. zoeh 31 26.09.22 16:34 Сейчас в теме
(8)
ну я прям обязан буду хотя бы эсэмку в благодарность за ответ самому часто помогающему
Прикрепленные файлы:
11. RustamZz 26.09.22 16:46 Сейчас в теме
(9) Да вроде все норм: 01.08 минус 3 дня меньше 01.08? - канэшна дарагой
10. zoeh 31 26.09.22 16:35 Сейчас в теме
Дата Планового погашения = Дате Период 1
хотя я им задал условие разрыва 3х дней.
12. zoeh 31 26.09.22 16:49 Сейчас в теме
РасчетыСКлиентамиПоСрокамОстатки.Период < ДОБАВИТЬКДАТЕ(РасчетыСКлиентамиПоСрокамОстатки.ДатаПлановогоПогашения,ДЕНЬ,3)

Дата запроса 01.08
дата погашения задолженности + 3 дня должно быть строго больше РасчетыСКлиентамиПоСрокамОстатки.Период

результат:

01.08.2022 0:00:00 14 701 Премский ) 01.08.2022 0:00:00
01.08.2022 0:00:00 15 746 Форммаш) 01.08.2022 0:00:00
15. RustamZz 26.09.22 18:30 Сейчас в теме
13. zoeh 31 26.09.22 16:57 Сейчас в теме
Если убрать шурум бурум с днями то о.к. запрос начинает работать как надо
14. zoeh 31 26.09.22 17:52 Сейчас в теме
да здравстует старый добрый понятный перебор

ТЗЗаядлыхПросроченников.Колонки.Добавить(Контрагент);
Пока Выборка.Следующий() Цикл
Если Выборка.Поле1 < Выборка.ДатаПлановогоПогашения+2*86400 Тогда
Оставьте свое сообщение

Для получения уведомлений об ответах подключите телеграм бот:
Инфостарт бот