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

Вниз

Проблема с EDBEditError :(((   Найти похожие ветки 

 
KidMan ©   (2002-10-01 23:47) [0]

Здравствуйте!
Подскажите пожалуйста как перехватить сообщение
ошибки при работе с MaskEdit - DBEditError ?
Ощибка DBConvertError мной прехватывается нормально...
(в TRY-EXCEPT) она происходит когда пытаешься записать
пустое значение MaskEdit... А вот когда стоит просто
написать одну цифру или неверную дату то наступает
это сообщение DBEditError... которая никак не хочет
ловиться и соответственно появляется противное сообщение
дельфей... ((

Заранее всех благодарю...


 
KidMan ©   (2002-10-02 17:57) [1]

Ребят... неужели так и не можете подсказать???


 
Mike Kouzmine   (2002-10-02 18:39) [2]

А исключение возбуждается в этой же секции?


 
KidMan ©   (2002-10-03 22:16) [3]

procedure TForm1.Button1Click(Sender: TObject);
begin
TRY
Table1.Insert;
Table1.FieldByName("DATAISPOL").Value := MaskEdit1.Text;
Table1.Post;
EXCEPT
On E: EDBEditError do
ShowMessage("EDBEditError");
On E: EDatabaseError do
ShowMessage("EDatabaseError");
END;
end;


Вот такой вот небольшой код TRY-EXCEPT перехватывает событие EDatabaseError когда пытаешься записать в базу пустое значение MaskEdit1 или когда введена неправильная
дата типа 33.44.02
А вот когда в поле значение типа 01. . то выходит сообщение

"Project (имя проекта) rised exception class EDBEditError with
message "Invalid input value. " и так далее

Заранее благодарю!


 
KidMan ©   (2002-10-03 23:59) [4]

Ну хоть кто нибудь! Горю!


 
KidMan ©   (2002-10-04 11:18) [5]

Плизззз....


 
gek ©   (2002-10-04 11:26) [6]

Ну так сделай все ошибки перехватит
try
.............
except
on E:Exception do
begin
................
end;


 
KidMan ©   (2002-10-04 22:59) [7]

Уважаемый Гек... мне не ужно перехватывать все ошибки одним except ... в таком случае я мог бы использовать свойство Application.OnException и класс TGlobalExHandler в файле проекта...
Меня это не устраивает потому как в моей программе может быть масса других исключительных ситуаций... Способ представленный вами будет "глушить" все остальные ситуации возникающие в программе... Я уже не говорю об искусственном способе вызова исключительной ситуации rise

Можете что нибудь еще посоветовать?

Заранее благодарю!


 
TTCustomDelphiMaster ©   (2002-10-04 23:31) [8]

А что, трудно проверить значение перед записью?

try
strtodate(MaskEdit1.Text);
Table1.Insert;
Table1.FieldByName("DATAISPOL").Value := MaskEdit1.Text;
Table1.Post;
except
end;

И все. Любые недопустимые значения не будут записываться в базу.


 
KidMan ©   (2002-10-05 00:14) [9]

Спасибо за совет...!
об этой функции я не знал... Попробую однако....


 
KidMan ©   (2002-10-05 00:25) [10]

Сорри но эта функция никак не влияет (смеется когда вспоминает о том что сказал что не знаю о такой функции) Конечо же знал... просто ламернулся по вниманию... и никак не может влиять на исключительную ситуацию возбуждаемую Exception (откровенно смеется) Это просто функция приведения типов...
Вы что то там попутали Уважаемый! ;)) Или может быть вы не знаете что такое понятие исключительной ситуации?? ;))


 
TTCustomDelphiMaster ©   (2002-10-05 00:35) [11]

Вы будете рассуждать или проверите на практике, Уважаемый!!!


 
KidMan ©   (2002-10-05 12:38) [12]

От слов к практике вы говорите? Я попробовал... но не заработало однако... ((
У вас есть еще идеи? Я бы с удовольствие выслушал Вас...

Заранее благодарю...


 
TTCustomDelphiMaster ©   (2002-10-06 16:43) [13]

Действительно не заработает. Извеняюсь, я невнимательно прочитал Ваше сообщение от (01.10.02 23:47). Вам нужно написать потомка TMaskEdit и затереть функцию проверки введенного текста.

type
TMyMaskEdit = class(TMaskEdit)
procedure ValidateEdit; override;
end;

procedure TMyMaskEdit.ValidateEdit;
begin
end;

PS: А почему бы Вам не использовать TDateTimePicker?


 
KidMan ©   (2002-10-06 23:07) [14]

Честно говоря... не нравится мне этот компонент... Ясно становится что за тебя уже кто то поработал... А вот вытаскивать что то новоеиз созданного другим... это уже интереснее... Как в случае маскедит например... ))

Спасибо за совет... завтра попробую... и доложу (улыбается)



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

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

Наверх




Память: 0.5 MB
Время: 0.015 c
14-56298
Polevi
2002-09-23 18:32
2002.10.17
где можно в сети взять Sadist - Tribe ?


1-56137
Viktor1
2002-10-09 12:41
2002.10.17
Прозрачное окно!!!


8-56242
Alex_MIB1
2002-06-15 20:22
2002.10.17
Подскажите правильно ли я делаю кнопки


1-56165
Kacnep
2002-10-07 12:36
2002.10.17
Расчет TRect для текста


14-56283
Администратор
2002-09-21 10:30
2002.10.17
Секс по телефону.