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

Вопрос поиска.   Найти похожие ветки 

← →
Mih   (2004-11-04 15:30) [0]

Для поиска записи пишу таким образом:
procedure TForm1.Edit1KeyPress(Sender: TObject; var Key: Char);
var strField: String;
begin
  if Key = #13 then begin
  if Edit1.Text="" then begin
   MessageDlg ("Не заданы условия поиска!", mtInformation, [mbOK], 0);
   end
   Else
   case RadioGroup1.ItemIndex of
   0:strField:="TN";
   1:strField:="FAM";
   end;
   if not Table1.Locate(strField, Edit1.Text, [loCaseInsensitive]) then begin
   Beep;
   MessageDlg ("Запись не найдена!", mtInformation, [mbOK], 0);
   end;
end;
end;

Так как табельные номера (TN) не повторяются, здесь никаких проблем. А с фамилиями (FAM) проблема в том, что нахожу только первую запись. Подскажите, пожалуйста, как сделать, чтобы последовательно были найдены все фамилии.
Спасибо.


← →
Mih   (2004-11-04 15:51) [1]

Удалено модератором


← →
Johnmen ©   (2004-11-04 15:58) [2]

Бежишь по набору данных, от начала до конца, и проверяешь каждую запись на удовлетворение своих условий...


← →
Mih   (2004-11-04 16:17) [3]

Johnmen ©   (04.11.04 15:58) [2]
А можно пример?


← →
Johnmen ©   (2004-11-04 16:24) [4]

Table1.First;
while not Table1.Eof do begin;
 if AnsiUpperCase(Table1.FieldByName(strField).AsString)=AnsiUpperCase(Edit1.Text) then
 <найдено, делаем своё дело>;
 Next;
 end;


← →
Mih   (2004-11-08 10:21) [5]

Johnmen ©   (04.11.04 16:24) [4]
Только сегодня смог увидеть.
Спасибо!!!



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

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



Память: 0.45 MB
Время: 0.034 c
1-1100684507
Богдан
2004-11-17 12:41
2004.12.05
Заполнение полей TEdit


14-1099934080
ИМХО
2004-11-08 20:14
2004.12.05
Вопрос тем, кто юзает ноутбуки


3-1099569880
Term
2004-11-04 15:04
2004.12.05
есть автоинкрементное поле, как сделать чтобы отчёт снова начался


1-1100579553
ККВ
2004-11-16 07:32
2004.12.05
Количество фом проекта


9-1089441229
OSokin
2004-07-10 10:33
2004.12.05
Создание логических игр




   Наверх