Запросы. Получение результатов из нескольких таблиц

1. user1207650 12.06.19 17:36 Сейчас в теме
Дело вот в чем,

Есть два д-та "ПродажаТовара" и "ПоступлениеТовара"
В них ТЧ "Товары", в которой содержится Номенклатура и ВидТовара

Реализую отчет, который будет выводить след.:
Номенклатура | Документ (Ссылка - ПродажаТовара или ПоступлениеТовара) | ВидТовара

Если ВидТовара Номенклатуры совпадает, то в отчете выводится одна строка с перечислением вышеописанных полей.
Если ВидТовара в д-тах указан разный, то выводится Номенклатура и подстроки с указанием Документа и ВидТовара, например:

Номенклатура | Документ | ВидТовара
Шапка |ПродажаТовара | аксессуар
Кепка |ПродажаТовара | аксессуар
Кепка |ПоступлениеТовара| аксессуар на лето
и т.д.

Нет идеи как реализовать.
Использовать две ВТ, в одной из сравнивать как ПродажаТовараТовары.ВидТовара = ПоступлениеТовараТовары.ВидТовара , что бы исключить дублирование одинаковых ВидовТовара при формировании отчета
и во второй ВТ сравнивать как ПродажаТовараТовары.ВидТовара <> ПоступлениеТовараТовары.ВидТовара , что бы различать что ВидТовара не совпадает и выводить несколько значений

Но это как то глупо, не думаю, что это решение данной задачи. Если есть идеи - подскажите, заранее спасибо)
По теме из базы знаний
Найденные решения
3. spacecraft 12.06.19 19:22 Сейчас в теме
(1) как вариант:
ВЫБРАТЬ
	ПоступлениеТовараТовары.Ссылка КАК Ссылка,
	ПоступлениеТовараТовары.Номенклатура КАК Номенклатура,
	ПоступлениеТовараТовары.ВидТовара КАК ВидТовара
ПОМЕСТИТЬ вт1
ИЗ
	Документ.ПоступлениеТовара.Товары КАК ПоступлениеТовараТовары
ГДЕ
	ПоступлениеТовараТовары.Ссылка = &ДокПоступления

ОБЪЕДИНИТЬ ВСЕ

ВЫБРАТЬ
	ПродажаТовараТовары.Ссылка,
	ПродажаТовараТовары.Номенклатура,
	ПродажаТовараТовары.ВидТовара
ИЗ
	Документ.ПродажаТовара.Товары КАК ПродажаТовараТовары
ГДЕ
	ПродажаТовараТовары.Ссылка = &ДокПродажи
;

////////////////////////////////////////////////////////////­////////////////////
ВЫБРАТЬ
	МАКСИМУМ(вт1.Ссылка) КАК Ссылка,
	вт1.Номенклатура КАК Номенклатура,
	вт1.ВидТовара КАК ВидТовара
ИЗ
	вт1 КАК вт1

СГРУППИРОВАТЬ ПО
	вт1.Номенклатура,
	вт1.ВидТовара
Показать
user1207650; +1 Ответить
Остальные ответы
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
3. spacecraft 12.06.19 19:22 Сейчас в теме
(1) как вариант:
ВЫБРАТЬ
	ПоступлениеТовараТовары.Ссылка КАК Ссылка,
	ПоступлениеТовараТовары.Номенклатура КАК Номенклатура,
	ПоступлениеТовараТовары.ВидТовара КАК ВидТовара
ПОМЕСТИТЬ вт1
ИЗ
	Документ.ПоступлениеТовара.Товары КАК ПоступлениеТовараТовары
ГДЕ
	ПоступлениеТовараТовары.Ссылка = &ДокПоступления

ОБЪЕДИНИТЬ ВСЕ

ВЫБРАТЬ
	ПродажаТовараТовары.Ссылка,
	ПродажаТовараТовары.Номенклатура,
	ПродажаТовараТовары.ВидТовара
ИЗ
	Документ.ПродажаТовара.Товары КАК ПродажаТовараТовары
ГДЕ
	ПродажаТовараТовары.Ссылка = &ДокПродажи
;

////////////////////////////////////////////////////////////­////////////////////
ВЫБРАТЬ
	МАКСИМУМ(вт1.Ссылка) КАК Ссылка,
	вт1.Номенклатура КАК Номенклатура,
	вт1.ВидТовара КАК ВидТовара
ИЗ
	вт1 КАК вт1

СГРУППИРОВАТЬ ПО
	вт1.Номенклатура,
	вт1.ВидТовара
Показать
user1207650; +1 Ответить
4. user1207650 12.06.19 21:00 Сейчас в теме
(3) Беда в том, что если ВидТовара у одной номенклатуры в разных документах, разная, то выводится только одно значение, а необходимо видеть оба
6. spacecraft 12.06.19 21:05 Сейчас в теме
(4) так именно так и будет, если ВидТовара разный, то будут выводится оба. Группировка делается для пары Номенклатура и ВидТовара.
Сам запрос пробовали?
Прикрепленные файлы:
7. user1207650 12.06.19 21:35 Сейчас в теме
(6) Да, все верно, сейчас попробовал.
Спасибо. Сам представлял совсем другое решение
2. SaschaL 12.06.19 18:58 Сейчас в теме
Добрый день.
Можно использовать вариант с двумя виртуальными таблицами, потом соединить их
5. user1207650 12.06.19 21:03 Сейчас в теме
(2) Можно, но если непосредственно в ВТ проверять одинаково ли ВидТовара в двух документах одной номенклатуры, то не понятно как вытащить из ВТ два значения ВидТовара, если они различны
Оставьте свое сообщение

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