поиск производится в ClientDataSet1.
Например шщем вхождение подстроки из Edit1 в любом поле (регистрозависимый):
Код:
var
I : Integer;
F : Boolean;
begin
F := False;
ClientDataSet1.First; // Для поиска с начала. Для поиска с текущей строки надо вызвать метод Next
While Not ClientdataSet1.EOF Do
Begin
For I := 0 To ClientDataSet1.Fields.Count-1 Do
Begin
F := Pos(Edit1.Text,Fields[i].AsString); // Регистрозависимое сравнение. Для независимости обернуть оба параметра в AnsiUpperCase
If F Then Break;
End;
If F Then Break;
ClientDataSet.Next;
End;
If F
Then ShowMessage('Что-то нашли!!!')
Else ShowMessage('Нифига не найдено!!!');
end;
Печать - лучше использовать какой-нить построитель отчетов (QuickReport, FastReport).