Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Вставка даты в базу [D5, MySQL]


Xmen ©   (2007-03-28 08:36:00) 

Привет мастера.
Такая проблема есть таблица которуму должен писать дату документа. Сделал форму поставил DBEdit. Соеденился с базой и пишу в базу и все ОК. Но я хотел сделат немношко автоматизацию. В табле этому полю в маске прописал 'dd.mm.yy' и при нажате на кнопку "Новый" (Insert) сделал так  DBEdit1:=now; И в едите появляется сегодняшная дата. И потом сделал переход на следующий элемент Ентером. И когда делаю Ентер на элементе перед DBEdit (дата) проезходить переход в DBEdit (дата) но при этом удоляется запись, и когда снова нажимаю ентер то мне сообщает что поле неможет быть '  .  .  '. Как мне это исправить. или есть другие компоненты для даты


Sergey13   (2007-03-28 11:09:00) [1]

> Проверил он сам исправляет ошибки и поставляет даты но сообщение
> не выдает или этого он не делает

Тебе шашечки или ехать? (с) старый анекдот
8-)


Xmen   (2007-03-28 11:08:00) [2]


> Sergey13 ©   (28.03.07 09:52) [9]
>
> > А что это за контроль?
>
> Ну например в EhLib-е есть DBDateTimeEditEh. В Rx-библиотеке
> вроде был похожий. Типа того.

Поставил
DBDateTimeEditEh
Проверил он сам исправляет ошибки и поставляет даты но сообщение не выдает или этого он не делает


Sergey13   (2007-03-28 09:52:00) [3]

> А что это за контроль?

Ну например в EhLib-е есть DBDateTimeEditEh. В Rx-библиотеке вроде был похожий. Типа того.


Xmen   (2007-03-28 09:44:00) [4]


> > [6] Xmen   (28.03.07 09:18)
>
> Используй контрол для ввода даты. Кстати, а поле точно дата,
>  или строка, содержащая дату?

Точно дата.
А что это за контроль?
И как его использовать?


Sergey13   (2007-03-28 09:38:00) [5]

> [6] Xmen   (28.03.07 09:18)

Используй контрол для ввода даты. Кстати, а поле точно дата, или строка, содержащая дату?


Xmen   (2007-03-28 09:18:00) [6]

У меня появился другой вопрос.
Как можно проверит значение поля, то есть он поля даты или не правилная дата.
Напремер:
1) '11.04.07' правильно
2) '34.13.07'
   '12.  .07'
   '  .03. 7' неправельно.
Нужно выловить эту ошибку и дать сообщение что это неправильная дата и попросит исправить дату.


Sergey13   (2007-03-28 09:17:00) [7]

> [4] Xmen   (28.03.07 09:08)

> Но у меня еще есть дата поле заране немогу определить дату
> нужно будет там набиват ручками. если поле пустое то даёт
> ошибку. поле несоответстует типу.

Я практически ничего не понял из этой фразы. 8-)

На onNewRecord - определяй все значения полей по умолчанию. На onBeforePost - проверяй все нужные значения, и при несоответствии говори об ошибке юзеру.


Xmen   (2007-03-28 09:08:00) [8]


> Sergey13 ©   (28.03.07 08:45) [1]
>
> > при нажате на кнопку "Новый" (Insert) сделал так  DBEdit1:
> =now;
> А почему бы не присвоить значение полю таблицы, а не контролу,
>  отображающему это значение? Пририсовав себе на отражении
> в зеркале бороду бородатым не станешь.


Спасибо получился тем полем что можно было зарание присвоит значение.
Но у меня еще есть дата поле заране немогу определить дату нужно будет там набиват ручками. если поле пустое то даёт ошибку. поле несоответстует типу.


Xmen   (2007-03-28 08:56:00) [9]


> А почему бы не присвоить значение полю таблицы, а не контролу,
>  отображающему это значение? Пририсовав себе на отражении
> в зеркале бороду бородатым не станешь.
попробую
<
> чего-то ты намутил. догадаться сложно. покажи код.

/I>
Ну вот код:
1)DBEdit1.Text:=formatdatetime('dd.mm.yy',now);
2) Код перехода
if Key = #13 then
   begin
      Key := #0;
      Perform(WM_NEXTDLGCTL, 0, 0);
   end;


Jan   (2007-03-28 08:46:00) [10]


> И когда делаю Ентер на элементе перед DBEdit (дата) проезходить
> переход в DBEdit (дата) но при этом удоляется запись,

чего-то ты намутил. догадаться сложно. покажи код.


Sergey13   (2007-03-28 08:45:00) [11]

> при нажате на кнопку "Новый" (Insert) сделал так  DBEdit1:=now;
А почему бы не присвоить значение полю таблицы, а не контролу, отображающему это значение? Пририсовав себе на отражении в зеркале бороду бородатым не станешь.


Наверх

Титульная страница Поиск, карта сайта Написать письмо