Задвоения при соединении запроса с временными таблицами

1. Lllypuk 14.04.21 21:02 Сейчас в теме
Всем привет! Есть запрос, к табличной части Заказ поставщику, тащиться таб.часть Заказа клиента и Таб.часть Коммерческого предложения. Заказ поставщику без проблем выводит, но как только добавляю реквизиты из Заказа клиента то начинает двоиться и если добавляю реквизиты из Коммерческого предложения то двоиться всё еще раз. Подскажите в чем проблема, связь делал ЛЕВЫМ соединением, потом сделал ВНУТРЕННИМ но ничего не поменялось, так же двоит. За ранее спасибо за ответы!!!
ВЫБРАТЬ РАЗЛИЧНЫЕ
	ЗаказПоставщикуТовары.Ссылка КАК ДокументЗаказПоставщику,
	ЗаказПоставщикуТовары.НомерСтроки КАК НомерСтроки,
	ЗаказПоставщикуТовары.НоменклатураПартнера КАК НоменклатураПартнера,
	ЗаказПоставщикуТовары.Номенклатура КАК Номенклатура,
	ЗаказПоставщикуТовары.Характеристика КАК Характеристика,
	ЗаказПоставщикуТовары.Упаковка КАК Упаковка,
	ЗаказПоставщикуТовары.КоличествоУпаковок КАК КоличествоУпаковок,
	ЗаказПоставщикуТовары.Количество КАК Количество,
	ЗаказПоставщикуТовары.ДатаПоступления КАК ДатаПоступления,
	ЗаказПоставщикуТовары.ВидЦеныПоставщика КАК ВидЦеныПоставщика,
	ЗаказПоставщикуТовары.Цена КАК Цена,
	ЗаказПоставщикуТовары.Сумма КАК Сумма,
	ЗаказПоставщикуТовары.ПроцентРучнойСкидки КАК ПроцентРучнойСкидки,
	ЗаказПоставщикуТовары.СуммаРучнойСкидки КАК СуммаРучнойСкидки,
	ЗаказПоставщикуТовары.СтавкаНДС КАК СтавкаНДС,
	ЗаказПоставщикуТовары.СуммаНДС КАК СуммаНДС,
	ЗаказПоставщикуТовары.СуммаСНДС КАК СуммаСНДС,
	ЗаказПоставщикуТовары.КодСтроки КАК КодСтроки,
	ЗаказПоставщикуТовары.Отменено КАК Отменено,
	ЗаказПоставщикуТовары.СтатьяРасходов КАК СтатьяРасходов,
	ЗаказПоставщикуТовары.АналитикаРасходов КАК АналитикаРасходов,
	ЗаказПоставщикуТовары.ПричинаОтмены КАК ПричинаОтмены,
	ЗаказПоставщикуТовары.Склад КАК Склад,
	ЗаказПоставщикуТовары.Назначение КАК Назначение,
	ЗаказПоставщикуТовары.Подразделение КАК Подразделение,
	ЗаказПоставщикуТовары.СписатьНаРасходы КАК СписатьНаРасходы,
	ЗаказПоставщикуТовары.ТоварыВПути КАК ТоварыВПути,
	ЗаказПоставщикуТовары.ПланируемаяДатаПоставки КАК ПланируемаяДатаПоставки
ПОМЕСТИТЬ ДокументЗП
ИЗ
	Документ.ЗаказПоставщику.Товары КАК ЗаказПоставщикуТовары
;

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

////////////////////////////////////////////////////////////­////////////////////
ВЫБРАТЬ РАЗЛИЧНЫЕ
	КоммерческоеПредложениеКлиентуТовары.Ссылка КАК ДокументКоммерческоеПредложениеКлиенту,
	КоммерческоеПредложениеКлиентуТовары.Номенклатура КАК НоменклатураКоммерческоеПредложениеКлиенту,
	КоммерческоеПредложениеКлиентуТовары.кнлНаценка КАК НаценкаИзКоммерческогоПредложения,
	ДокументЗК.ДокументЗаказКлиента КАК ДокументЗаказКлиента,
	ДокументЗК.ЦенаЗаказКлиента КАК ЦенаЗаказКлиента,
	ДокументЗК.СуммаЗаказКлиента КАК СуммаЗаказКлиента,
	ДокументЗК.НоменклатураЗаказКлиента КАК НоменклатураЗаказКлиента,
	ДокументЗП.ДокументЗаказПоставщику КАК ДокументЗаказПоставщику,
	ДокументЗП.Номенклатура КАК НоменклатураЗаказПоставщику,
	ДокументЗП.Цена КАК ЦенаЗаказПоставщику,
	ДокументЗП.Сумма КАК СуммаЗаказПоставщику
