Доработка обработки

1. user1004898 28 14.05.19 15:05 Сейчас в теме
Назрела мысль немого модифицировать обработку "Рабочее место менеджера" для УТ11
В обработке есть два поля.(фото)
В Левой отбираем номеклатуру.
в Правой, в третьей вкладке Заказы выводится информация относительно отобранной номенклатуры.
Если с выводом информации по заказу, количеству выбранной позиции в этом заказе, суммме все в порядке, то когда хочу приплюсовать к этому еще информацию о документах поступления, и реализации, и их кол-во выбранной позиции в данных документах, начинаются казусы.
То не выводится вообще данных по документам Поступления и Реализации (док ЗаказКлиента выводится и кол. товара по нему тоже), либо вообще ничего, даже и без колонки ЗаказКлиента.
Сам код таков:
	ВЫБРАТЬ
	ЗаказКлиента.Ссылка,
	ЗаказКлиента.СуммаДокумента,
	ЗаказКлиента.Валюта,
	ЗаказКлиентаТовары.Количество,
	ВложенныйЗапрос.Поступления,
	ВложенныйЗапрос.ПоступленияКоличество
ИЗ
	Документ.ЗаказКлиента.Товары КАК ЗаказКлиентаТовары
		ВНУТРЕННЕЕ СОЕДИНЕНИЕ Документ.ЗаказКлиента КАК ЗаказКлиента
			ВНУТРЕННЕЕ СОЕДИНЕНИЕ (ВЫБРАТЬ
				ПоступлениеТоваровУслуг.Ссылка КАК Поступления,
				ПоступлениеТоваровУслугТовары.Количество КАК ПоступленияКоличество
			ИЗ
				Документ.ПоступлениеТоваровУслуг.Товары КАК ПоступлениеТоваровУслугТовары
					ВНУТРЕННЕЕ СОЕДИНЕНИЕ Документ.ПоступлениеТоваровУслуг КАК ПоступлениеТоваровУслуг
					ПО ПоступлениеТоваровУслугТовары.Ссылка = ПоступлениеТоваровУслуг.Ссылка
			ГДЕ
				ПоступлениеТоваровУслуг.Товары.Номенклатура.Ссылка = &Номенклатура
				И ПоступлениеТоваровУслугТовары.Номенклатура.Ссылка = &Номенклатура) КАК ВложенныйЗапрос
			ПО ЗаказКлиента.Ссылка = ВложенныйЗапрос.Поступления.Ссылка
		ПО ЗаказКлиентаТовары.Ссылка = ЗаказКлиента.Ссылка
ГДЕ
	ЗаказКлиента.Товары.Номенклатура.Ссылка = &Номенклатура
	И ЗаказКлиентаТовары.Номенклатура.Ссылка = &Номенклатура
Показать


Мысль ведь правильная?
Прикрепленные файлы:
По теме из базы знаний
Ответы
Подписаться на ответы Сортировка: Древо развёрнутое
Свернуть все
2. Jen1978 19 14.05.19 15:12 Сейчас в теме
а справа таблица значений или динамический список ?
3. Jen1978 19 14.05.19 15:17 Сейчас в теме
подозреваю что это динамический список ( я бы так сделал), у динамического списка скорее всего основная таблица выбрана как документ.заказ. В этом случае невозможно дублирование ссылок заказов. А при соединении в запросе Вы получаете строки, которые дублируют результат. Как следствие Вы получаете идентичные ссылки на документ Заказ, что вызывает ошибку
7. user1004898 28 14.05.19 15:27 Сейчас в теме
(3)
да, вы правы. Динимический список
4. Jen1978 19 14.05.19 15:18 Сейчас в теме
сгруппируйте результат, должно помочь
5. Jen1978 19 14.05.19 15:20 Сейчас в теме
от колонки поступления прийдется избавиться
6. Jen1978 19 14.05.19 15:25 Сейчас в теме
ВЫБРАТЬ
ЗаказКлиентаТовары.Ссылка,
ЗаказКлиентаТовары.Ссылка.СуммаДокумента,
ЗаказКлиентаТовары.Ссылка.Валюта,
ЗаказКлиентаТовары.Количество,
//ВложенныйЗапрос.Поступления,
ВложенныйЗапрос.ПоступленияКоличество
ИЗ
Документ.ЗаказКлиента.Товары КАК ЗаказКлиентаТовары
ЛЕВОЕ СОЕДИНЕНИЕ (ВЫБРАТЬ
ПоступлениеТоваровУслугТовары.Номенклатура,
СУММА(ПоступлениеТоваровУслугТовары.Количество) КАК ПоступленияКоличество
ИЗ
Документ.ПоступлениеТоваровУслуг.Товары КАК ПоступлениеТоваровУслугТовары
ГДЕ
ПоступлениеТоваровУслугТовары.Номенклатура.Ссылка = &Номенклатура
СГРУППИРОВАТЬ ПО
ПоступлениеТоваровУслугТовары.Номенклатура)ВложенныйЗапрос

