Вниз
Скачать: 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 вся ветка

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



Память: 0.46 MB
Время: 0.031 c
1-1126856777
Alloun
2005-09-16 11:46
2005.10.09
TPageControl


9-1117549211
new1
2005-05-31 18:20
2005.10.09
Динамическое освещение. Лайт Мэпы.


1-1125501595
Dmitrich
2005-08-31 19:19
2005.10.09
Загрузка потока в Excel


2-1124528502
paurlin
2005-08-20 13:01
2005.10.09
Заполнение Grida


4-1123941644
TheGUEST
2005-08-13 18:00
2005.10.09
Создание патча




   Наверх