Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2002.12.16;
Скачать: CL | DM;

Вниз

Как отловить исключительную ситуацию, которая возникает, когда я   Найти похожие ветки 

 
Брат ©   (2002-11-26 16:43) [0]

Люди, как отловить исключительную ситуацию, которая возникает, когда я пытаюсь в проиндексированное поле занести одинаковые значения (значения у меня стоят уникальные(UNIQUE))?


 
Johnmen ©   (2002-11-26 16:55) [1]

try


 
exit   (2002-11-26 16:56) [2]


try

except on E: EНазваниеИзОкнаException do
begin
...
end;
end;


 
Брат ©   (2002-11-26 17:25) [3]


> try
>
> except on E: EНазваниеИзОкнаException do
> begin
> ...
> end;
> end;

куда это вставить? В BeforePost не получается....


 
exit   (2002-11-26 17:29) [4]

Для случая с IBX:

type TDataSetErrorEvent = procedure(DataSet: TDataSet; E: EDatabaseError; var Action: TDataAction) of object;


 
exit   (2002-11-26 17:30) [5]

Не докопировал...

property OnPostError: TDataSetErrorEvent;


 
Johnmen ©   (2002-11-26 17:31) [6]

Для начала (перед тупой, извини, вставкой) неплохо бы внимательно прочитать хелп...


 
Брат ©   (2002-11-26 17:32) [7]


> type TDataSetErrorEvent = procedure(DataSet: TDataSet; E:
> EDatabaseError; var Action: TDataAction) of object;

пожалуйста, поподробнее...


 
exit   (2002-11-26 17:35) [8]

Да, криво это все.
Про обработку ошибок в IBDatabase читай на:
http://www.ibase.ru


 
exit   (2002-11-26 17:38) [9]

Брат, ты че? Дави F1.
А для IBX есть Event - OnPostError... я же написал.


 
Diouzshev   (2002-11-26 17:43) [10]

Можно, если подойдет
procedure TForm1.FormCreate(Sender: TObject);
begin
Application.OnException := AppException;

end;

procedure TForm1.AppException(Sender: TObject; E: Exception);

begin
if E.ClassType = {то что ловишь} then
begin
E.Free;
E:= Exception.Create("В угол поставлю!");
end;
Application.ShowException(E);
end;


 
Брат ©   (2002-11-26 17:46) [11]

Он вообще не заходит в OnPostError....


 
Брат ©   (2002-11-26 18:18) [12]


> procedure TForm1.AppException(Sender: TObject; E: Exception);
>
> begin
> if E.ClassType = {то что ловишь} then
> begin
> E.Free;
> E:= Exception.Create("В угол поставлю!");
> end;
> Application.ShowException(E);
> end;

Что-то не получается: вместо {то что ловишь} подставляю EIBInterBaseError - компилятор матерится....



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

Текущий архив: 2002.12.16;
Скачать: CL | DM;

Наверх




Память: 0.49 MB
Время: 0.012 c
1-51777
Th
2002-12-03 16:12
2002.12.16
Вызов метода дедушки


1-51781
LazorenkoX
2002-12-05 00:21
2002.12.16
F1


7-51982
Senka
2002-10-14 18:30
2002.12.16
Учет печати на принтере в Win2k


3-51569
Воропай Андрей
2002-11-25 11:57
2002.12.16
Повторный запуск клиентского приложения не происходит


3-51640
Kurt
2002-11-23 15:43
2002.12.16
Не подскажите как в CtrlGride выделять цветом поля нужных строк?