Выборка остатков товаров, которых нет в заказе поставщику #743718


#0 by Deryni
Есть заказ поставщику. В нём есть Товар и его цвет. Нужно выбрать то, что есть в самом заказе + такой же товар, но другого цвета, который есть на остатке, но нет именно в этом заказе. Выбрать в запросе. Заказов в запросе может быть несколько.
#1 by Maniac
Обычный запрос по товару без условия по характеристике
#2 by Deryni
Не получится. Мне нужно вывести товары с цветами. Т.е. Товар - Цвет - Заказ - Остаток
#3 by Deryni
Просто дополнить то, что уже есть в заказе теми цветами, которых в заказе нет, но на остатке есть.
#4 by Maniac
ну выводи, кто мешает
#5 by Deryni
Вот я и спрашиваю, как это сделать.
#6 by Deryni
Да, я забыл сказать, что нужно группировка по заказам. Т.е. отчёт выглядит примерно так: Товар 1; цвет 1; 10; 15 Товар 1; цвет 2; 10; 0 Товар 1; цвет 3; 0; 10
#7 by Maniac
Типа такого? Активные заказы - внизу по каждому анализ, плюс наличие.
#8 by Deryni
Тут, как я понимаю показывает только то, что есть в выбранном вверху заказе. А мне нужно то, что в заказе, вне зависимости от того, есть ли оно на остатке + то, те товары, которые в заказе есть, но в самом заказе нет цветов. Например есть товар iPhone. Он может быть Белый, Черный или Красный. В заказе у меня только Чёрный, но на остатке есть и Белый и Красный. Хочу по этому заказу показать, что Чёрных заказано 10, на остатке столько то, По этому же заказу показываю Крансый и Белый, но количество заказано = 0, а остаток тот, который есть. А в другом заказе может быть наоборот. И этих заказов у меня может быть 10 и всё нужно в одном отчёте.
#9 by Maniac
цвета = характеристики. делаешь запрос по остаткам по товару - выйдут все характеристики что есть на остатках.
#10 by Deryni
У меня цвета - это цвета но это не важно. Запрос по остаткам я сделал. Но я иду от заказа, а не от остатков. Остатки - вспомогательный.
#11 by Maniac
У меня есть обработка подбора - справочник номенклатуры - где выводится вся информация что может быть нужна при работе с товарами при продаже. Там есть закладки все - остатки, заказы, резервы, все в детализациях полных. Все что нужно набрать в поиске товар и все выйдет.
#12 by Maniac
ну два запроса. По заказам а к нему левым соединением только по товару запрос по остаткам всего товара без соединения по характеристике
#13 by Maniac
вернее один запрос. заказы, и левым соединением остатки
#14 by Deryni
У меня стойкое ощущение, что ты не понимаешь, чего я хочу. Ещё раз перечитай № 8, то, что у тебя в обработке мне вообще не подходит. Я и могу сделать то, что мне нужно выполнив два запроса, один по остаткам, второй по заказам, а потом идти по заказам и добавлять нужные мне товары в цикле. Но я хочу сделать всё в одном запросе.
#15 by Maniac
Ну или по римеру можно тоже элементарно вывести остатки товара по другим характеристикам. делов на пять минут.
#16 by DexterMorgan
это че 10.3?
#17 by Maniac
еще раз. один запрос. Заказы - к нему левое соединение по остаткам с условием соединения только по номенклатуре. Без характеристики. Тогда выйдет отчет - все заказы - товары и товары которые есть на остатках но с другими характеристиками
#18 by Maniac
да пофиг че. и ут10 и ут11 все делается и у меня есть и там и там.
#19 by DexterMorgan
Ты свою обработку подбора в ут11 на базе свыше 100ГБ и 200к номенклатуры открывал?
#20 by Maniac
размер базы пофигу. открывал на 500к в автозапчастях. И странный вопрос - типовой же открывается. а мой еще быстрее типового.
#21 by Deryni
Так? ВЫБРАТЬ ИЗ         ВТЗаказы     ЛЕВОЕ СОЕДИНЕНИЕ ВТОстатки
#22 by Maniac
Там вся информация - выборка происходит при активации строки с товаром и нужной закладки. А по умолчанию все основные (первые закладки) не делают запросов. Поэтому там все быстро
#23 by DexterMorgan
чиво, чиво? Это где у тебя 100500 объединений с вложенными запросами в дин списке быстрее?
#24 by Maniac
да
#25 by Maniac
ты путаешь. разработки. подбор номенклатуры у меня запрос - легче типового. там никаких 100500 соединений нет
#26 by DexterMorgan
выборка происходит при активации строки с товаром и нужной закладки Ааа, ну тада ясно.
#27 by Deryni
не работает Выводит таблицу, где скажем для цвета белый из заказа повторяются все возможные цвета из остатков. При этом эти же цвета есть и в заказе.
#28 by Maniac
в моем подборе есть основной динамический список, где все просто. а дополнительные инфо выходят запросами при активации нужной строки и при условии активации определенной закладки. 1) имеем основной список - где все просто 2) все доп расшифровки = отдельные мини запросы при определенных действиях с интерфейсом.
#29 by Deryni
Работает только если в заказе товар встречается один раз
#30 by Deryni
А не, даже в этом случае не работает
#31 by Maniac
Все должно работать.
#32 by Deryni
Но не работает :) Проблема вот в чём. Простое левое соединение таблицы заказов и таблицы остатков только по номенклатуре даст мне результирующую таблицу, где для каждой строки из заказа будут все строки этой же номенклатуры из остатков. Так? Но мне нужны не все, а только те, которых в этом заказе вообще нет. Смотри. Предположим у меня в заказе 2 цвета Красный и Белый. На остатке есть все три: Красный, Белый, Чёрный. Что я получу на выходе простым соединением: А мне нужно так: Белый - Белый Черный - нет такого цвета в заказе
#33 by Maniac
ПО ВТЗаказы.Цвет  <> = ВТОстатки.Цвет
#34 by Maniac
ПО ВТЗаказы.Цвет  <> ВТОстатки.Цвет
#35 by Maniac
сделай запросом через ОБЪЕДЕНИТЬ но в запросе по остаткам в фильтр поставить условие не выгребать характеристики которые есть в заказе
#36 by Maniac
не не нужно. достаточно в соединение добавить чтобы не выходили остатки цветов которые есть в заказе. тоесть условие неравенства
#37 by Deryni
Пробовал я и через неравенство. Не работает. Потому, что он тогда для каждого цвета из заказа берёт всё из остатков с другим цветом. А мне опять же всё не нужно.
#38 by Maniac
Я понял что тебе нужно. ОБЪЕДИНИТЬ ВСЕ
#39 by Maniac
тогда у тебя будет ровная таблица как тебе нужно. Единственное что в запрос по остаткам нуждно будет сделать условие какие товары выгребать.
#40 by Maniac
1) запрос по заказам ОБЪЕДИНИТЬ ВСЕ 2) запрос по остаткам но в нем условие брать товары которые есть в заказах поставщикам
#41 by Maniac
тогда будет четкая таблица
#42 by Maniac
то есть не нужно будет два раза иметь переменную с цветом
#43 by Maniac
Стартмани, в самом слове звучит Старт Мани.
#44 by Maniac
опс не туда
#45 by Deryni
Вот так получилось: ГДЕ     ВТЗаказы.ЗаказПоставщику ЕСТЬ NULL
#46 by Deryni
Т.е. вначале делаем полное пересечение таблиц, получаем все возможные сочетания цветов и номенклатуры с заказами. Потом снова соединяем с заказами и всё, что взято из остатков и где соединение с заказом поставщику даёт NULL.
#47 by ЧеловекДуши
Потрудитесь пояснить теперь, как у вас ведется разделения товара по цветовой дифференциации?
#48 by ЧеловекДуши
Ужас. Делай через Временные таблицы. И ... как долго будет выполняться запрос при полном пересечении?...
#49 by Deryni
а какая разница как он ведётся? В данном случае у меня это отдельный справочник. Но можно и через характеристики. не знаю на полной записи ещё не тестировал. Но других вариантов я всё равно не нашёл.
Тэги: 1С 8
Ответить:
Комментарии доступны только авторизированным пользователям

В этой группе 1С