вывод в отчете номенклатуры без характеристик. #693880


#0 by Ramundo
ВЫБРАТЬ ИЗ Запрос выводит только номенклатуру, у которой есть характеристики и установлена розничная цена. Как вытащить те товары, у которых эти данные не указаны?
#1 by Eugeneer
Полное содениение
#2 by Eugeneer
Твой запрос выводит только те которые есть на остатках. Да еще условие ПО сделано черех опу.
#3 by Ramundo
А по чему соединять, если делать полное соединение?
#4 by Eugeneer
ПО ТоварыВЯчейкахОстатки.Номенклатура = ЦеныНоменклатурыСрезПоследних.Номенклатура И ТоварыВЯчейкахОстатки.Характеристика= ЦеныНоменклатурыСрезПоследних.Характеристика
#5 by Eugeneer
по номенклатуре и характеристикам - ссылкам. а ты по наименованию характеристики соединяешь - грубейшая ошибка. Полное - это если тебе надо вывести все и которых нет на остатках. Левое если только те что на остатках - но опять таки с правильным соединением а не то чт оу тебя.
#6 by Eugeneer
Но еще не все. Полное выведет еще и позиции у которых есть цена. Если надо же вывести вообще полностью все товары с характерситиками и без, вне зависимости от остатков и цен, то надо делать 1) запрос по справочнику номенклатуры 2) К нему же - соединение с характеристиками всеми далее к этому двойному запросу добавлять отдельно запросы по осткткам и ценам с помощью конструкции ОБЪЕДИНИТЬ ВСЕ
#7 by Ramundo
Соединил вот так: ИЗ Одна задача выполнена, то есть товар без характеристик отображается. Но товар без розничной цены нет. Плюс, после нужных данных в конце отчета выдаются пустые строки, в которых только все значения розничных цен.
#8 by catena
Чтобы отображался товар без розничной цены, надо ГДЕ засунуть в условия соединения.
#9 by Eugeneer
читай Тебе нужен теперь совершенно другой запрос как я описал. Он сложнее.
#10 by Eugeneer
товаров без цен в регистре может тупо не быть. Тк в регистре только то что регистрировалось.
#11 by Eugeneer
естественно так и будет. У тебя нигде не стоит упорядочивания по номенклатуре. Плюс ПОЛНОЕ СОЕДИНЕНИЕ. А у тебя ТоварыВЯчейкахОстатки.Номенклатура КАК Номенклатура,     ТоварыВЯчейкахОстатки.Ячейка,     ТоварыВЯчейкахОстатки.ВНаличииОстаток КАК Остаток, А это значит что у тебя выводится все заполненное только у тех у которыхз есть остатки, а у тех кто нету остатков в таблицу только одна цена и выйдет.
#12 by Eugeneer
Тебе теперь точно надо переписывать все целиком под
#13 by Eugeneer
ВложенныйЗапрос.Номенклатура КАК Номенклатура,         ИЗ
#14 by Eugeneer
К этому вложенному левым добавишь цены и получишь то что надо. С тебя пузырь. А то чувствую хрен бы ты чо сделал.
#15 by Ramundo
Блин, Спасибо! Ща буду разбираться) Это просто мой второй отчет) А вообще, так ради интереса, если бы оставить вот так: ИЗ То выходит, что все отображается норм, только нет позиций номенклатуры, у которых не указана розничная. Вообще, часто бывает, что на складе лежит товар, для которого какой-либо вид цен не указан?
#16 by Eugeneer
ну а почему нет. оприходовали а цены не назначили. запросто.
#17 by Ramundo
Не подскажешь как?
#18 by catena
Может. Но запрос выводит только товар с розничной ценой, надо же человеку понять - почему. Условие на левую таблицу превращает твое полное соединение вовсе в правое. Потому что сначала происходит соединение, а потом на получившуюся выборку накладывается условие. Если переместить условие на вид цены из ГДЕ в ПО, порядок действий будет обратный.
#19 by WildSery
Не в правое, а во внутреннее.
Тэги: 1С 8
Ответить:
Комментарии доступны только авторизированным пользователям

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