Поиск в непроиндексированном поле таблицыDelphi , Базы данных , ПоискПоиск в непроиндексированном поле таблицы
Оформил: DeeCo {The following function can be added to your to your unit and called as follows:} Locate(Table1, Table1LName, 'Beman'); {Table1 is your table component, Table1LName is TField you've add with the fields editor (double click on the table component) and 'Beman' is the name you want to find.} {Locate will find SValue in a non-indexed table} function Locate(const oTable: TTable; const oField: TField; const sValue: string): Boolean; var bmPos: TBookMark; bFound: Boolean; begin Locate := False; bFound := False; if not oTable.Active then Exit; if oTable.FieldDefs.IndexOf(oField.FieldName) < 0 then Exit; bmPos := oTable.GetBookMark; with oTable do begin DisableControls; First; while not EOF do if oField.AsString = sValue then begin Locate := True; bFound := True; Break; end else Next; end; if (not bFound) then oTable.GotoBookMark(bmPos); oTable.FreeBookMark(bmPos); oTable.EnableControls; end; Функция Locate позволяет найти строку в непроиндексированной таблице, сравнивая значения поля с заданным значением. Комментарии и вопросыМатериалы статей собраны из открытых источников, владелец сайта не претендует на авторство. Там где авторство установить не удалось, материал подаётся без имени автора. В случае если Вы считаете, что Ваши права нарушены, пожалуйста, свяжитесь с владельцем сайта.
|
||||
©KANSoftWare (разработка программного обеспечения, создание программ, создание интерактивных сайтов), 2007 |