1. user1004898 4 14.05.19 15:05 Сейчас в теме

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

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


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

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

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


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

а по существу вопроса, вроде динамический список не даст сделать дубли ключей, если только типа дерева попробовать.
Оставьте свое сообщение
Новые вопросы с вознаграждением
Автор темы объявил вознаграждение за найденный ответ, его получит тот, кто первый поможет автору.

Вакансии

Руководитель отдела внедрения 1С
Новосибирск
зарплата от 60 000 руб. до 160 000 руб.
Полный день

Ведущий программист 1С
Москва
зарплата от 120 000 руб. до 150 000 руб.
Полный день

Программист 1С
Самара
зарплата от 50 000 руб. до 100 000 руб.
По совместительству


Ведущий программист 1С
Сочи
зарплата от 82 500 руб. до 99 000 руб.
Полный день