Имя: Пароль:
1C
1С v8
Проверка в запросе
,
0 Ctyd
 
23.05.13
13:02
Как в запросе проверить составное поле которое хранит ссылки на другие документы что оно пустое?

Тоисть практически там может быть любой документ из списка.
Вариант проверять документы:
документ.сделка=Значение(Документ.СчетНаОплату.ПустаяССылка)
И документ.сделка=Значение(Документ.Заказпокупател.ПустаяССылка) и т.д.
может есть вариант дешевле и лучше?
1 MKZM
 
23.05.13
13:03
есть null
2 Borteg
 
23.05.13
13:05
(0) Неопределенно
При соединений null
3 Wobland
 
23.05.13
13:05
(2) Неопределено<>ПустаяСсылка
4 Borteg
 
23.05.13
13:07
(3) Если поле составное то вроде отсутствие значения Неопределенно?
5 Пират
 
23.05.13
13:08
(0) Выбор Когда СоставноеПоле ССЫЛКА Документ.Откат Тогда
Выбор Когда СоставноеПоле = Значение(Документ.Откат.ПустаяСсылка) Тогда Истина
Иначе Ложь Конец
Иначе Ложь
Конец
6 Wobland
 
23.05.13
13:08
(4) пустая ссылка на реализацию - это одно, отсутствие ссылки - другое.
7 Пират
 
23.05.13
13:08
(0) С составным полем надо работать через ВЫРАЗИТЬ ИЛИ ССЫЛКА
8 Пират
 
23.05.13
13:10
(0) И вообще, не комильфо, если в составном поле может быть любой документ.

Запрос будет коннектить все таблицы документов при обращении к этому полю без оператора ВЫРАЗИТЬ
9 Ctyd
 
23.05.13
13:11
тоисть только (5) и больше никак?
10 Пират
 
23.05.13
13:12
(9) Можешь попробовать так: Выразить(СоставноеПоле КАК ТИП Документ.Откат)  и ловить то, что на выходе
11 Ctyd
 
23.05.13
13:15
спасибо
12 Бледно Золотистый
 
23.05.13
13:18
(9) Можно попробовать получить любой реквизит через точку и  его проверять, предварительно проверив на непределено и null. Вопрос как с производительностью будет.
13 Бледно Золотистый
 
23.05.13
13:19
+(12) любой реквизит из стандартных
14 Пират
 
23.05.13
13:21
(12) без применения ВЫРАЗИТЬ будет жеппа