Главная страница
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.037 c
2-1124832965
AIms
2005-08-24 01:36
2005.10.09
Почему возникают тормоза при переходе от массива к такой схеме ?


14-1126869057
Kerk
2005-09-16 15:10
2005.10.09
Спам создает общественное мнение


14-1126702045
Копир
2005-09-14 16:47
2005.10.09
О древних цивилизациях.


3-1125043936
Виталий Панасенко
2005-08-26 12:12
2005.10.09
Возник. ошибки в дес.-тайме при попытке создать экземпляры полей


6-1118748923
atmospheric
2005-06-14 15:35
2005.10.09
Отправка сообщения конкретному клиенту?