|
ЕСТЬNULL в запросе | ☑ | ||
---|---|---|---|---|
0
fatal_error
06.09.14
✎
18:48
|
Доброго вечера всем, есть запрос по табличной части документа
ВЫБРАТЬ МатериальныйОтчетЧекиККМ.ВидОперации, МатериальныйОтчетЧекиККМ.ТипОплаты, МатериальныйОтчетЧекиККМ.Сумма, МатериальныйОтчетЧекиККМ.СуммаНДС ПОМЕСТИТЬ вт ИЗ Документ.МатериальныйОтчет.ЧекиККМ КАК МатериальныйОтчетЧекиККМ ГДЕ МатериальныйОтчетЧекиККМ.Ссылка = &Ссылка ; //////////////////////////////////////////////////////////////////////////////// ВЫБРАТЬ СУММА(ЕСТЬNULL(вт.Сумма, 0)) КАК Сумма, СУММА(ЕСТЬNULL(вт.СуммаНДС, 0)) КАК СуммаНДС ИЗ вт КАК вт ГДЕ вт.ВидОперации = ЗНАЧЕНИЕ(Перечисление.ВидыОперацийЧекККМ.Продажа) И вт.ТипОплаты = ЗНАЧЕНИЕ(Перечисление.ТипыОплатЧекаККМ.ПлатежнаяКарта) Табличная часть пустая. По идеи сумма должна выдавать 0, а выдает Null. Что я делаю не так? |
|||
1
Wobland
06.09.14
✎
18:50
|
||||
2
mikeone
06.09.14
✎
18:54
|
По какой-такой идее сумма должна быть 0?
Сумма неизвестно чего есть неизвестно чего. Все логично. |
|||
3
kumena
06.09.14
✎
19:01
|
>> а выдает Null
с чего это нулл? если ничего не выбирается, то и нула тоже не будет. вообще выборка ничего не даст. |
|||
4
fatal_error
06.09.14
✎
19:04
|
(3) а вот выдает, и Запрос.Выполнить().Пустой() - Ложь
|
|||
5
fatal_error
06.09.14
✎
19:04
|
(1) сейчас посмотрю, спс
|
|||
6
kumena
06.09.14
✎
19:08
|
(4) и в каком месте там нулл?
делай левое соединение с таблицей с одной записью, тогда будет тебе нул типа так левое соединение выбрать 1 КАК дополнение по Истина |
|||
7
fatal_error
06.09.14
✎
19:09
|
Итого: убрал естьnull, запихнул второй пакет запроса в втшку, а уже в третьем пакете использую естьnull.
|
|||
8
RomanYS
06.09.14
✎
19:52
|
добавь одну нулевую запись с нужными значениями в первую таблицу (через ОБЪЕДИНИТЬ) и тебе не понадобится ни естьnull ни третий запрос
|
|||
9
Фокусник
06.09.14
✎
19:54
|
(0) с таким ником одни ошибки будут, не мудрено ;)
|
|||
10
Defender aka LINN
06.09.14
✎
19:59
|
(3) Иногда лучше молчать...
(8) Месье знает толк в |
|||
11
RomanYS
06.09.14
✎
20:28
|
ещё можно просто поменять местами СУММА и ЕстьNULL
ЕстьNULL(СУММА(вт.сумма), 0) (10) по сравнению с (7) (8) вполне себе вариант |
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |