Форум 1С
Программистам, бухгалтерам, администраторам, пользователям
Задай вопрос - получи решение проблемы
22 ноя 2024, 22:49

прошу экстренной помощи

Автор Roman Doroshuk, 18 янв 2017, 16:56

0 Пользователей и 1 гость просматривают эту тему.

Roman Doroshuk

УТ 10.3
есть запрос
   Возврат "ВЫБРАТЬ РАЗЛИЧНЫЕ
           |   ТоварыОрганизацийОбороты.Номенклатура КАК Номенклатура,
      |       ТоварыОрганизацийОбороты.СерияНоменклатуры.инфтПроизводитель КАК Производитель,
           |   ЕСТЬNULL(СведенияОбАлкогольнойПродукции.ВидПродукции.КодВидаПродукции, """") КАК КодВида,
           |   ЕСТЬNULL(СведенияОбАлкогольнойПродукции.КоэффПересчетаДал, 0) * 10 КАК Объем,
           |   ВЫБОР
           |      КОГДА &РежимВыгрузкиЦен = 1
           |         ТОГДА ЕСТЬNULL(ЦеныАТТ.Цена, 0)
           |      ИНАЧЕ ЕСТЬNULL(ЦеныНоменклатуры.Цена, 0)
           |   КОНЕЦ КАК Цена,
           |   ЕСТЬNULL(ШтрихКоды.Штрихкод, """") КАК ШтрихКод
           |ИЗ
           |   РегистрНакопления.ТоварыОрганизаций.Обороты(&ПериодНач, &ПериодКон, Регистратор, Организация = &Организация) КАК ТоварыОрганизацийОбороты
           |      ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.СведенияОбАлкогольнойПродукции КАК СведенияОбАлкогольнойПродукции
           |      ПО ТоварыОрганизацийОбороты.Номенклатура = СведенияОбАлкогольнойПродукции.Номенклатура
           |      ЛЕВОЕ СОЕДИНЕНИЕ (ВЫБРАТЬ
           |         МАКСИМУМ(Штрихкоды.Штрихкод) КАК Штрихкод,
           |         Штрихкоды.Владелец КАК Владелец
           |      ИЗ
           |         РегистрСведений.Штрихкоды КАК Штрихкоды
           |      
           |      СГРУППИРОВАТЬ ПО
           |         Штрихкоды.Владелец) КАК ШтрихКоды
           |      ПО ТоварыОрганизацийОбороты.Номенклатура = ШтрихКоды.Владелец
           |      ЛЕВОЕ СОЕДИНЕНИЕ (ВЫБРАТЬ
           |         ЦеныНоменклатурыСрезПоследних.Номенклатура КАК Номенклатура,
           |         МАКСИМУМ(ЦеныНоменклатурыСрезПоследних.Цена) КАК Цена
           |      ИЗ
           |         РегистрСведений.ЦеныНоменклатуры.СрезПоследних(&ДатаКон, ТипЦен = &ТипЦен) КАК ЦеныНоменклатурыСрезПоследних
           |      
           |      СГРУППИРОВАТЬ ПО
           |         ЦеныНоменклатурыСрезПоследних.Номенклатура) КАК ЦеныНоменклатуры
           |      ПО ТоварыОрганизацийОбороты.Номенклатура = ЦеныНоменклатуры.Номенклатура
           |      ЛЕВОЕ СОЕДИНЕНИЕ (ВЫБРАТЬ
           |         ЦеныАТТСрезПоследних.Номенклатура КАК Номенклатура,
           |         МАКСИМУМ(ЦеныАТТСрезПоследних.Цена) КАК Цена
           |      ИЗ
           |         РегистрСведений.ЦеныАТТ.СрезПоследних(&ДатаКон, Склад = &СкладЦен) КАК ЦеныАТТСрезПоследних
           |      
           |      СГРУППИРОВАТЬ ПО
           |         ЦеныАТТСрезПоследних.Номенклатура) КАК ЦеныАТТ
           |      ПО ТоварыОрганизацийОбороты.Номенклатура = ЦеныАТТ.Номенклатура
           |ГДЕ
           |   ЕСТЬNULL(СведенияОбАлкогольнойПродукции.ВидЛицензии, 0) В (&ВидыТоваров)
           |{ГДЕ
           |   ТоварыОрганизацийОбороты.Номенклатура.*,
           |   ТоварыОрганизацийОбороты.Склад.*}
           |ИТОГИ ПО
           |   Номенклатура ТОЛЬКО ИЕРАРХИЯ";
смысл выбрать алкогольную продукцию (ее код, объем и т.д).
Такой запрос выдает очень много товара с пустым производителем из за чего его (результат выборки) использовать дальше невозможно.
Как сделать чтоб в выборке не было строк с пустым значением в поле Производитель?

depb

тип реквизита "производитель" какой? если справочник, то условие в запрос добавить, что-то вроде этого

блаБла.Производитель <> ЗНАЧЕНИЕ(Справочник.НазваниеСпр.ПустаяСсылка)

LexaK

попробуйте такой запрос, смотри коммент

Возврат "ВЫБРАТЬ РАЗЛИЧНЫЕ
|   ТоварыОрганизацийОбороты.Номенклатура КАК Номенклатура,
|   ТоварыОрганизацийОбороты.СерияНоменклатуры.инфтПроизводитель КАК Производитель,
|   ЕСТЬNULL(СведенияОбАлкогольнойПродукции.ВидПродукции.КодВидаПродукции, """") КАК КодВида,
|   ЕСТЬNULL(СведенияОбАлкогольнойПродукции.КоэффПересчетаДал, 0) * 10 КАК Объем,
|   ВЫБОР
|      КОГДА &РежимВыгрузкиЦен = 1
|         ТОГДА ЕСТЬNULL(ЦеныАТТ.Цена, 0)
|      ИНАЧЕ ЕСТЬNULL(ЦеныНоменклатуры.Цена, 0)
|   КОНЕЦ КАК Цена,
|   ЕСТЬNULL(ШтрихКоды.Штрихкод, """") КАК ШтрихКод
|ИЗ
|   РегистрНакопления.ТоварыОрганизаций.Обороты(&ПериодНач, &ПериодКон, Регистратор, Организация = &Организация) КАК ТоварыОрганизацийОбороты
|      ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.СведенияОбАлкогольнойПродукции КАК СведенияОбАлкогольнойПродукции
|      ПО ТоварыОрганизацийОбороты.Номенклатура = СведенияОбАлкогольнойПродукции.Номенклатура
|      ЛЕВОЕ СОЕДИНЕНИЕ (ВЫБРАТЬ
|         МАКСИМУМ(Штрихкоды.Штрихкод) КАК Штрихкод,
|         Штрихкоды.Владелец КАК Владелец
|      ИЗ
|         РегистрСведений.Штрихкоды КАК Штрихкоды
|     
|      СГРУППИРОВАТЬ ПО
|         Штрихкоды.Владелец) КАК ШтрихКоды
|      ПО ТоварыОрганизацийОбороты.Номенклатура = ШтрихКоды.Владелец
|      ЛЕВОЕ СОЕДИНЕНИЕ (ВЫБРАТЬ
|         ЦеныНоменклатурыСрезПоследних.Номенклатура КАК Номенклатура,
|         МАКСИМУМ(ЦеныНоменклатурыСрезПоследних.Цена) КАК Цена
|      ИЗ
|         РегистрСведений.ЦеныНоменклатуры.СрезПоследних(&ДатаКон, ТипЦен = &ТипЦен) КАК ЦеныНоменклатурыСрезПоследних
|     
|      СГРУППИРОВАТЬ ПО
|         ЦеныНоменклатурыСрезПоследних.Номенклатура) КАК ЦеныНоменклатуры
|      ПО ТоварыОрганизацийОбороты.Номенклатура = ЦеныНоменклатуры.Номенклатура
|      ЛЕВОЕ СОЕДИНЕНИЕ (ВЫБРАТЬ
|         ЦеныАТТСрезПоследних.Номенклатура КАК Номенклатура,
|         МАКСИМУМ(ЦеныАТТСрезПоследних.Цена) КАК Цена
|      ИЗ
|         РегистрСведений.ЦеныАТТ.СрезПоследних(&ДатаКон, Склад = &СкладЦен) КАК ЦеныАТТСрезПоследних
|     
|      СГРУППИРОВАТЬ ПО
|         ЦеныАТТСрезПоследних.Номенклатура) КАК ЦеныАТТ
|      ПО ТоварыОрганизацийОбороты.Номенклатура = ЦеныАТТ.Номенклатура
|
|//для отбора по не пустому производителю
|      Внутреннее СОЕДИНЕНИЕ Справочник.Производители ПР //или как он там у вас называется
|    по ТоварыОрганизацийОбороты.СерияНоменклатуры.инфтПроизводитель = ПР.Ссылка
|
|ГДЕ
|   ЕСТЬNULL(СведенияОбАлкогольнойПродукции.ВидЛицензии, 0) В (&ВидыТоваров)
|{ГДЕ
|   ТоварыОрганизацийОбороты.Номенклатура.*,
|   ТоварыОрганизацийОбороты.Склад.*}
|ИТОГИ ПО
|   Номенклатура ТОЛЬКО ИЕРАРХИЯ";
если помогло нажмите: Спасибо!

Roman Doroshuk

Вопрос решен первым же ответом! Спасибо большое!
Коротко, сухо, в тему и сразу ВЕРНОЕ решение = признак профессионала!:)
Добавлю этот форум в избранное раз такие тут заходят:)

Второй ответ уверен не хуже, но не проверял, потому что уверенно сработало первое!:ehtwj:

Теги:

Похожие темы (5)

Рейтинг@Mail.ru

Поиск