|   |   | 
| 
 | СКД. Связи наборов данных. ЕСТЬ NULL | ☑ | ||
|---|---|---|---|---|
| 0
    
        Zixxx 14.01.18✎ 12:44 | 
        Какое условие нужно задать полю, если при связи наборов данных его значение что-то типа null 
 Как вариант можно задать вид сравнения Заполнено, тогда такие поля не попадают в результат Если задать вид сравнения НеЗаполнено, то такие поля все равно не попадают в результат В вычисляемых полях такие поля определяются как NULL Если программно устанавливать отбор на ВидСравнения.Равно NULL, то не попадает в результат Как правильно задать отбор чтобы получить пустые поля из связей наборов данных? | |||
| 1
    
        vicof 14.01.18✎ 14:56 | 
        естьnull()     | |||
| 2
    
        milan 14.01.18✎ 15:24 | 
        Никак, при использовании отбора, левое соединение наборов данных заменяется на внутреннее, зачем, непонятно.     | |||
| 3
    
        Лефмихалыч 14.01.18✎ 15:29 | 
        (0) добавить вычисляемое поле, в котором будет
 ВЫБОР КОГДА ЕСТЬ NULL тогда истина иначе ложь и отбирать по нему (2) это не зачем. Это запрос так работает. На любой СУБД. | |||
| 4
    
        Zixxx 14.01.18✎ 16:02 | 
        (3) Нет так номер не пройдет, если есть связи наборов, то вычисляемое поле будет как представление, либо содержать значение какой-то неопределенности и в случае наложения отбора именно эта неопределенность и будет на первом месте.
 Причем даже типовая расшифровка предложит такой быстрый отбор но ничего не покажет. А вот если вычисляемое поле идет без связей наборо тогда будет работать | |||
| 5
    
        Лефмихалыч 14.01.18✎ 16:19 | 
        (4) ну, да. Можно добавить в первый набор необязательное соединение именно для вычисления этого ВЫБОР КОГДА ТОГДА. Будет работать быстрее, чем все ухищрения с вычисляемыми полями, но может сбивать с толку тех, кто будет читать этот запрос через пару месяцев     | |||
| 6
    
        milan 14.01.18✎ 17:25 | 
        (3) что за запрос, и почему он работал по другому в ранних версиях платформы? Кажется такая же фигня в динамических списках, но могу ошибаться.     | |||
| 7
    
        Лефмихалыч 14.01.18✎ 17:32 | 
        (6) сравнение нула с чем угодно возвращает ложь в запросе во всех СУБД, поддерживающих join'ы.     | |||
| 8
    
        milan 14.01.18✎ 17:42 | 
        (6) нет, не ошибаюсь, в типовых не получится отобрать документы без присоединенных файлов, ибо джоин превращается во внутренний     | |||
| 9
    
        milan 14.01.18✎ 17:43 | 
        (7) в нашем примере условие проверяет нулл     | |||
| 10
    
        Franchiser 14.01.18✎ 22:25 | 
        Такое условие можно задать только на уровни нижележащих группировок (и детальных записей), учли использовать условие на уровне все отчета СКД применит внутренне соединение.  Другой вариант - использовать вычисляемое поле и по нему потом делать фильтр | 
 
 | Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |