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

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

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

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 17.08.2010, 16:48   #1
vsa_210465
 
Регистрация: 19.06.2010
Сообщений: 5
По умолчанию Проблема с сообщением пользователю

Доброго времени суток. Столкнулся с такой проблемой. Delphi7,ADO. Осуществляю выборку из ADOQuery:
Код:
procedure TForm4.SpeedButton4Click(Sender: TObject);
begin
if Length(Edit1.Text)>0 then
begin
DataModule6.Query_Country.Active:=false;
DataModule6.Query_Country.SQL.Clear;
DataModule6.Query_Country.SQL.Add('SELECT * FROM Country WHERE Country LIKE '+#39+Edit1.Text+'%'+#39);
DataModule6.Query_Country.Active:=true;
end;
Все супер работает.
Если такой записи нет мне надо пользователю сообщить,что то,что он ищет,не существует в базе,т.е. вывести сообщение типа:"Такой записи нет!"
Добавляю код:
Код:
begin
if MessageBox(Application.Handle,
PChar('Такой записи нет!'),
PChar ('Архив ver.1.0'),MB_OK+MB_ICONINFORMATION)=IDOK then
begin
DataModule6.Query_Country.Active:=false;
DataModule6.Query_Country.SQL.Clear;
DataModule6.Query_Country.SQL.Add('SELECT * FROM Country');
DataModule6.Query_Country.Active:=true;
end;
Вот тут-то и начинается проблема. Ввожу имеющееся в справочнике значение, программа отрабатывает, показывает запись, но следом идет сообщение "Такой записи нет!".
Подскажите,пожалуйста, что я делаю неправильно.
Спасибо

Последний раз редактировалось Stilet; 17.08.2010 в 17:02.
vsa_210465 вне форума Ответить с цитированием
Старый 17.08.2010, 17:07   #2
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

Код:
procedure TForm4.SpeedButton4Click(Sender: TObject);
begin
if Length(Edit1.Text)>0 then
begin
DataModule6.Query_Country.Active:=false;
DataModule6.Query_Country.SQL.Clear;
DataModule6.Query_Country.SQL.Add('SELECT * FROM Country WHERE Country LIKE '+#39+Edit1.Text+'%'+#39);
DataModule6.Query_Country.Active:=true;

if (DataModule6.Query_Country.Eof)
 and(MessageBox(Application.Handle,PChar('Такой записи нет!'),
       PChar ('Архив ver.1.0'),MB_OK+MB_ICONINFORMATION)=IDOK) then begin
 DataModule6.Query_Country.Active:=false;
 DataModule6.Query_Country.SQL.Clear;
 DataModule6.Query_Country.SQL.Add('SELECT * FROM Country');
 DataModule6.Query_Country.Active:=true;
end;
end;
Смысл ясен?
I'm learning to live...
Stilet вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
как добавить отзыв пользователю? Тигран001 О форуме и сайтах клуба 19 10.04.2011 15:38
Форма с сообщением AlexDn JavaScript, Ajax 7 07.07.2010 16:18
закрыть доступ одному пользователю mars56 Безопасность, Шифрование 3 11.12.2009 11:31
Назначение прав локальному пользователю kabo3d Операционные системы общие вопросы 1 02.11.2009 07:58
Помощь пользователю! Oleg Romanchuk БД в Delphi 10 27.08.2007 07:22