|
Отбор связанных документов по дате СКД Ø (Новиков 09.10.2023 15:07) |
☑ | ||
---|---|---|---|---|
0
bfss-732
09.10.23
✎
10:27
|
Всем привет!
Есть Заказ Клиента и Реализация, они связанны. Есть условие для отчета: В случае, если последняя отгрузка не попадает в диапазон заданных дат, то в отчет этот заказ не выводится. Как это реализовать? Пример: Заказ Клиента №1 05.04.2023 Реализация №1 09.04.2023 Реализация №2 20.04.2023 Реализация №3 11.05.2023 Если в отчете выбран апрель 2023, то заказ в отчет не должен попасть. Если в отчете выбран апрель - июнь 2023, то должны попасть заказ со всеми реализациями. Если в отчете выбран июнь 2023, то заказ в отчет не должен попасть. |
|||
1
Новиков
09.10.23
✎
11:05
|
Ну а проблема то в чем?
Тебе нужен запрос, основная таблица Реализация, на нее отбор по датам. В левом соединении клеишь твои заказы. |
|||
2
Donkey_hot
09.10.23
✎
11:08
|
(0) Не видно проблемы. Собираете временную табличку: заказ (группировка), максимальная дата отгрузки. Далее связываете ее с основной выборкой и накладываете условие по макс. дате.
|
|||
3
bfss-732
09.10.23
✎
11:19
|
ВЫБРАТЬ
ЗаказКл.Ссылка КАК Заказ, РеализТУг.Ссылка КАК Реализация ИЗ Документ.РеализацияТоваровУслуг КАК РеализТУг ЛЕВОЕ СОЕДИНЕНИЕ Документ.ЗаказКлиента КАК ЗаказКл ПО (РеализТУг.ЗаказКлиента = ЗаказКл.Ссылка) ГДЕ ЗаказКл.Ссылка = &Ссылка И РеализТУг.Проведен И РеализТУг.Дата <= &ДатаКонца И РеализТУг.Дата >= &ДатаНачала СГРУППИРОВАТЬ ПО ЗаказКл.Ссылка, РеализТУг.Ссылка Все равно тянет строчки, а должно быть пусто в результате запроса |
|||
4
bfss-732
09.10.23
✎
11:20
|
(1) не так просто как кажется)
|
|||
5
Donkey_hot
09.10.23
✎
11:45
|
(3) Ну так Вы не сделали временную табличку с макс.датой, потому и тянет.
|
|||
6
bfss-732
09.10.23
✎
12:19
|
Надо было именно в запросе все колхозить. Максимальная, минимальная не прокатывает, решил по другому:
ВЫБРАТЬ ЗаказКл.Ссылка КАК Заказ, КОЛИЧЕСТВО(РАЗЛИЧНЫЕ РеализацияТУ.Ссылка) КАК КоличестоВсего ПОМЕСТИТЬ ВременнаяТаблица ИЗ Документ.РеализацияТоваровУслуг КАК РеализацияТУ ВНУТРЕННЕЕ СОЕДИНЕНИЕ Документ.ЗаказКлиента КАК ЗаказКл ПО (РеализацияТУ.ЗаказКлиента = ЗаказКл.Ссылка) ГДЕ РеализацияТУ.Проведен И ЗаказКл.Ссылка = &Ссылка СГРУППИРОВАТЬ ПО ЗаказКл.Ссылка ; //////////////////////////////////////////////////////////////////////////////// ВЫБРАТЬ ЗаказКл.Ссылка КАК Заказ, РеализТУ.Ссылка КАК Реализация, КОЛИЧЕСТВО(РАЗЛИЧНЫЕ РеализТУ.Ссылка) КАК КоличествоОтборПоДате ПОМЕСТИТЬ ВТ ИЗ Документ.РеализацияТоваровУслуг КАК РеализТУ ЛЕВОЕ СОЕДИНЕНИЕ Документ.ЗаказКлиента КАК ЗаказКл ПО РеализТУ.ЗаказКлиента = ЗаказКл.Ссылка ГДЕ ЗаказКл.Ссылка = &Ссылка И РеализТУ.Проведен И РеализТУ.Дата <= &ДатаКонца И РеализТУ.Дата >= &ДатаНачала СГРУППИРОВАТЬ ПО ЗаказКл.Ссылка, РеализТУ.Ссылка ; //////////////////////////////////////////////////////////////////////////////// ВЫБРАТЬ ВТ.Заказ КАК Заказ, СУММА(ВТ.КоличествоОтборПоДате) КАК КоличествоОтборПоДате ПОМЕСТИТЬ ВременнаяТаблица1 ИЗ ВТ КАК ВТ СГРУППИРОВАТЬ ПО ВТ.Заказ ; //////////////////////////////////////////////////////////////////////////////// ВЫБРАТЬ ВЫБОР КОГДА ВременнаяТаблица.КоличестоВсего <= ВременнаяТаблица1.КоличествоОтборПоДате ТОГДА ВременнаяТаблица1.Заказ КОНЕЦ КАК Заказ ИЗ ВременнаяТаблица КАК ВременнаяТаблица, ВременнаяТаблица1 КАК ВременнаяТаблица1 |
|||
7
bfss-732
09.10.23
✎
12:20
|
Вопрос закрыт
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |