Текущий архив: 2003.12.23;
Скачать: CL | DM;
Вниз
регистр и dbase Найти похожие ветки
← →
Вован (2003-11-26 22:55) [0]Люди помогите-е-е... пожалуйста!!!
Как сделать нечувствительность к регистру при поиске по какому-то индексу в delphi. Пробовал поменять в IndexDefs свойство ixCaseInsensitive на true - не помогает!
Что делать?
← →
Michail Dalakov (2003-11-26 23:12) [1]function Locate(const KeyFields: String; const KeyValues: Variant; Options: TLocateOptions)
type
TLocateOption = (loCaseInsensitive, loPartialKey);
TLocateOptions = set of TLocateOption;
← →
AbrosimovA © (2003-11-27 09:05) [2]По-моему ixCaseInsensitive начинает работать при повторном создании индекса.
← →
Alex_Bredin © (2003-11-27 10:19) [3]возможно дело вовсе не в регистре
опиши проблему подробнее
← →
Вован (2003-11-27 21:28) [4]Alex_Bredin: Именно в этом, если я ввожу Мама или мама, необхадимо чтобы результат поиска был один и тот же...Спасибо.
Главное поиск...
← →
Вован (2003-11-27 21:28) [5]Michail Dalakov: Спасибо! Ща попробую...
← →
Вован (2003-11-27 22:28) [6]function Locate(const KeyFields: String; const KeyValues: Variant; Options: TLocateOptions)
type
TLocateOption = (loCaseInsensitive, loPartialKey);
TLocateOptions = set of TLocateOption;
Чё-то как-то не помагло...Есть DataModule, DataSource...
А я искал через setkey->gotoNearest;
Может есть какие-то API определяющие или изменяющие регистр...
обхадной путь придумать... Ну кто-нибудь помогите!!!
Lookup тоже попробовал...
← →
Anatoly Podgoretsky © (2003-11-28 07:30) [7]Сделай индекс по выражени. следующего типа UPPER(Fld)
← →
AbrosimovA © (2003-11-28 15:35) [8]Я делал так, работает и для кириллицы:
procedure TMainForm.SortBtnClick(Sender: TObject);
var IOp: TIndexOptions;
begin
Case SetSort.ItemIndex of
0: IOp:=[];
1: IOp:=[ixDescending];
end;
Case DBGrid1.SelectedIndex of
0: with DataModule1.Cust do begin
Close;
Exclusive:=true;
if IndexDefs.Find("iFio").Name<>"" then DeleteIndex("iFio");
AddIndex("iFio","Fio",Iop);
IndexName:="iFio";
Exclusive:=false;
Open;
end;
1: with DataModule1.Cust do begin
Close;
Exclusive:=true;
if IndexDefs.Find("iAddress").Name<>"" then DeleteIndex("iAddress");
AddIndex("iAddress","Address",Iop);
IndexName:="iAddress";
Exclusive:=false;
Open;
end;
2: with DataModule1.Cust do begin
Close;
Exclusive:=true;
if IndexDefs.Find("iSpec").Name<>"" then DeleteIndex("iSpec");
AddIndex("iSpec","Spec",Iop);
IndexName:="iSpec";
Exclusive:=false;
Open;
end;
3: with DataModule1.Cust do begin
Close;
Exclusive:=true;
if IndexDefs.Find("iWorkTel").Name<>"" then DeleteIndex("iWorkTel");
AddIndex("iWorkTel","WorkTel",Iop);
IndexName:="iWorkTel";
Exclusive:=false;
Open;
end;
4: with DataModule1.Cust do begin
Close;
Exclusive:=true;
if IndexDefs.Find("iHomeTel").Name<>"" then DeleteIndex("iHomeTel");
AddIndex("iHomeTel","HomeTel",Iop);
IndexName:="iHomeTel";
Exclusive:=false;
Open;
end;
end;
end;
Страницы: 1 вся ветка
Текущий архив: 2003.12.23;
Скачать: CL | DM;
Память: 0.48 MB
Время: 0.021 c