![]() |
|
|
Регистрация | << Правила форума >> | FAQ | Пользователи | Календарь | Поиск | Сообщения за сегодня | Все разделы прочитаны |
![]() |
|
Опции темы | Поиск в этой теме | Опции просмотра |
#1
|
|||
|
|||
![]() Всем привет.есть база данных , время прихода и ухода посетителей , как выплонять арифметические опрецаии в дельфи если поля имеет тип date\time? ну там например время ожидания=время прихода-время ухода и т.д.
|
#2
|
|||
|
|||
![]() Код:
var date1, date2 : TDateTime; begin date2 := Date + Time; // date2 := Now; date1 := ADOQuery.FieldByName('RegisteredTime').AsDateTime; ShowMessage('Время ожидания = ' + TimeToStr(date2 - date1)); end; Годится? |
#3
|
|||
|
|||
![]() В Delphi есть огромное количество функций и процедур для работы с датами и временем.
Напишите в тексте, например, DecodeDate и нажмите F1. В открывшемся окне справки есть ссылка "datetime routines". По ней вывалится список всех этих функций и процедур. С помощью этого богатства можно делать, практически любые вычисления: сдвигать даты и время на заданное количество месяцев, дней, часов, минут и пр.; вычислять время между двумя датами; замещать элементы дат и времени и много чего другое. |
#4
|
|||
|
|||
![]() спсибо , почитал.но я совсем уже подзабыл дельфи , можете подсказать как из можно в dbgrid подсчитывать разницу во времени среди двух колонок? причем проблема в том что база Acess и там только время , а в дельфи он всегда видит еще и дату , даже если в акесе менять формат поля на время.
|
#5
|
|||
|
|||
![]() я создал в adotable дполнительное вычесляемое поле , чтобы в него заносилась разница между 2 полями.написал следующий код:
adotable2raznica:=minutesbetween(adotable2n.asdate time,adotable2z.asdatetime); он возвращает значение int64 , и оно не может заносится в dbgrid потому что там нельзя выбрать такой тип поля, как быть? нужны эти значения чтобы строить графики по ним. |
#6
|
|||
|
|||
![]() А просто привести его к инту не пытался?
|