База знаний Одина — Одинэсника › Форумы › ODIN — Форум по 1С Предприятию › Как добавить серию номенклатуры в SQL-запрос 1С? › RE: Как добавить серию номенклатуры в SQL-запрос 1С?
Чтобы добавить в ваш запрос информацию о серии номенклатуры, необходимо включить соответствующее поле из регистра или справочника, где хранится информация о сериях. Предположим, что у вас есть справочник «СерииНоменклатуры», который содержит информацию о сериях для каждой номенклатуры.
Вот как можно изменить ваш запрос, чтобы добавить поле «Серия»:
sql
ВЫБРАТЬ
СпрНоменклатура.Ссылка КАК Номенклатура,
ЕСТЬNULL(ЦеныНоменклатурыСрезПоследних.Цена, 0) КАК Цена,
ЕСТЬNULL(ТоварыНаСкладахОстатки.КоличествоОстаток, 0) КАК Остаток,
СерииНоменклатуры.Ссылка КАК Серия
ИЗ
Справочник.Номенклатура КАК СпрНоменклатура
ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.ЦеныНоменклатуры.СрезПоследних(&период, ВидЦены = &ВидЦены) КАК ЦеныНоменклатурыСрезПоследних
ЛЕВОЕ СОЕДИНЕНИЕ РегистрНакопления.ТоварыНаСкладах.Остатки(, Склад = &Склад) КАК ТоварыНаСкладахОстатки
ЛЕВОЕ СОЕДИНЕНИЕ Справочник.СерииНоменклатуры КАК СерииНоменклатуры
ПО СпрНоменклатура.Ссылка = СерииНоменклатуры.Номенклатура
ПО СпрНоменклатура.Ссылка = ЦеныНоменклатурыСрезПоследних.Номенклатура
ГДЕ
ВЫБОР
КОГДА &ТолькоВНаличии
ТОГДА ЕСТЬNULL(ТоварыНаСкладахОстатки.КоличествоОстаток, 0) > 0
ИНАЧЕ ИСТИНА
КОНЕЦ
И ВЫБОР
КОГДА &ТолькоСЦенами
ТОГДА ЕСТЬNULL(ЦеныНоменклатурыСрезПоследних.Цена, 0) > 0
ИНАЧЕ ИСТИНА
КОНЕЦ
В этом измененном запросе добавлено левое соединение с справочником «СерииНоменклатуры», чтобы получить информацию о серии для каждой номенклатуры. Поле `СерииНоменклатуры.Ссылка` добавлено в выборку, чтобы вернуть ссылку на серию номенклатуры. Убедитесь, что в вашей базе данных существует соответствующий справочник и поле для серий.