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

Индексация таблицы   Найти похожие ветки 

← →
Вика   (2002-01-26 12:54) [0]

Hужно, что бы индексация Table осуществлялась по введённым символам в эдит.
Причём символы могут находиться в любом месте записи.

Решаю через OnFilterRecord
Accept:=Pos(F1.E1.Text,DateSet["xx"])>0;

Как нить можно сделать, что бы таблица фильтровалась без учёта высоты
введённых символов в эдит? Что бы запись "xxxxxxx xxxxxxxQWxxxx"
оставалась после фильтрации не только по введённому "QW" но и
по "qw" ???

Что то функция foCaseInsensitive в FilterOptions у меня не
заработала, как хотелось бы. Где-то, что-то упустила я....


← →
wicked ©   (2002-01-26 16:41) [1]

можно сделать и так - на событие OnChange в эдите вешаешь обработчик примерно такого содержания:


if F1.E1.Text <> "" then begin
DateSet.Filter := "xx = " + F1.E1.Text + "*";
DateSet.Filtered := true;
end
else DateSet.Filtered := false;


и включаешь foCaseInsensitive в FilterOptions.....
недостатком такого способа - тормоза при больших наборах данных....
более элегантный способ - обойтись без фильтра... ;)
в тот же обработчик написать:

if F1.E1.Text <> "" then
DateSet.Locate("xx", F1.E1.Text, [loCaseInsensitive, loPartialKey]);

подробности смотри в help"е....


← →
Anatoly Podgoretsky ©   (2002-01-26 23:53) [2]

Ты попробовал прежде чем советовать?

2 Вика
Accept:=Pos({Ansi}UpperCase(F1.E1.Text),UpperCase(DateSet["xx"]))>0;

Суть в том, что бы сначала привести к одному регистру.

ЗЫ: это кстати называется фильтрация, а не индексация



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

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



Память: 0.45 MB
Время: 0.006 c
1-66539
SireX
2002-02-04 16:17
2002.02.21
Проблема со скачиванием файлов


3-66490
tovSuhov
2002-01-29 13:51
2002.02.21
ORA-03113


3-66462
vano1
2002-01-25 15:01
2002.02.21
Кодировка


3-66426
savva
2002-01-24 10:00
2002.02.21
Можно ли в хранимой прцедуре InterBase вызывать функции, хранящиеся в самой базе (Functions)


4-66710
Delphimun
2001-12-22 17:37
2002.02.21
Как сделать, чтобы моё приложение нельзя было свернуть или перейти на другую прогу?




   Наверх