![]() |
|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
![]() |
|
|
Опции темы | Поиск в этой теме |
![]() |
#1 |
Форумчанин
Регистрация: 28.09.2011
Сообщений: 250
|
![]()
Доброе утро всем форумчанам.
У меня тут нарисовалась проблемка, которую я пока не могу никак решить... Имеется ADOQuery, с SQL запросом Код:
Код:
Но когда я добавляю другой фильтр: Код:
"Аргументы имеют неверный тип, выходят за пределы допустимого диапозона или вступают в конфликт друг с другом" Понимаю, что можно просто переписать запрос в АДОшке, но в связи с тем что там куда данных, всё будет очень долго грузится... Следовательно, мне нужно как то правильно записать фильтр... Но у меня не выходит... Что я делаю не правильно? Подскажите ... |
![]() |
![]() |
![]() |
#2 |
Старожил
Регистрация: 17.11.2010
Сообщений: 18,922
|
![]()
Известный глюк датасета. По-моему так решается
Код:
Если бы архитекторы строили здания так, как программисты пишут программы, то первый залетевший дятел разрушил бы цивилизацию
|
![]() |
![]() |
![]() |
#3 |
Форумчанин
Регистрация: 28.09.2011
Сообщений: 250
|
![]()
Ну, я понял, что можно скобки раскрыть.
Просто ситуация в том, что у меня куча куча ключей с условиями or, и пару ключей с and. Будет очень очень большая строка фильтра... |
![]() |
![]() |
![]() |
#4 |
Старожил
Регистрация: 17.11.2010
Сообщений: 18,922
|
![]()
Ну не совсем просто скобки раскрыть. Посмотри внимательно на условие из #2. Не нравится - используй OnFilterRecord. Там уж нагородить условий можно любых. А еще лучше в запросе фильтровать. И длинные условия в Filter ни когда и не пихал, не знаю как оно будет себя вести, и вообще практически не использую такой способ фильтрования
Если бы архитекторы строили здания так, как программисты пишут программы, то первый залетевший дятел разрушил бы цивилизацию
Последний раз редактировалось Аватар; 28.01.2016 в 09:45. |
![]() |
![]() |
![]() |
#5 | |
Старожил
Регистрация: 09.01.2008
Сообщений: 26,229
|
![]()
думаю, что вместо
Цитата:
Код:
поэтому пытается сделать 22 and (...) и выдаёт ошибку. В остальном я согласен с тем, что советует Аватар. onFilterRecord, конечно, не панацея, но иногда его удобнее использовать, чем пытаться сложный фильтр заставить работать. Особенно если есть поля типа Datе, Time и т.п. |
|
![]() |
![]() |
![]() |
#6 | ||
Старожил
Регистрация: 17.11.2010
Сообщений: 18,922
|
![]() Цитата:
https://msdn.microsoft.com/en-US/lib...bts.10%29.aspx Цитата:
Если бы архитекторы строили здания так, как программисты пишут программы, то первый залетевший дятел разрушил бы цивилизацию
|
||
![]() |
![]() |
![]() |
#7 |
Просветитель
Участник клуба
Регистрация: 26.12.2012
Сообщений: 1,844
|
![]()
А нельзя так?
Код:
В разработке: воспроизводственный контур ИТ
|
![]() |
![]() |
![]() |
#8 |
Старожил
Регистрация: 17.11.2010
Сообщений: 18,922
|
![]()
Такого и SQL не поймет. Хотя может и придумали такое расширение для каких-то СУБД в новых версиях. А Filter вообще об IN понятия не имеет
Если бы архитекторы строили здания так, как программисты пишут программы, то первый залетевший дятел разрушил бы цивилизацию
|
![]() |
![]() |
![]() |
#9 |
Форумчанин
Регистрация: 28.09.2011
Сообщений: 250
|
![]()
Аватар прав.
Не катит. IN тоже не работает. И Between не работает ...... Сделал, как посоветовал Аватар Код:
Всем спасибо, тему можно закончить ![]() |
![]() |
![]() |
![]() |
#10 |
Старожил
Регистрация: 09.01.2008
Сообщений: 26,229
|
![]() |
![]() |
![]() |
![]() |
|
![]() |
||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Filter cannot be opened | BoozZzilla | БД в Delphi | 7 | 26.12.2012 16:58 |
проблемы с AdoQuery | Azam693 | Помощь студентам | 2 | 23.02.2012 20:16 |
2 проблемы: вставка в ADODataset и с ADOQuery | Шани | БД в Delphi | 18 | 23.07.2008 20:38 |