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

Вниз

Отключить сообщение Debugger EConvertError   Найти похожие ветки 

 
КиТаЯц ©   (2005-09-21 07:09) [0]

Проверка корректности вводимой даты. Делаю так
function DateCorrect(InDate: string): boolean;
       begin
         try
           StrToDate(InDate);
           result:= True;
           except
             result:= False;
           end;
       end;

Вроде все работает, но... Одно неудобство. Приложение запускается из под Дельфи.  Работаю с включенным отладчиком (нада). Функция вызывается в цикле достаточно часто, и, каждый раз, при некорректном формате даты отладчик стопорит процесс.
Как отключить сообщение отладчика об ошибке? Что написать? Или есть стандартная функция проверки корректности даты?
Спасибо.


 
ShiFT   (2005-09-21 07:24) [1]

При Try-Except незапуская под отладчиком.


 
КиТаЯц ©   (2005-09-21 07:40) [2]

> ShiFT   (21.09.05 07:24) [1]
Спасибо.
Постараюсь перефразировать вопрос: как сделать чтобы НЕ отключая отладчик проверить корректность вводимой даты так чтобы отладчик не стопорил процесс при таки некорректной дате?


 
ANB ©   (2005-09-21 07:51) [3]

Можно отключить остановку отладчика на ошибках. Не очень удобно, но помогает.


 
ЮЮ ©   (2005-09-21 08:59) [4]

Проверить на корректность самому. Не так уж и сложно. Вот, например, функция из DateUtils:

function IsValidDate(const AYear, AMonth, ADay: Word): Boolean;
begin
 Result := (AYear >= 1) and (AYear <= 9999) and
           (AMonth >= 1) and (AMonth <= 12) and
           (ADay >= 1) and (ADay <= DaysInAMonth(AYear, AMonth));
end;

Осталось лиши "распарсить" твою строку: выделить год, день и месяц.
З.Ы. StrToIntDef и Val позволят "конвертировать" строку в целое без Exception


 
КиТаЯц ©   (2005-09-21 09:59) [5]

> ЮЮ ©   (21.09.05 08:59) [4]
Спасибо. То что надо. :)


 
begin...end ©   (2005-09-21 12:45) [6]

> КиТаЯц ©   (21.09.05 07:09)
> Или есть стандартная функция проверки корректности даты?

Есть. TryStrToDate.


 
КиТаЯц ©   (2005-09-21 14:47) [7]

>begin...end ©   (21.09.05 12:45) [6]
!!! Спасибо :)



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

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

Наверх




Память: 0.48 MB
Время: 0.028 c
1-1127217496
Andrew777
2005-09-20 15:58
2005.10.09
Как перехватить нажатие мультемедийной клавиши?


14-1127216130
Profi
2005-09-20 15:35
2005.10.09
Нужна помощь с железом


3-1124947076
Бугага
2005-08-25 09:17
2005.10.09
Как спроектировать базу?


6-1118644598
GekaNaz
2005-06-13 10:36
2005.10.09
Как скачать файл по HTTP протоколу?


14-1126755274
КаПиБаРа
2005-09-15 07:34
2005.10.09
Ажиотаж вокруг ФК Терек