ИЗ
	ДокументЗП КАК ДокументЗП
		ВНУТРЕННЕЕ СОЕДИНЕНИЕ ДокументЗК КАК ДокументЗК
		ПО ДокументЗП.Номенклатура = ДокументЗК.НоменклатураЗаказКлиента
		ВНУТРЕННЕЕ СОЕДИНЕНИЕ Документ.КоммерческоеПредложениеКлиенту.Товары КАК КоммерческоеПредложениеКлиентуТовары
		ПО ДокументЗП.Номенклатура = КоммерческоеПредложениеКлиентуТовары.Номенклатура
Показать
По теме из базы знаний
Найденные решения
6. uno-c 235 15.04.21 09:50 Сейчас в теме
(3)Делайте в один прием. Соедините всех левым, отправным пусть например будет заказ клиента

Выбрать *
из
Документ.ЗаказКлиента.Товары КАК ЗаказКлиентаТовары
левое соединение Документ.КоммерческоеПредложениеКлиенту.Товары КАК КоммерческоеПредложениеКлиентуТовары
по ЗаказКлиентаТовары.Ссылка.ТутКакоетоПолеСсылкиНаКоммерческоеПредложениемЕслиЕстьТакоеН­апримерОснование = КоммерческоеПредложениеКлиентуТовары.Ссылка
и ЗаказКлиентаТовары.Номенклатура = КоммерческоеПредложениеКлиентуТовары.Номенклатура
левое соединение Документ.ЗаказПоставщику.Товары КАК ЗаказПоставщикуТовары
по ЗаказПоставщикуТовары.Ссылка.ТутКакоетоПолеСсылкиНаЗаказКлиентаЕслиЕстьТакое = ЗаказКлиентаТовары.Ссылка
и ЗаказПоставщикуТовары.Номенклатура = ЗаказКлиентаТовары.Номенклатура

Если нет полей связи между разными документами, когда один документ ссылается на другой - то шансы, что получится что-то толковое, низки - тогда нужно думать как косвенным образом обнаружить эту связь (по контрагенту, по времени и т.д.)
Остальные ответы
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
2. uno-c 235 14.04.21 21:38 Сейчас в теме
По-моему, Вы не понимаете смысла того, что пишете в Ваших запросах. Зачем создавали "ПОМЕСТИТЬ ДокументЗП" ? Это копирование существующей таблицы в базе данных, т.е. она уже есть, зачем создавать ее временную копию?. В "ПОМЕСТИТЬ ДокументЗК" сделали произведение двух таблиц - когда каждая строка одной таблицы ставится рядом с каждой строкой другой таблицы - оно Вам надо?
SlavaKron; +1 Ответить
3. Lllypuk 14.04.21 22:07 Сейчас в теме
(2) То есть первую таблицу "Документ ЗП" можно вытащить не помещая во временную и потом без проблем использовать ? Я просто делал по образцу, в запросах не очень еще разбираюсь.
По "Документ ЗК", конечно не надо, подскажите как правильно сделать пожалуйста, не совсем понимаю(
6. uno-c 235 15.04.21 09:50 Сейчас в теме
(3)Делайте в один прием. Соедините всех левым, отправным пусть например будет заказ клиента

Выбрать *
из
Документ.ЗаказКлиента.Товары КАК ЗаказКлиентаТовары
левое соединение Документ.КоммерческоеПредложениеКлиенту.Товары КАК КоммерческоеПредложениеКлиентуТовары
по ЗаказКлиентаТовары.Ссылка.ТутКакоетоПолеСсылкиНаКоммерческоеПредложениемЕслиЕстьТакоеН­апримерОснование = КоммерческоеПредложениеКлиентуТовары.Ссылка
и ЗаказКлиентаТовары.Номенклатура = КоммерческоеПредложениеКлиентуТовары.Номенклатура
левое соединение Документ.ЗаказПоставщику.Товары КАК ЗаказПоставщикуТовары
по ЗаказПоставщикуТовары.Ссылка.ТутКакоетоПолеСсылкиНаЗаказКлиентаЕслиЕстьТакое = ЗаказКлиентаТовары.Ссылка
и ЗаказПоставщикуТовары.Номенклатура = ЗаказКлиентаТовары.Номенклатура

Если нет полей связи между разными документами, когда один документ ссылается на другой - то шансы, что получится что-то толковое, низки - тогда нужно думать как косвенным образом обнаружить эту связь (по контрагенту, по времени и т.д.)
7. UtSpar 134 15.04.21 09:51 Сейчас в теме
(6) тяжело читается такой запрос который просто текстом без отступов)
8. uno-c 235 15.04.21 09:56 Сейчас в теме
(7) писал от руки, вышло, что некому форматировать и регистр менять для ключевых слов )
4. Svetlanka_sv 45 15.04.21 09:29 Сейчас в теме
Вам просто нужно добавить реквизиты из заказа? Что-то типа такого?

