Поддержка / Donate
 

WebMoney

Яндекс.Деньги

SMS.Копилка
Деньги@Mail.ru
Rupay
E-gold
PayPal

 

Благодарю за поддержку!

Лента RSS - Новости сайта Новости сайта
Лента RSS - Новости форума Новости форума
Добавить в закладки и поделиться Bookmark and Share

 

Архив исходников

 


Automatic translation

 
English German French
Italian Spanish Portuguese
Greece Japan Chinese
  Korean  

  

 

  Форум  

Delphi FAQ - Часто задаваемые вопросы

| Базы данных | Графика и Игры | Интернет и Сети | Компоненты и Классы | Мультимедиа |
| ОС и Железо | Программа и Интерфейс | Рабочий стол | Синтаксис | Технологии | Файловая система |



Google  
 

Поиск в непроиндексированном поле таблицы

Оформил: DeeCo
Автор: http://www.swissdelphicenter.ch

{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;



Источник - Проект "Delphi World" © Выпуск 2002 - 2004
Автор проекта: Акулов Николай



   Rambler's Top100             Яндекс цитирования