ЕСТЬNULL(поле,0) #370950


#0 by UPP1977
в запросе поле документв - ссылка на другой документ оказывается не заполненно как обработать эту ситуацию и присвоить нуль этому полю
#1 by Minilaus
ВЫБОР КОГДА Поле = ЗНАЧЕНИЕ(Документ.НужныйТебеДок.ПустаяСсылка)
#2 by Sadovnikov
CASE-то зачем? Точно так же, только в IsNULL запихать
#3 by Minilaus
Это поле не будет нулом, оно всегда имеет ссылку на документ
#4 by Sadovnikov
Так это смотря как запрос выглядит.
#5 by UPP1977
конец что писать тут ..... я не понял
#6 by butterbean
весь запрос покажи
#7 by Minilaus
В запросе пишешь ВЫБОР КОГДА Поле = ЗНАЧЕНИЕ(Документ.НужныйТебеДок.ПустаяСсылка) ТОГДА    0 (или че тут тебе нужно) ИНАЧЕ    Поле КОНЕЦ КАК Поле
#8 by Vitello
Наоборот условие сделать проще.
#9 by UPP1977
там составное поле и сделка и заказ
#10 by Garkin
замени на Если не поможет тогда ЕСТЬNULL(поле.Сделка.Ссылка,0)
#11 by Sadovnikov
Обрати внимание на и .
#12 by UPP1977
так всегда дает ноль  - хотя заказ есть
#13 by Defender aka LINN
Жесть...
#14 by UPP1977
и что
#15 by zag2art
Как по мне - самый сипотичный способ в в последней строчке...
#16 by Sadovnikov
Блин, какие можно давать советы, не видя текста запроса? Может, как правильно сказал , в этом запросе нет никакого связывания и, следовательно, NULL-а просто не может быть??
#17 by zag2art
Да и вообще, имхо конструкции типа: поле.Сделка.Ссылка ЕСТЬ NULL прекрасно заменяют: ВЫБОР КОГДА Поле = ЗНАЧЕНИЕ(Документ....Сделка.ПустаяСсылка)..... И писать меньше и универсальней
#18 by UPP1977
всем большое спасибо разобрался и исправил
#19 by zag2art
А ты вдумайся в
#20 by shuhard
фича в том, что кроме пустой ссылки в типовых часто используется Неопределено, при этом NULL - никогда.
#21 by zag2art
Ты тоже попробуй вдуматься в
#22 by Sadovnikov
Нда... И с каких это пор пустая ссылка = NULL? NULL ты получишь в результате связывания.
#23 by zag2art
Обрати внимание на "Ссылка" в  конструкции: поле.Сделка.Ссылка ЕСТЬ NULL
#24 by zag2art
+ Эта ссылка должна указывать на документ сделка, а так, как сделка = ПустаяСсылка, то запрос вернет NULL! без связываний
#25 by Sadovnikov
Так и не понял, что ты хочешь сказать. Можешь по другому сформулировать?
#26 by zag2art
Могу Смотри, очевидно чтобы проверить, что поле является пустой ссылкой на документ нужно использовать конструкцию типа: а можно
#27 by shuhard
бред
#28 by zag2art
+ То же самое и для текущей задачи замены пустых ссылок нулями (цифрой 0) можно: а можно
#29 by Sadovnikov
Ага, уловил. В чем именно бред?
#30 by UPP1977
а теперь вопрос упп - документ РеалТУ - на основании его я делаю печ форму если в поле сделка есть заказ ,номер берем в док отдута - а как в номер подтянуть номер счета (на основании этого заказа)
#31 by zag2art
Понял, что я имею в виду?
#32 by Sadovnikov
+ Имхается мне, что при Поле.Ссылка делается связывание. Отсюда и NULL. Подниму базу на скуле - гляну.
#33 by UPP1977
ЫБРАТЬ    РеализацияТоваровУслуг.ОрганизацияФУ КАК Организация,    РеализацияТоваровУслуг.ДоговорКонтрагента.Наименование КАК Договор1, ГДЕ    РеализацияТоваровУслуг.Ссы
#34 by UPP1977
это  исходный запрос
#35 by zag2art
Давай. Вполне может делаться какое-то ужасно громоздкое и утомительное связывание. Сиквела под рукой не имею. Жду результатов
#36 by zag2art
Наверное соединяй таблицы по основанию
#37 by Sadovnikov
+ Да, действительно, делается связывание. Отсюда и NULL вылезает. Select  Номенклатура,  Номенклатура.Ссылка From Документ.ПоступлениеТоваров.Товары . SELECT _Document5204_VT5206_Q_000_T_001._Fld5208RRef AS f_1, _Reference4329._IDRRef AS f_2 FROM _Document5204_VT5206 _Document5204_VT5206_Q_000_T_001 WITH(NOLOCK) LEFT OUTER JOIN _Reference4329 WITH(NOLOCK) ON _Document5204_VT5206_Q_000_T_001._Fld5208RRef = _Reference4329._IDRRef
#38 by Sadovnikov
И, исходя из , не стоит лишний раз писать Поле.Ссылка.
#39 by UPP1977
это как подскажите конкретно..чарез что таблицы то  цеплять
#40 by UPP1977
через какие реквизиты ..основание нет такого наверно имеется в виду критерий отбора а как его использовать в этом контексте
#41 by zag2art
Как обычно левым соединением, у счета же наверное есть основание...? Вот по нему и соеденяй
Тэги:
Ответить:
Комментарии доступны только авторизированным пользователям

В этой группе 1С