ВЫБРАТЬ РАЗЛИЧНЫЕ
ЗаказПоставщикуТовары.Ссылка КАК ДокументЗаказПоставщику,
ЗаказПоставщикуТовары.НомерСтроки КАК НомерСтроки,
ЗаказПоставщикуТовары.НоменклатураПартнера КАК НоменклатураПартнера,
ЗаказПоставщикуТовары.Номенклатура КАК Номенклатура,
ЗаказПоставщикуТовары.Характеристика КАК Характеристика,
ЗаказПоставщикуТовары.Упаковка КАК Упаковка,
ЗаказПоставщикуТовары.КоличествоУпаковок КАК КоличествоУпаковок,
ЗаказПоставщикуТовары.Количество КАК Количество,
ЗаказПоставщикуТовары.ДатаПоступления КАК ДатаПоступления,
ЗаказПоставщикуТовары.ВидЦеныПоставщика КАК ВидЦеныПоставщика,
ЗаказПоставщикуТовары.Цена КАК Цена,
ЗаказПоставщикуТовары.Сумма КАК Сумма,
ЗаказПоставщикуТовары.ПроцентРучнойСкидки КАК ПроцентРучнойСкидки,
ЗаказПоставщикуТовары.СуммаРучнойСкидки КАК СуммаРучнойСкидки,
ЗаказПоставщикуТовары.СтавкаНДС КАК СтавкаНДС,
ЗаказПоставщикуТовары.СуммаНДС КАК СуммаНДС,
ЗаказПоставщикуТовары.СуммаСНДС КАК СуммаСНДС,
ЗаказПоставщикуТовары.КодСтроки КАК КодСтроки,
ЗаказПоставщикуТовары.Отменено КАК Отменено,
ЗаказПоставщикуТовары.СтатьяРасходов КАК СтатьяРасходов,
ЗаказПоставщикуТовары.АналитикаРасходов КАК АналитикаРасходов,
ЗаказПоставщикуТовары.ПричинаОтмены КАК ПричинаОтмены,
ЗаказПоставщикуТовары.Склад КАК Склад,
ЗаказПоставщикуТовары.Назначение КАК Назначение,
ЗаказПоставщикуТовары.Подразделение КАК Подразделение,
ЗаказПоставщикуТовары.СписатьНаРасходы КАК СписатьНаРасходы,
ЗаказПоставщикуТовары.ТоварыВПути КАК ТоварыВПути,
ЗаказПоставщикуТовары.ПланируемаяДатаПоставки КАК ПланируемаяДатаПоставки,
ЗаказКлиентаТовары.Ссылка КАК ДокументЗаказКлиента,
ЗаказКлиентаТовары.Цена КАК ЦенаЗаказКлиента,
ЗаказКлиентаТовары.Сумма КАК СуммаЗаказКлиента,
ЗаказКлиентаТовары.Номенклатура КАК НоменклатураЗаказКлиента

ПОМЕСТИТЬ ДокументЗП
ИЗ
Документ.ЗаказПоставщику.Товары КАК ЗаказПоставщикуТовары
;

////////////////////////////////////////////////////////////­­////////////////////
ВЫБРАТЬ РАЗЛИЧНЫЕ
КоммерческоеПредложениеКлиентуТовары.Ссылка КАК ДокументКоммерческоеПредложениеКлиенту,
КоммерческоеПредложениеКлиентуТовары.Номенклатура КАК НоменклатураКоммерческоеПредложениеКлиенту,
КоммерческоеПредложениеКлиентуТовары.кнлНаценка КАК НаценкаИзКоммерческогоПредложения,
ДокументЗП.ДокументЗаказКлиента КАК ДокументЗаказКлиента,
ДокументЗП.ЦенаЗаказКлиента КАК ЦенаЗаказКлиента,
ДокументЗП.СуммаЗаказКлиента КАК СуммаЗаказКлиента,
ДокументЗП.НоменклатураЗаказКлиента КАК НоменклатураЗаказКлиента,
ДокументЗП.ДокументЗаказПоставщику КАК ДокументЗаказПоставщику,
ДокументЗП.Номенклатура КАК НоменклатураЗаказПоставщику,
ДокументЗП.Цена КАК ЦенаЗаказПоставщику,
ДокументЗП.Сумма КАК СуммаЗаказПоставщику
ИЗ
ДокументЗП КАК ДокументЗП
ЛЕВОЕ СОЕДИНЕНИЕ Документ.КоммерческоеПредложениеКлиенту.Товары КАК КоммерческоеПредложениеКлиентуТовары
ПО ДокументЗП.Номенклатура = КоммерческоеПредложениеКлиентуТовары.Номенклатура
5. SlavaKron 15.04.21 09:36 Сейчас в теме
Во втором запросе пакета таблицы ДокументЗП и ЗаказКлиентаТовары вообще никак не соединены, произойдёт перемножение строк – для каждой записи из первой таблицы будет связь с каждой записью второй таблицы.
Lllypuk; BomjBandit; +2 Ответить
Оставьте свое сообщение

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