Результат запроса
Всем доброго дня! Подскажите пожалуйста, есть справочник Номенклатура и рс ОстаткиТоваров. Требуется с помощью запроса найти нужную номенклатуру и количество на остатке. В самом регистре этой номенклатуры нет. Если в запросе ограничить выгрузку из рс по полям усОстаткиТоваров.Ячейка.РабочаяЗона И усОстаткиТоваров.Ячейка.ТипЯчейки, то результат запроса пустой. Если эти условия убрать, то номенклатура находится и количество соответственно 0. Подскажите, как переработать запрос, чтобы он не был пустым и условия тоже остались? Спасибо за помощь!
Текст запроса:
Текст запроса:
ВЫБРАТЬ
усНоменклатура.Ссылка КАК Номенклатура,
усНоменклатура.Родитель КАК НоменклатураРодитель,
усНоменклатура.Код КАК НоменклатураКод,
усНоменклатура.Наименование КАК НоменклатураНаименование,
усНоменклатура.Артикул КАК НоменклатураАртикул
ПОМЕСТИТЬ вт_Номенклатура
ИЗ
Справочник.усНоменклатура КАК усНоменклатура
ГДЕ
усНоменклатура.Код В(&мсвКодыНоменклатур)
;
//////////////////////////////////////////////////////////// ////////////////////
ВЫБРАТЬ
вт_Номенклатура.Номенклатура,
вт_Номенклатура.НоменклатураРодитель,
вт_Номенклатура.НоменклатураКод,
вт_Номенклатура.НоменклатураНаименование,
вт_Номенклатура.НоменклатураАртикул,
ЕСТЬNULL(усОстаткиТоваров.Количество, 0) КАК Количество
ИЗ
вт_Номенклатура КАК вт_Номенклатура
ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.усОстаткиТоваров КАК усОстаткиТоваров
ПО вт_Номенклатура.Номенклатура = усОстаткиТоваров.Номенклатура
ГДЕ
усОстаткиТоваров.Ячейка.РабочаяЗона = &РабочаяЗона
И усОстаткиТоваров.Ячейка.ТипЯчейки = &ТипЯчейки
ПоказатьОтветы
В избранное
Подписаться на ответы
Сортировка:
Древо развёрнутое
Свернуть все
(3)
Как есть. Это могут быть условные остатки товаров в другой базе. Это могут быть минимальные остатки товаров. Это может быть что угодно.
Что такое Ячейка - даже не задумывался. :-)
(1) Я имел ввиду примерно вот это:
Остатки? в РегистреСведений?
Как есть. Это могут быть условные остатки товаров в другой базе. Это могут быть минимальные остатки товаров. Это может быть что угодно.
Что такое Ячейка - даже не задумывался. :-)
(1) Я имел ввиду примерно вот это:
...
ЛЕВОЕ СОЕДИНЕНИЕ (ВЫБРАТЬ т.Номенклатура, т.Количество ИЗ РегистрСведений.усОстаткиТоваров КАК т
ГДЕ
т.Ячейка.РабочаяЗона = &РабочаяЗона
И т.Ячейка.ТипЯчейки = &ТипЯчейки) как усОстаткиТоваров
ПО вт_Номенклатура.Номенклатура = усОстаткиТоваров.Номенклатура
Всем спасибо за ответы. Проблему решил. Условия на рабочую зону и тип ячейки в связи надо указать, если остатка нет, а условия на рабочую зону и тип ячейки в секции ГДЕ, то запрос обрубает эти результаты.
Вот такой текст запроса получился и все работает:
Вот такой текст запроса получился и все работает:
ВЫБРАТЬ
усНоменклатура.Ссылка КАК Номенклатура,
усНоменклатура.Родитель КАК НоменклатураРодитель,
усНоменклатура.Код КАК НоменклатураКод,
усНоменклатура.Наименование КАК НоменклатураНаименование,
усНоменклатура.Артикул КАК НоменклатураАртикул
ПОМЕСТИТЬ вт_Номенклатура
ИЗ
Справочник.усНоменклатура КАК усНоменклатура
ГДЕ
усНоменклатура.Код В(&мсвКодыНоменклатур)
;
//////////////////////////////////////////////////////////// ////////////////////
ВЫБРАТЬ
вт_Номенклатура.Номенклатура,
вт_Номенклатура.НоменклатураРодитель,
вт_Номенклатура.НоменклатураКод,
вт_Номенклатура.НоменклатураНаименование,
вт_Номенклатура.НоменклатураАртикул,
ЕСТЬNULL(усОстаткиТоваров.Количество, 0) КАК Количество
ИЗ
вт_Номенклатура КАК вт_Номенклатура
ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.усОстаткиТоваров КАК усОстаткиТоваров
ПО вт_Номенклатура.Номенклатура = усОстаткиТоваров.Номенклатура
И (усОстаткиТоваров.Ячейка.РабочаяЗона = &РабочаяЗона)
И (усОстаткиТоваров.Ячейка.ТипЯчейки = &ТипЯчейки)
Показать