Как проверить на ЕСТЬNULL() в запросе 1С
При соединении нескольких таблиц в запросе есть вероятность того, что во второй таблице нет значения соответствующего условию запроса и в результате в ячейку будет выводиться значение NULL.
Значение NULL указывает на отсутствующее значение при работе с базами данных.
NULL — Не равен пустой ссылке, пробелу или Типу Неопределено.
Запросы в 1С не позволяют сравнивать со значением NULL и именно для этого была придумана функция ЕСТЬNULL, которая при нахождении значения NULL, заменит его на нужное, например на 0.
ЕСТЬNULL(УчетНоменклатурыОстатки.КоличествоОстаток, 0)
Функция ЕСТЬNULL
ВЫБРАТЬ
СправочникНоменклатуры.Наименование,
ЕСТЬNULL(УчетНоменклатурыОстатки.КоличествоОстаток, 0) КАК КоличествоОстаток
ИЗ
Справочник.Номенклатура КАК СправочникНоменклатуры
ЛЕВОЕ СОЕДИНЕНИЕ РегистрНакопления.УчетНоменклатуры.Остатки КАК УчетНоменклатурыОстатки
ПО УчетНоменклатурыОстатки.Номенклатура = СправочникНоменклатуры.Ссылка
ГДЕ
СправочникНоменклатуры.ЭтоГруппа = ЛОЖЬ
Бывает ситуация, когда в запросе нужно получить записи где значение не есть null, в данном случае можно попробовать следующую конструкцию:
ГДЕ (ЕстьNull(УчетНоменклатурыОстатки.КоличествоОстаток, 0) <> 0)