Выбор реализации на период, а не ее корректировки.

1. iCortezik 8 04.10.18 07:47 Сейчас в теме
Есть запрос, Различия цен базовой и реальной в реализации товаров (Стоимость - Цена реальная, Цена - цена базовая. ). Отбор идёт по периоду. Если в этот период попадает корректировка, а сама реализация нет , то не выдаёт колличество и реальную цену (т.к. в корректировках изменяется цена, а количество приравнивается к 0. Или наоборот.) Нужна проверка , если в этом периоде реализация по корректировке, или нет. Если нет то не выводить, если да, то оно само вроде сожмется.

ВЫБРАТЬ
	ПродажиОбороты.Период КАК Дата,
	ПродажиОбороты.Контрагент КАК Контрагент,
	ПродажиОбороты.Номенклатура КАК Номенклатура,
	СУММА(ПродажиОбороты.КоличествоОборот) КАК Количество,
	СУММА(ПродажиОбороты.СтоимостьОборот) КАК Стоимость,
	ПродажиОбороты.ДокументПродажи,
	ПродажиОбороты.ЗаказПокупателя,
	ПродажиОбороты.ДоговорКонтрагента.ТипЦен
ПОМЕСТИТЬ втБезЦены
ИЗ
	РегистрНакопления.Продажи.Обороты(&НачалоПериода, &КонецПериода, День, ) КАК ПродажиОбороты
		
СГРУППИРОВАТЬ ПО
	ПродажиОбороты.Период,
	ПродажиОбороты.Контрагент,
	ПродажиОбороты.Номенклатура,
	ПродажиОбороты.ДокументПродажи,
	ПродажиОбороты.ЗаказПокупателя,
	ПродажиОбороты.ДоговорКонтрагента.ТипЦен

ИНДЕКСИРОВАТЬ ПО
	Номенклатура,
	Дата,
	Контрагент
;

////////////////////////////////////////////////////////////­////////////////////
ВЫБРАТЬ
	втБезЦены.Дата КАК Дата,
	втБезЦены.Контрагент КАК Контрагент,
	втБезЦены.Номенклатура КАК Номенклатура,
	втБезЦены.Количество,
	втБезЦены.Стоимость,
	МАКСИМУМ(ЦеныНоменклатуры.Период) КАК Период,
	втБезЦены.ДокументПродажи,
	втБезЦены.ЗаказПокупателя,
	втБезЦены.ДоговорКонтрагентаТипЦен
ПОМЕСТИТЬ втМаксПериод
ИЗ
	втБезЦены КАК втБезЦены
		ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.ЦеныНоменклатуры КАК ЦеныНоменклатуры
		ПО втБезЦены.Номенклатура = ЦеныНоменклатуры.Номенклатура
			И втБезЦены.Дата >= ЦеныНоменклатуры.Период
			И втБезЦены.ДоговорКонтрагентаТипЦен = ЦеныНоменклатуры.ТипЦен

СГРУППИРОВАТЬ ПО
	втБезЦены.Дата,
	втБезЦены.Контрагент,
	втБезЦены.Номенклатура,
	втБезЦены.Количество,
	втБезЦены.Стоимость,
	втБезЦены.ДокументПродажи,
	втБезЦены.ЗаказПокупателя,
	втБезЦены.ДоговорКонтрагентаТипЦен

ИНДЕКСИРОВАТЬ ПО
	Номенклатура,
	Дата,
	Контрагент,
	Период
;

////////////////////////////////////////////////////////////­////////////////////
ВЫБРАТЬ
	втМаксПериод.ЗаказПокупателя,
	втМаксПериод.ДокументПродажи КАК ДокументПродажи,
	втМаксПериод.Контрагент,
	втМаксПериод.Номенклатура,
	втМаксПериод.Количество,
	втМаксПериод.Стоимость,
	ЦеныНоменклатуры.Цена,
	ЦеныНоменклатуры.ТипЦен
ИЗ
	втМаксПериод КАК втМаксПериод
		ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.ЦеныНоменклатуры КАК ЦеныНоменклатуры
		ПО втМаксПериод.Номенклатура = ЦеныНоменклатуры.Номенклатура
			И втМаксПериод.Период = ЦеныНоменклатуры.Период
			И втМаксПериод.ДоговорКонтрагентаТипЦен = ЦеныНоменклатуры.ТипЦен

УПОРЯДОЧИТЬ ПО
	ДокументПродажи
Показать
По теме из базы знаний
Найденные решения
8. iCortezik 8 04.10.18 11:40 Сейчас в теме
Вопрос можно закрыть, нужно было указать

ГДЕ ...Количество <> 0
Остальные ответы
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
2. catena 110 04.10.18 07:55 Сейчас в теме
Например, в первом запросе:

Где естьNULL(РеализацияТоваровУслугТовары.Ссылка.Дата,&НачалоПериода) между &НачалоПериода и &КонецПериода
3. catena 110 04.10.18 07:58 Сейчас в теме
А зачем соединение с табличными частями, если связь исключительно по шапке?
4. iCortezik 8 04.10.18 07:59 Сейчас в теме
5. catena 110 04.10.18 08:26 Сейчас в теме
(4)Соединения с документами в первом запросе вы сами придумали. Вот и не понятно, зачем два раза соединять с табличными частями увеличивая объем выборки в бешеное количество раз, при том, что все параметры связи находятся в шапке документов?
6. catena 110 04.10.18 08:27 Сейчас в теме
А редактировать сообщение, на которое уже был дан ответ - плохой тон.
7. iCortezik 8 04.10.18 08:40 Сейчас в теме
(6) Я его через 3 минуты после отправки редактировал, не тот код вставил. Прошу прощения
8. iCortezik 8 04.10.18 11:40 Сейчас в теме
Вопрос можно закрыть, нужно было указать

ГДЕ ...Количество <> 0
Оставьте свое сообщение

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