Значение NULL в запросе для поля с условием "В(...)"

1. scarl1n 12 28.05.24 09:20 Сейчас в теме
Есть документ "Спецификация", у него есть реквизит "Номенклатура". Также есть табличная часть "Комплектующие", в которой есть колонка "Номенклатура".

Запросом получаю единую таблицу при помощи соединения с табличной частью документа. Получаю колонки: "Номенклатура", "Спецификация", "КомплектующиеНоменклатура". Здесь все ок, в таблице строки с номенклатурой дублируются для каждой номенклатуры из комплектующих. Помещаю результат во временную таблицу и добавляю поле:

"втНоменклатураИКомплектующие.Номенклатура В(втНоменклатураИКомплектующие.КомплектующиеНоменклатура)"

В таком случае в некоторых строках это поле равно NULL. Как?
По теме из базы знаний
Найденные решения
2. SlavaKron 28.05.24 09:27 Сейчас в теме
(1) Как вариант, есть документы без табличной части, тогда в втНоменклатураИКомплектующие колонка КомплектующиеНоменклатура будет NULL (при условии, что связь основной таблицы и ТЧ левая).
3. scarl1n 12 28.05.24 09:32 Сейчас в теме
(2)Я разобрался, стоило только создать тему) Я неверно построил условие. Мне необходимо было отобрать ту номенклатуру, которая не является комплектующим (она не встречается в табличной части "Комплектующие"). В моем запросе проверка "Номенклатура В КомплектующиеНоменклатура" проверяла не всю временную таблицу, а только табличную часть номенклатуры (встречается ли номенклатура в своих же комплектующих). Необходимо поместить номенклатуру комплектующих в отдельную временную таблицу и уже на нее делать условие.
Остальные ответы
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
2. SlavaKron 28.05.24 09:27 Сейчас в теме
(1) Как вариант, есть документы без табличной части, тогда в втНоменклатураИКомплектующие колонка КомплектующиеНоменклатура будет NULL (при условии, что связь основной таблицы и ТЧ левая).
3. scarl1n 12 28.05.24 09:32 Сейчас в теме
(2)Я разобрался, стоило только создать тему) Я неверно построил условие. Мне необходимо было отобрать ту номенклатуру, которая не является комплектующим (она не встречается в табличной части "Комплектующие"). В моем запросе проверка "Номенклатура В КомплектующиеНоменклатура" проверяла не всю временную таблицу, а только табличную часть номенклатуры (встречается ли номенклатура в своих же комплектующих). Необходимо поместить номенклатуру комплектующих в отдельную временную таблицу и уже на нее делать условие.
4. scarl1n 12 28.05.24 09:33 Сейчас в теме
(2)Но вы правы, NULL встречалось там, где пустая табличная часть.
Оставьте свое сообщение

Для получения уведомлений об ответах подключите телеграм бот:
Инфостарт бот