ПО ЗаказКлиентаТовары.Ссылка = ВложенныйЗапрос.Поступления.Ссылка
ГДЕ
ЗаказКлиентаТовары.Номенклатура.Ссылка = &Номенклатура
8. Jen1978 19 14.05.19 15:27 Сейчас в теме
ВЫБРАТЬ
ЗаказКлиентаТовары.Ссылка,
ЗаказКлиентаТовары.Ссылка.СуммаДокумента,
ЗаказКлиентаТовары.Ссылка.Валюта,
ЗаказКлиентаТовары.Количество,
//ВложенныйЗапрос.Поступления,
ВложенныйЗапрос.ПоступленияКоличество
ИЗ
Документ.ЗаказКлиента.Товары КАК ЗаказКлиентаТовары
ЛЕВОЕ СОЕДИНЕНИЕ (ВЫБРАТЬ
ПоступлениеТоваровУслугТовары.Ссылка.Поступления,
СУММА(ПоступлениеТоваровУслугТовары.Количество) КАК ПоступленияКоличество
ИЗ
Документ.ПоступлениеТоваровУслуг.Товары КАК ПоступлениеТоваровУслугТовары
ГДЕ
ПоступлениеТоваровУслугТовары.Номенклатура.Ссылка = &Номенклатура
СГРУППИРОВАТЬ ПО
ПоступлениеТоваровУслугТовары.Ссылка.Поступления)ВложенныйЗапрос

ПО ЗаказКлиентаТовары.Ссылка = ВложенныйЗапрос.Поступления.Ссылка
ГДЕ
ЗаказКлиентаТовары.Номенклатура.Ссылка = &Номенклатура
9. Jen1978 19 14.05.19 15:27 Сейчас в теме
немного ошибся, во втором варианте вроде правильно
10. user1004898 28 14.05.19 16:03 Сейчас в теме
там поступления связаны еще с документом заказПоставщику, может из-за того не захвачивает. Хотя нескльким часами назад реально получилось вывести таблицу, Где на 1 заказКлиента дублировались несколько Поступлений.
Увы код не сохранил, а так уже не помню точно каким боком делал...
Решил через действовать через вывод столбца Реализация
ВЫБРАТЬ
	докЗаказКлиента.Ссылка КАК Ссылка,
	докЗаказКлиента.СуммаДокумента КАК СуммаДокумента,
	ЗаказКлиентаТовары.Количество КАК Количество,
	РеализацияТоваровУслуг.Ссылка КАК Реализация
ИЗ
	Документ.ЗаказКлиента КАК докЗаказКлиента
		ВНУТРЕННЕЕ СОЕДИНЕНИЕ Документ.ЗаказКлиента.Товары КАК ЗаказКлиентаТовары
		ПО (докЗаказКлиента.Ссылка = ЗаказКлиентаТовары.Ссылка)
		ЛЕВОЕ СОЕДИНЕНИЕ Документ.РеализацияТоваровУслуг КАК РеализацияТоваровУслуг
		ПО (докЗаказКлиента.Ссылка = РеализацияТоваровУслуг.Ссылка)
ГДЕ
	ЗаказКлиентаТовары.Номенклатура.Ссылка = &Номенклатура
Показать


Всё есть кроме Реализации... муть
11. ErshKUS 2 14.05.19 16:47 Сейчас в теме
(10) а зачем в запросе дублирование информации, в Документ.ЗаказКлиента.Товары уже есть сам Заказ в ссылке, это доп нагрузка на базу, а раз это динамический список, то и частообновляемый.

а по существу вопроса, вроде динамический список не даст сделать дубли ключей, если только типа дерева попробовать.
Оставьте свое сообщение

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