ЕСТЬNULL (ВыражениеПроверка, ВыражениеЗамена) в запросе, 1С.
ЕСТЬNULL (ВыражениеПроверка, ВыражениеЗамена) в запросе, 1С.
ЕСТЬNULL (ВыражениеПроверка, ВыражениеЗамена) — функция проверяет первое выражение на значение NULL. Если первый параметр равен ему, то возвращает второй параметр ВыражениеЗамена, если первый параметр не равен NULL, тогда возвращается первый параметр ВыражениеПроверка.
Код:
Процедура ЕСТЬNULL_В1сЗапрос() Запрос = Новый Запрос; Запрос.Текст = "ВЫБРАТЬ | ПартииТоваровНаСкладахОстатки.КоличествоОстаток, | ЕСТЬNULL(ПартииТоваровНаСкладахОстатки.КоличествоОстаток, 0) КАК КоличествоОстаток, | НоменклатураСправочник.Наименование Как Номенклатура |ИЗ | Справочник.Номенклатура КАК НоменклатураСправочник | ЛЕВОЕ СОЕДИНЕНИЕ РегистрНакопления.ПартииТоваровНаСкладах.Остатки(&НаДату, ) КАК ПартииТоваровНаСкладахОстатки | ПО (ПартииТоваровНаСкладахОстатки.Номенклатура.Ссылка = НоменклатураСправочник.Ссылка)"; Запрос.УстановитьПараметр("НаДату", ТекущаяДата()); РезультатЗапроса = Запрос.Выполнить(); ВыборкаДетальныеЗаписи = РезультатЗапроса.Выбрать(); Пока ВыборкаДетальныеЗаписи.Следующий() Цикл Сообщить("Номенклатура "+ВыборкаДетальныеЗаписи.Номенклатура +" , КоличествоОстаток: " +ВыборкаДетальныеЗаписи.КоличествоОстаток); КонецЦикла; КонецПроцедуры
В этом примере выводятся все элементы справочника, а также остатки по регистру. Там, где остатки имеются, виртуальная таблица Остатки вернет значение, в противном случае возвращается NULL.