Путое значение в регистре

1. user1004898 28 15.05.19 10:45 Сейчас в теме
Хочу вывести информацию по номенклатуре и наличие данной номенклатуры на складе (остаток).
Пишу
ВЫБРАТЬ ПЕРВЫЕ 30
	СпрНоменклатура.Ссылка КАК Ссылка,
	СпрНоменклатура.Код КАК Код,
	СпрНоменклатура.Артикул КАК Артикул,
	СпрНоменклатура.ВидНоменклатуры КАК ВидНоменклатуры,
	СпрНоменклатура.ЕдиницаИзмерения КАК ЕдиницаИзмерения,
	СпрНоменклатура.СтавкаНДС КАК СтавкаНДС,
	ВЫБОР
		КОГДА ТоварыОрганизацийОстатки.КоличествоОстаток = ""
			ТОГДА "0"
		ИНАЧЕ ТоварыОрганизацийОстатки.КоличествоОстаток
	КОНЕЦ КАК Поле1
ИЗ
	Справочник.Номенклатура КАК СпрНоменклатура,
	РегистрНакопления.ТоварыОрганизаций.Остатки КАК ТоварыОрганизацийОстатки
ГДЕ
	НЕ СпрНоменклатура.ЭтоГруппа
	И СпрНоменклатура.Ссылка = &Ссылка
	И ТоварыОрганизацийОстатки.АналитикаУчетаНоменклатуры.Номенклатура.Ссылка = &Ссылка
Показать

Когда остаток любое число = 2, 1, 10, то выводится строка о товаре и об остатке.
А когда остаток пуст (реально пуст, без "0") вообще ничего не выводит?
чего так?
Ни NULL ни НЕОПРЕДЕЛЕНО ни "" не подходят чего-то..
По теме из базы знаний
Найденные решения
4. dhurricane 15.05.19 10:59 Сейчас в теме
Во-первых, необходимо исключить из секции "ГДЕ" условия по полям присоединяемой таблицы. У Вас оно повторяет условие соединение, поэтому можно просто удалить.
Во-вторых, поле остатка в секции "ВЫБРАТЬ" должно быть таким:
ЕСТЬNULL(ТоварыОрганизацийОстатки.КоличествоОстаток, 0) КАК Поле1
либо таким:
ВЫБОР
        КОГДА ТоварыОрганизацийОстатки.КоличествоОстаток ЕСТЬ NULL
            ТОГДА "0"
        ИНАЧЕ ТоварыОрганизацийОстатки.КоличествоОстаток
    КОНЕЦ КАК Поле1
7. Oldsad 15.05.19 11:05 Сейчас в теме
(3)
смотрю уже переделал запрос и по факту у тебя уже внутреннее соединение

для решения задачи тебе нужно присоединить к таблице номенклатура таблицу остатков
а было наоборот

в (4) говорят что было дублирование связи в секции ГДЕ, поэтому не заработало при изменении левого на правое соединение, каюсь просмотрел
Остальные ответы
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
2. Oldsad 15.05.19 10:50 Сейчас в теме
тебе но сделать правое соединение а не левое
3. user1004898 28 15.05.19 10:59 Сейчас в теме
(2)
по идее там вообще соединения ни к чему. я обращаюсь по параметру на указанный товар.
В реальности пробовал и Левое и Правое - без толку.
7. Oldsad 15.05.19 11:05 Сейчас в теме
(3)
смотрю уже переделал запрос и по факту у тебя уже внутреннее соединение

для решения задачи тебе нужно присоединить к таблице номенклатура таблицу остатков
а было наоборот

в (4) говорят что было дублирование связи в секции ГДЕ, поэтому не заработало при изменении левого на правое соединение, каюсь просмотрел
9. Oldsad 15.05.19 11:11 Сейчас в теме
(7)
соединение обязательно
10. user1004898 28 15.05.19 11:11 Сейчас в теме
(7)
там, что Внутреннее, что левое, что правое - результат один: если остаток "2" - оно показывает "2".
Если ничего нет, ни "0" - то вообще строк нет.
4. dhurricane 15.05.19 10:59 Сейчас в теме
Во-первых, необходимо исключить из секции "ГДЕ" условия по полям присоединяемой таблицы. У Вас оно повторяет условие соединение, поэтому можно просто удалить.
Во-вторых, поле остатка в секции "ВЫБРАТЬ" должно быть таким:
ЕСТЬNULL(ТоварыОрганизацийОстатки.КоличествоОстаток, 0) КАК Поле1
либо таким:
ВЫБОР
        КОГДА ТоварыОрганизацийОстатки.КоличествоОстаток ЕСТЬ NULL
            ТОГДА "0"
        ИНАЧЕ ТоварыОрганизацийОстатки.КоличествоОстаток
    КОНЕЦ КАК Поле1
5. user1004898 28 15.05.19 11:02 Сейчас в теме
(4)
КОГДА ТоварыОрганизацийОстатки.КоличествоОстаток ЕСТЬ NULL

а чем это отличается от моего ?
КОГДА ТоварыОрганизацийОстатки.КоличествоОстаток = NULL 
6. dhurricane 15.05.19 11:04 Сейчас в теме
(5) Тем, что даст не "Истина" или "Ложь" в результате, а "NULL".
8. user1004898 28 15.05.19 11:06 Сейчас в теме
(6)
я конечно попробовал ваш результат - все равно ничего...
11. user1004898 28 15.05.19 11:16 Сейчас в теме
Спасибо!
Однозначно, и соединение и условие ГДЕ мешало.
Оставьте свое сообщение

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