Имя: Пароль:
1C
1С v8
Пустой результат и значение NULL
0 FullMoon
 
15.11.13
20:12
Почему при отсутствии документов ГОИД запрос

    "ВЫБРАТЬ
    |    СУММА(ВЫБОР
    |            КОГДА ГОИД.ВидОперации = ЗНАЧЕНИЕ(Перечисление.ВидыОперацийГарантийныхОбеспечений.ВозвратГарантийногоОбеспечения)
    |                ТОГДА -ГОИД.СуммаДоговора
    |            ИНАЧЕ ГОИД.СуммаДоговора
    |        КОНЕЦ) КАК СуммаОбеспечений,
    |    ГОИД.Ссылка
    |ИЗ
    |    Документ.ГОИД КАК ГОИД
    |ГДЕ
    |    ГОИД.Проведен = ИСТИНА
    |    И ГОИД.Статус = ЗНАЧЕНИЕ(Перечисление.СтатусыГарантийныхОбеспечений.Зачтено)
    |    И ГОИД.Заказ = &Заказ
    |
    |СГРУППИРОВАТЬ ПО
    |    ГОИД.Ссылка";

при выгрузке результата в таблицу значений дает пустую таблицу, а запрос

    "ВЫБРАТЬ
    |    СУММА(ВЫБОР
    |            КОГДА ГОИД.ВидОперации = ЗНАЧЕНИЕ(Перечисление.ВидыОперацийГарантийныхОбеспечений.ВозвратГарантийногоОбеспечения)
    |                ТОГДА -ГОИД.СуммаДоговора
    |            ИНАЧЕ ГОИД.СуммаДоговора
    |        КОНЕЦ) КАК СуммаОбеспечений
    |ИЗ
    |    Документ.ГОИД КАК ГОИД
    |ГДЕ
    |    ГОИД.Проведен = ИСТИНА
    |    И ГОИД.Статус = ЗНАЧЕНИЕ(Перечисление.СтатусыГарантийныхОбеспечений.Зачтено)
    |    И ГОИД.Заказ = &Заказ";

дает таблицу, содержащую строку со значением Null ?

Объясните чайнику откуда это значение берется.
1 FullMoon
 
15.11.13
20:14
Просто раздирает любопытство :)
2 shuhard
 
15.11.13
20:17
(1) убери где и убери Выбрать - любопытство и отвалиться
3 FullMoon
 
15.11.13
20:19
(2) Условия из запроса убрать нельзя
4 shuhard
 
15.11.13
20:21
(3) почему - мышка сломалась ?
5 smaharbA
 
15.11.13
20:23
6 FullMoon
 
15.11.13
20:27
(4) Потому что, во-первых, они там нужны, во-вторых, меня интересует вышеописанная ситуация именно при этих условиях.
7 exwill
 
15.11.13
20:43
(0) Во втором случае таблица группируется в одну строку.
Если указать агрегатную функцию, но не указывать значения группировок вся таблица сгруппируется в одну строку.
При этом одна строка будет всегда. Даже когда в исходной таблице строк не было совсем. Таков стандарт SQL.
Требовать и эффективности, и гибкости от одной и той же программы — все равно, что искать очаровательную и скромную жену... по-видимому, нам следует остановиться на чем-то одном из двух. Фредерик Брукс-младший