Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > БД в Delphi
Регистрация

Восстановить пароль

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 08.10.2008, 01:10   #1
photozaz
Пользователь
 
Регистрация: 05.04.2008
Сообщений: 66
По умолчанию Отладка даты в Table

в компоненте Table1 имется колонка "Дата рождения" с установленным типом Date(т.е. формат например 12.07.2008). Подскажите, как можно можно отладить эту колонку, ну что бы при вводе в некорректном формате (например: '000.04.1980" или просто текст ) выводилось сообщение об ошибке.
заранее благодарен!
photozaz вне форума Ответить с цитированием
Старый 08.10.2008, 08:42   #2
Yurk@
Участник клуба
 
Аватар для Yurk@
 
Регистрация: 19.12.2007
Сообщений: 1,100
По умолчанию

Код:
function ScanDate(S:string):boolean;
var
i, iSL:integer;
begin
iSL:=0;
Result:=False;
if S>'' then
  begin
  for i:=1 to 10 do
  if S[i]='.' then Inc(iSL);
  if (iSL=2) AND (S[3]='.') AND (S[6]='.')
  then
    Result:=True
  else DM.ShowMess('Некоректне значення поля дати. Потрібний формат дати (ДД.ММ.РРРР)');
  end;
end;
Проверка на корректность разстановки точек в дате!
На форуме: Помогаю за спасибо
ICQ\Skype: Это моё личное время ...
Yurk@ вне форума Ответить с цитированием
Старый 08.10.2008, 10:49   #3
Gorychev
Участник клуба
 
Аватар для Gorychev
 
Регистрация: 08.03.2008
Сообщений: 1,537
По умолчанию

Цитата:
Проверка на корректность расстановки точек в дате!
А если ввести FF.FF.FFFF, или 99.88.7777? Чтоб функция нормально работала, ее нужно существенно усложнить. Впрочем это уже забота автора.
Того же эффекта можно добиться с помощью copy
Код:
function ScanDate(S:string):boolean;
begin
  Result:=(copy(s,3,1)='.') and (copy(s,6,1)='.');
end;
Лучше использовать MSAccess, там есть тип поля Дата\время в котором можно указать маску ввода. И все дела.
Gorychev вне форума Ответить с цитированием
Старый 09.10.2008, 12:07   #4
Andrei
Форумчанин
 
Регистрация: 20.06.2007
Сообщений: 270
По умолчанию

Цитата:
Сообщение от photozaz Посмотреть сообщение
в компоненте Table1 имется колонка "Дата рождения" с установленным типом Date(т.е. формат например 12.07.2008). Подскажите, как можно можно отладить эту колонку, ну что бы при вводе в некорректном формате (например: '000.04.1980" или просто текст ) выводилось сообщение об ошибке.
заранее благодарен!
Функция TryStrToDate из модуля SysUtils поможет вам. Аналогичная тема обсуждалась http://www.programmersforum.ru/showthread.php?t=25854
-Кукушка, кукушка! Накукуй мне сто лет!
-А накукуй тебе столько?

(с) Библия. Вольный перевод с древнееврейского.

Последний раз редактировалось Andrei; 09.10.2008 в 12:14.
Andrei вне форума Ответить с цитированием
Старый 12.10.2008, 03:38   #5
photozaz
Пользователь
 
Регистрация: 05.04.2008
Сообщений: 66
По умолчанию

А подскажите, как проверить относится ли данный текст к типу DateTime, если да, то (...) если нет, то (...). очень надо, подскажите!
photozaz вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Отладка приложения _DeNis Общие вопросы Delphi 2 15.06.2008 11:31
Отладка программы ЭД4-0014 Помощь студентам 0 06.06.2008 21:21
Table Devikss БД в Delphi 7 29.05.2008 11:52