Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > БД в Delphi
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 03.06.2009, 18:22   #1
teenboy
Новичок
Джуниор
 
Регистрация: 03.06.2009
Сообщений: 1
По умолчанию Не могу организовать поиск!

Дана база данных(ADO).
Были размещены для поиска компоненты edit и button
Вот код, при помощи которого хочу организовать поиск:

procedure TForm1.Button1Click(Sender: TObject);
var
LocOpts: TLocateOptions;
LocFields: string;
LocValues: variant;
begin
LocOpts:=[];
LocFields:='Transport';
if Length(Edit1.Text)>0 then
begin
LocFields:=LocFields+';zakazcik';
LocValues:=VarArrayCreate([0,1],varVariant);
LocValues[0]:=edit1.Text;
LocValues[1]:=edit2.Text;
end
else
LocValues:=Edit1.Text;
query1.Locate(LocFields,LocValues, [loPartialKey, loCaseInsensitive]);
end;


При нажатии кнопки выскакивает ошибка. Вот ее содержание:

query1: Cannot perform this operation on a closet dataset.

Иногда выскакивает ошибка: Circular datalinks are not allowed.

Что делать??? Код программы вроде правильный.
Таблица формата access. Среда разработки Delphi 6 Enterprise(on Vista).
Или подскажите, как лучше организовать поиск(выборку.)


Заранее спасибо за помощь!
teenboy вне форума Ответить с цитированием
Старый 03.06.2009, 18:32   #2
Sparky
Участник клуба
 
Аватар для Sparky
 
Регистрация: 15.05.2009
Сообщений: 1,222
По умолчанию

а ты открываешь query1?
Единственное, что ограничивает полет мысли программиста-компилятор
Sparky вне форума Ответить с цитированием
Старый 04.06.2009, 07:19   #3
S@fer
Форумчанин
 
Аватар для S@fer
 
Регистрация: 29.01.2009
Сообщений: 411
По умолчанию

Сделайте поиск в запросе
Код:
procedure TForm1.Button1Click(Sender: TObject);
begin
ADOQuery1.Active:=False;
  ADOQuery1.SQL.Clear;
  ADOQuery1.SQL.Add('SELECT * FROM [Tablica] WHERE [FIO] LIKE "%'+Edit_Search.Text+'%"');
  ADOQuery1.Active:=True;
end;
S@fer вне форума Ответить с цитированием
Старый 03.05.2010, 17:17   #4
greendoom
Пользователь
 
Аватар для greendoom
 
Регистрация: 25.04.2010
Сообщений: 11
Подмигивание

Цитата:
Сообщение от S@fer Посмотреть сообщение
Сделайте поиск в запросе
Код:
procedure TForm1.Button1Click(Sender: TObject);
begin
ADOQuery1.Active:=False;
  ADOQuery1.SQL.Clear;
  ADOQuery1.SQL.Add('SELECT * FROM [Tablica] WHERE [FIO] LIKE "%'+Edit_Search.Text+'%"');
  ADOQuery1.Active:=True;
end;
спасибо, дружище!! ты меня выручил!!
greendoom вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Подскажите как организовать поиск в строке, с возможностью вставлять разные фильтры ну по типу Wadimka Общие вопросы Delphi 2 18.05.2009 17:03
Не могу организовать цикл удаления файлов dolphin705 Общие вопросы Delphi 5 08.05.2009 13:39
с помощью ICQ Client организовать поиск пользователей? DeDoK Компоненты Delphi 0 11.01.2008 08:42
как организовать поиск по дате... Pitbull БД в Delphi 18 24.06.2007 22:28
Как организовать поиск интервала дат через SQL Selena Общие вопросы Delphi 1 14.03.2007 01:25