powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Delphi [игнор отключен] [закрыт для гостей] / Поле типа дата в DBGrid
14 сообщений из 14, страница 1 из 1
Поле типа дата в DBGrid
    #39649076
dead end
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Добрый вечер,подскажите, пожалуйста,как отловить ошибку в ячейке DBGrid на неправильный ввод даты? Какое событие обрабатывать? Пробовал через beforepost и onvalidate, ничего не выходит(
Код: pascal
1.
2.
3.
try TryStrToDate(family.FieldByName('ДатаРождения').Value, dt) 
except  showMessage('Некорректная дата!');
end;
...
Рейтинг: 0 / 0
Поле типа дата в DBGrid
    #39649080
Dimitry Sibiryakov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
dead endПробовал через beforepost и onvalidate, ничего не выходит(

Значит плохо пробовал. Читай справку по OnValidate внимательно. Приведённый код неправильный.
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
Поле типа дата в DBGrid
    #39649084
YuRock
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Без try..except, просто
Код: pascal
1.
2.
if not TryStrToDate() then
  ShowMessage
...
Рейтинг: 0 / 0
Поле типа дата в DBGrid
    #39649269
Dimitry Sibiryakov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
YuRockБез try..except

Без ShowMessage, ибо
документацияTo reject the current value of the field from the OnValidate event
handler, raise an exception.
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
Поле типа дата в DBGrid
    #39649350
YuRock
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Dimitry SibiryakovYuRockБез try..except

Без ShowMessage
Да, конечно
...
Рейтинг: 0 / 0
Поле типа дата в DBGrid
    #39649354
Фотография makhaon
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
dead end,

Я у себя неверный ввод ловлю полями набора, вот недавно было: можно было в гриде набрать значение больше чем integer и софт вываливался с неприятным исключением. Добавил в набор все поля выборки, в одном из полей прописал в OnSetText:

Код: pascal
1.
2.
3.
4.
5.
6.
7.
8.
procedure TForm8.JvMemoryData1JvBValueSetText(Sender: TField; const Text: string);
var
 i: integer;
begin
 TryStrToInt(Text, i);
 i := MinMax(0, 20000, i);
 Sender.AsInteger := i;
end;
...
Рейтинг: 0 / 0
Поле типа дата в DBGrid
    #39649373
white_nigger
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
makhaonЯ у себя неверный ввод ловлю полями набора, вот недавно было: можно было в гриде набрать значение больше чем integer и софт вываливался с неприятным исключением. Добавил в набор все поля выборки, в одном из полей прописал в OnSetText:Ой вредный подход! Нельзя так. Если человек ошибается - то надо ему сообщить, а не по тихому подсовывать левое значение
...
Рейтинг: 0 / 0
Поле типа дата в DBGrid
    #39649393
Dimitry Sibiryakov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
white_niggerЕсли человек ошибается - то надо ему сообщить, а не по тихому подсовывать левое значение

Ещё лучше - не дать ему ошибиться. Для чего есть маски ввода и ограничения в спинконтролах.
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
Поле типа дата в DBGrid
    #39649396
dead end
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
спасибо всем большое)сам разобрался)
...
Рейтинг: 0 / 0
Поле типа дата в DBGrid
    #39649415
Фотография makhaon
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
white_nigger,

ShowMessage можно добавить по желанию.

авторДля чего есть маски ввода и ограничения в спинконтролах.

в гриде не очень поограничиваешь, увы. в едитах, конечно, просто запрещаю набирать не то.
...
Рейтинг: 0 / 0
Поле типа дата в DBGrid
    #39649500
white_nigger
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Dimitry SibiryakovЕщё лучше - не дать ему ошибиться. Для чего есть маски ввода и ограничения в спинконтролах.Лучше. Но не всегда возможно
makhaonв гриде не очень поограничиваешьГрид - гриду рознь...
...
Рейтинг: 0 / 0
Поле типа дата в DBGrid
    #39649520
Dimitry Sibiryakov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
white_niggerЛучше. Но не всегда возможно

Да, иногда лень побеждает программиста и форма редактирования документа накидывается
тяп-ляп мышкой с использованием TDbEdit вместо TDateTimePicker. Но чья это проблема?..
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
Поле типа дата в DBGrid
    #39649524
Фотография DarkMaster
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Dimitry Sibiryakovwhite_niggerЛучше. Но не всегда возможно

Да, иногда лень побеждает программиста и форма редактирования документа накидывается
тяп-ляп мышкой с использованием TDbEdit вместо TDateTimePicker. Но чья это проблема?..


Как это чья? Пользователя конечно
...
Рейтинг: 0 / 0
Поле типа дата в DBGrid
    #39649534
white_nigger
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Dimitry SibiryakovДа, иногда лень побеждает программиста и форма редактирования документа накидывается
тяп-ляп мышкой с использованием TDbEdit вместо TDateTimePicker. Но чья это проблема?..Ах, если б всё было так просто!...
...
Рейтинг: 0 / 0
14 сообщений из 14, страница 1 из 1
Форумы / Delphi [игнор отключен] [закрыт для гостей] / Поле типа дата в DBGrid
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]