Вниз
Скачать: CL | DM;

ADOQuery.Filter   Найти похожие ветки 

← →
DPetrovich ©   (2002-09-17 12:19) [0]

Подскажите, пожалуйста, почему когда я пишу
ADOQuery.Filter="not pole=0"
возникает ошибка
Аргументы имеют неверный тип, выходят за пределы доаустимого диапозона или вступают в конфликт друг с другом.,
а вот когда
ADOQuery.Filter="pole<>0",
то всё нормально?


← →
Anatoly Podgoretsky ©   (2002-09-17 12:23) [1]

Ну со вторым все понятно, логично, а вот что бы значила первая конструкция?


← →
DPetrovich ©   (2002-09-17 12:34) [2]

как что? Я полагал, что то что в свойстве Filter по синтаксису такое же как после where, я ж пишу
select * from Table1 where not pole=0
также по идее и здесь должно быть...


← →
ЮЮ ©   (2002-09-17 12:35) [3]

попробуй
ADOQuery.Filter="not (pole=0)"
по крайней мере в SQL
not field1 is null - ошибка,
а
not (field1 is null) работает


← →
DPetrovich ©   (2002-09-17 12:39) [4]

>>ЮЮ © (17.09.02 12:35)
не помогает


← →
Anatoly Podgoretsky ©   (2002-09-17 12:46) [5]

DPetrovich © (17.09.02 12:34)
А надо не полагать, фильтр это не SQL запрос
pole у тебя явно не логического типа и применить к нему операцию NOT нельзя


← →
DPetrovich ©   (2002-09-17 12:50) [6]

Anatoly Podgoretsky © (17.09.02 12:46)
А я применя not не к pole, а к выражению
pole=0, которое логическое


← →
Mike Kouzmine   (2002-09-17 13:21) [7]

А в чем проблема-то? Пиши pole<>0. А ты уверен, что парсер поддерживает конструкцию not(pole=0)?


← →
Johnmen ©   (2002-09-17 13:29) [8]

>Mike Kouzmine (17.09.02 13:21)

Судя по хелпу - поддерживается...:)
Почему не работает у автора - непонятно...


← →
Mike Kouzmine   (2002-09-17 13:35) [9]

Нда...


← →
DPetrovich ©   (2002-09-17 14:12) [10]

>>Mike Kouzmine (17.09.02 13:21)
Проблема в том, что я использую dxDBGrid, который при фильтрациий генерит строку имеено в таком виде (not (pole=0)), после этого возникает ошибка, при формировании строки ручками - аналогично. Приходится переформировывать строку без not, но это как-то не спортивно...


← →
DPetrovich ©   (2002-09-17 14:14) [11]

>>Mike Kouzmine (17.09.02 13:21)
А что такое парсер?


← →
Mike Kouzmine   (2002-09-17 14:20) [12]

разбиратель выражения.
Тут обнаружил:
include a space between comparison values and comparison operators in filter expressions. For instance, ensure that there is a space after the field name and before the operator.
Может из-за этого


← →
DPetrovich ©   (2002-09-17 14:38) [13]

Mike Kouzmine (17.09.02 14:20)
Спасибо, но не помогает :(


← →
Johnmen ©   (2002-09-17 15:07) [14]

А вот безумное предложение - not большими буквами....
NOT (pole = 0)


← →
DPetrovich ©   (2002-09-17 16:22) [15]

не, все восемь вариантов перепробовал - не помогает


← →
Johnmen ©   (2002-09-17 16:29) [16]

Мда....
Перепробуй варианты обозначения NOT, типа !
Иначе остается только не париться и pole<>0 :^))))


← →
DPetrovich ©   (2002-09-17 16:40) [17]

Это не спортивно ;)


← →
kig ©   (2002-09-17 16:43) [18]

Вообше-то проще здесь посмотреть, какой синтаксис поддерживает АДО в фильтре
http://msdn.microsoft.com/library/default.asp?url=/library/en-us/ado270/htm/mdprofilter.asp



Страницы: 1 вся ветка

Скачать: CL | DM;



Память: 0.48 MB
Время: 0.012 c
1-21001
stream2k
2002-09-26 15:38
2002.10.07
Окрытие gif, png, tiff и др. форматов изображений в.


14-21247
Быков Николай
2002-09-12 15:19
2002.10.07
Простыл


3-20920
BCPP_Builder_Dev
2002-09-17 11:41
2002.10.07
Коллеги! Помогите разобраться с сортировкой, вопрос банальный!!!


1-20987
zsv
2002-09-20 06:44
2002.10.07
Как напечатать StringGrid?


6-21186
VID
2002-08-05 13:48
2002.10.07
Проблема при дисконнекте




   Наверх