Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2002.10.17;
Скачать: CL | DM;

Вниз

Фильтр в ADODataSet   Найти похожие ветки 

 
Sedunov Vitaly   (2002-09-25 09:49) [0]

Доброго времени суток! У меня возникла следующая проблема: при наложении фильтра Table.Filter:="nshort like ""ре%сме%""" (с кавычками все в порядке) не выдается ни одной записи, хотя при select * from Table where nshort like "ре%сме%" выдаются записи. В чем может быть проблема при наложении фильтра? Grid рефрешится - все как положено. Если использовать один знак %, то все работает нормально, т.е. "nshort like ""ре%""" выдает столько же записей сколько и select * from Table where nshort like "ре%". Заранее благодарен.


 
Sedunov Vitaly   (2002-09-25 11:31) [1]

Со * не работает тоже. Помогите, пожалуйста! Поиск по королевству Delphi тоже ничего не дал.


 
Johnmen ©   (2002-09-25 11:46) [2]

Видимо такая функциональность ("ре %сме %") не поддерживается в ADO...
Универсальный обход таких ситуаций - OnFilterRecord


 
Sedunov Vitaly   (2002-09-25 11:52) [3]

А что мне даст OnFilterRecord, если мне этот фильтр установить надо? Видимо, универсальный обход - сформировать DataSet по запросу, если Accepted=False в OnFilterRecord...


 
ЮЮ ©   (2002-09-25 11:55) [4]

а like %сме% работает?
Тогда можно будет
(nshort like ре%) and (nshort like %сме%)


 
Sedunov Vitaly   (2002-09-25 12:06) [5]

Да смысл не в том. Пользователь фильтр вводит с клавиатуры. И фильтр вида %слово%слово% или слово%% не работает. Проблема в двойном знаке процента после первого слова!


 
ЮЮ ©   (2002-09-25 12:11) [6]

А что, пользователю заподло дописать недостающие буквы между ре и сме? Если же это начальные слова многословного поля, то после ввода преобразовать фильтр к виду (nshort like ре%) and (nshort like сме%)


 
Sedunov Vitaly   (2002-09-25 12:22) [7]

ОК! Сейчас напишу универсальную функцию которая будет переформировывать строки фильтра. Я просто думал, что есть способ обойти это при помощи штатных функций Delphi. Раз нет - придется функцию писать или формировать DataSet по запросу.


 
BlackTiger   (2002-09-25 20:20) [8]

Это, видимо, косяк самого компонента Дельфы, а не АДО.
"Table.Filter := "...";" - обрабатывается на клиенте силами самого компонента (TADO...), а "SELECT * FROM..." - отправляется на сервер и обрабатывается там.



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

Текущий архив: 2002.10.17;
Скачать: CL | DM;

Наверх




Память: 0.48 MB
Время: 0.018 c
14-56269
BF7ru
2002-09-20 14:39
2002.10.17
Помогите с PHP, плиз


1-56097
Nikoss
2002-10-08 21:55
2002.10.17
Как узнать код символов


14-56272
Leran2002
2002-09-23 08:56
2002.10.17
Новый сайт


1-56157
Брат
2002-10-07 12:05
2002.10.17
Люди, как перехватить событие минимизации и максимизации окна?


14-56304
Ag2002
2002-09-24 10:43
2002.10.17
Окно CPU