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

Не могу перехватиить ошибку в запросе   Найти похожие ветки 

 
DimChan ©   (2003-09-30 08:03) [0]

Не могу перехватиить ошибку в запросе, возникающую при PFind = " " ":

function FuncFindPolPlat (Query: TQuery; PFind: String;MObject:TDBGrid):String;
// Моя первая функция в Delphi 5.0 (типа справки или Help"a)
Begin

//Выключить запрос
Query.Active := false;
//Очистка запроса
Query.SQL.Clear;
//Текст запроса на выборку Плательщик/Получатель
Query.SQL.Add
("SELECT * FROM "PlatAndPoluch.DB" Platandpoluch WHERE Name LIKE ""
+ PFind + "%"");
//Включить запрос
Query.Active := true;

//Проверка на наличие пустых строк
try
if (Query.FieldByName ("Name").asString = "") or (PFind = "") then
begin
MObject.Visible := false;
end else
begin
MObject.Visible := true;
end;
except
on DBTables. EDBEngineError do showMessage ("Текст просьба вводить без кавычек!!!");
end;
end;


 
DimChan ©   (2003-09-30 08:12) [1]

Помогите пожалуйста, потому что это тоже не проходит:

try
if (Query.FieldByName ("Name").asString = "") or (PFind = "") then
begin
MObject.Visible := false;
end else
begin
MObject.Visible := true;
end;
except
on EDBEngineError do showMessage ("Текст просьба вводить без кавычек!!!");
end;


 
kaif ©   (2003-09-30 08:18) [2]

with Query do
begin
Close;
SQL.Text :=
"SELECT * FROM "PlatAndPoluch.DB" Platandpoluch"#13+
"WHERE Name LIKE :PFind";
ParamByName("PFind").AsString := QuotedStr(PFind + "%");
Open;
end;


 
kaif ©   (2003-09-30 08:23) [3]

Предыдущее решение - это решение проблемы, что вообще нужно что-то ловить. Функция QuotedStr заменит кавычки в тексте на пары кавычек и запрос будет работать без сбоев.

А что касается исключений, то у тебя синтаксис неправильный:

try
сюда нужно сунуть Quaery.Active := True;
except
on E: EDBEngineError do showMessage(
"Текст просьба вводить без кавычек!!!");
end;


 
DimChan ©   (2003-09-30 08:35) [4]

Спасибо...8-))



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

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



Память: 0.46 MB
Время: 0.017 c
3-27405
Виталий
2003-09-21 19:33
2003.10.09
Запрет на перемещение колонок в DBGrid


7-27758
Константин
2003-07-23 22:31
2003.10.09
Как изменить разрешение экрана?


8-27613
Вячеслав В.К.
2003-06-06 08:47
2003.10.09
Необходимо получить изображение с USB видеокамеры


14-27643
Johnny Smith
2003-09-19 15:53
2003.10.09
Опрос на тему:


3-27384
Lamer1
2003-09-18 16:17
2003.10.09
Проблемы с TClientDataSet




   Наверх