Переключение на Главную Страницу Страницы: 1 ОтправитьПечать
Обычная тема Как в запросе при помощи ODBCRecordset сделать условие по пустому реквизиту (число прочтений - 1792 )
es3000
God Member
*****
Отсутствует



Сообщений: 536
Зарегистрирован: 10. Июля 2006
Как в запросе при помощи ODBCRecordset сделать условие по пустому реквизиту
09. Марта 2010 :: 08:32
Печать  
есть такой запрос:
Код
Выбрать все
RS = СоздатьОбъект("ODBCRecordset");
	RS.УстБД1С();
	ТекстЗапроса = "
	|SELECT
	|	Спр.ID as [Элемент $Справочник.ФизическиеЛица],
	|   Спр.Descr as Наименование,
	|FROM
	|   $Справочник.ФизическиеЛица as Спр
	|WHERE
	|   ($Спр.ДатаДоговора = :ПараметрДата~)
	|";
	RS.УстановитьТекстовыйПараметр("ПараметрДата", ВыбДата);
	ТЗ = RS.ВыполнитьИнструкцию(ТекстЗапроса);
	//ТЗ.ВыбратьСтроку();
 



В него надо добавить еще одно условие: надо выбрать всех физлиц, у которых реквизит РайонГорода - ссылка на другой справочник - равен пустому значению.

Как правильно написать?
  
Наверх
ICQ  
IP записан
 
es3000
God Member
*****
Отсутствует



Сообщений: 536
Зарегистрирован: 10. Июля 2006
Re: Как в запросе при помощи ODBCRecordset сделать условие по пустому реквизиту
Ответ #1 - 09. Марта 2010 :: 08:34
Печать  
Извиняюсь поторопился...
В документации все написано:
$ПустойИД13 или $ПустойИД.

А какая между ними разница?
  
Наверх
ICQ  
IP записан
 
es3000
God Member
*****
Отсутствует



Сообщений: 536
Зарегистрирован: 10. Июля 2006
Re: Как в запросе при помощи ODBCRecordset сделать условие по пустому реквизиту
Ответ #2 - 09. Марта 2010 :: 08:50
Печать  
такое условие:
Код
Выбрать все
RS = СоздатьОбъект("ODBCRecordset");
	RS.УстБД1С();
	ТекстЗапроса = "
	|SELECT
	|	Спр.ID as [Элемент $Справочник.ФизическиеЛица],
	|   Спр.Descr as Наименование
	|FROM
	|   $Справочник.ФизическиеЛица as Спр
	|WHERE
	|   ($Спр.РайонГорода <> $ПустойИД13)
	|";
 



не срабатывает, все равно в результату попадают физлица с пустым районом.

Пробовал $ПустойИД (вместо $ПустойИД13) - то же самое

Подскажите плиз?
  
Наверх
ICQ  
IP записан
 
slawa
Full Member
***
Отсутствует


I Love YaBB 2!

Сообщений: 125
Зарегистрирован: 05. Октября 2006
Re: Как в запросе при помощи ODBCRecordset сделать условие по пустому реквизиту
Ответ #3 - 09. Марта 2010 :: 08:51
Печать  
Тебе нужно использовать ПустойИД.
ПустойИД13 использовался бы в том случае если тип поля был "Справочник", без указания конкретного вида.
  
Наверх
 
IP записан
 
es3000
God Member
*****
Отсутствует



Сообщений: 536
Зарегистрирован: 10. Июля 2006
Re: Как в запросе при помощи ODBCRecordset сделать условие по пустому реквизиту
Ответ #4 - 09. Марта 2010 :: 08:53
Печать  
не срабатывает
  
Наверх
ICQ  
IP записан
 
es3000
God Member
*****
Отсутствует



Сообщений: 536
Зарегистрирован: 10. Июля 2006
Re: Как в запросе при помощи ODBCRecordset сделать условие по пустому реквизиту
Ответ #5 - 09. Марта 2010 :: 08:57
Печать  
а все разобрался - работает - спасибо огромное
  
Наверх
ICQ  
IP записан
 
slawa
Full Member
***
Отсутствует


I Love YaBB 2!

Сообщений: 125
Зарегистрирован: 05. Октября 2006
Re: Как в запросе при помощи ODBCRecordset сделать условие по пустому реквизиту
Ответ #6 - 09. Марта 2010 :: 09:02
Печать  
ПустойИД это обычная подстановка строки "     0   "
Ссылка на справочник это строка.
Посмотри чему равно значение поля $Спр.РайонГорода для тех элементов у которых эта ссылка пустая.
  
Наверх
 
IP записан
 
Переключение на Главную Страницу Страницы: 1
ОтправитьПечать