|
Помогите сделать запрос | ☑ | ||
---|---|---|---|---|
0
101101
19.12.23
✎
07:19
|
Необходимо выбрать всех поставщиков из поступлений товаров по номенклатуре из списка. Таким образом, чтобы каждая номенклатура была у каждого поставщика в любом из поступлений.
|
|||
1
101101
19.12.23
✎
07:21
|
Вот такой вариант сам написал, но он не правильный. Выводятся все поставщики, которые были когда либо по любой номенклатуре. А надо, чтобы для всех были.
ТабНом=этотобъект.Номенклатура.ВыгрузитьКолонку("Номенклатура"); ЗапроСЗаказов=новый запрос; ЗапросЗаказов.Текст="ВЫБРАТЬ | ЗаказПоставщикуТовары.Ссылка.Контрагент |ИЗ | Документ.ЗаказПоставщику.Товары КАК ЗаказПоставщикуТовары |ГДЕ | ЗаказПоставщикуТовары.Номенклатура В(&Номенклатура)"; ЗапросЗаказов.УстановитьПараметр("Номенклатура", табном); ИтогЗаказов= ЗапросЗаказов.Выполнить().Выгрузить(); ИтогЗаказов.Свернуть("Контрагент"); |
|||
2
Admin_Net_1C
19.12.23
✎
07:27
|
Полное соединение таблицы поставщиков и таблицы товаров
|
|||
3
101101
19.12.23
✎
07:28
|
(2)
Не могли бы это изобразить в виде кода, пока не очень понятно |
|||
4
Волшебник
19.12.23
✎
07:47
|
добавьте в запрос ВЫБРАТЬ РАЗЛИЧНЫЕ, тогда не нужно будет ИтогЗаказов.Свернуть
|
|||
5
lopus
19.12.23
✎
08:00
|
Наверное нужно соединение ТЧ Товары со списком, отбрасывать заказы, где есть null при соединение.
|
|||
6
Лирик
19.12.23
✎
08:02
|
Если я правильно понял, то что то вроде этого.
"ВЫБРАТЬ | КОЛИЧЕСТВО(РАЗЛИЧНЫЕ Номенклатура.Ссылка) КАК КоличествоНоменклатуры |ПОМЕСТИТЬ ВсяНоменклатура |ИЗ | Справочник.Номенклатура КАК Номенклатура |ГДЕ | Номенклатура.Ссылка В(&МассивНоменклатуры) |; | |//////////////////////////////////////////////////////////////////////////////// |ВЫБРАТЬ | ЗаказПоставщикуТовары.Ссылка.Контрагент, | КОЛИЧЕСТВО(РАЗЛИЧНЫЕ ЗаказПоставщикуТовары.Номенклатура) КАК КоличествоНоменклатуры |ПОМЕСТИТЬ КонтрагентыСНоменклатурой |ИЗ | Документ.ЗаказПоставщику.Товары КАК ЗаказПоставщикуТовары |ГДЕ | ЗаказПоставщикуТовары.Номенклатура В(&МассивНоменклатуры) | |СГРУППИРОВАТЬ ПО | ЗаказПоставщикуТовары.Ссылка.Контрагент |; | |//////////////////////////////////////////////////////////////////////////////// |ВЫБРАТЬ | КонтрагентыСНоменклатурой.Контрагент |ИЗ | КонтрагентыСНоменклатурой КАК КонтрагентыСНоменклатурой | ПОЛНОЕ СОЕДИНЕНИЕ ВсяНоменклатура КАК ВсяНоменклатура | ПО (ИСТИНА) |ГДЕ | ВсяНоменклатура.КоличествоНоменклатуры = КонтрагентыСНоменклатурой.КоличествоНоменклатуры" |
|||
7
Ногаминебить
19.12.23
✎
09:05
|
В условии стоит, что в любом поступлении от этого поставщика должна быть вся указанная номенклатура. Так что наверное берем вообще все, но потом группируем определяя минимальное количество совпавшей и уже вот это потом соединяем.
|
|||
8
mikecool
19.12.23
✎
09:13
|
(1) ". Выводятся все поставщики, которые были когда либо по любой номенклатуре. " вы врете, у вас есть условие на вхождение в список номенклатуры
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |