Показать сообщение отдельно
  #2  
Старый 28.04.2008, 16:08
lmikle lmikle вне форума
Модератор
 
Регистрация: 17.04.2008
Сообщения: 8,105
Версия Delphi: 7, XE3, 10.2
Репутация: 49089
По умолчанию

Цитата:
Сообщение от ChiToK
Всем привет.Есть бд в акессе, ее присоединил и использовал Dbgrid чтоб она отображалась, есть 2 колонки с типом время\дата , нужно найти разницу во времени между этими колонками.В дельфи почему-то отображается дата и время , хотя в акссесе формат поставлен в виде времени, без даты. Как можно находить разницу во времени между 2 строками чтобы результат получался ввиде минут с типом integer?

Дело в том, что Дельфи работает через тип TDateTime, в котором целая часть зарезервированна на дату, а дробная - на время. Соответсвенно, тебе надо привести целую часть к одинаковому значению (например, 0 , это если ты уверен, что временные отметки относяться к одному и тому же дню, но в резултате работы Дельфей там может стоять разная дата. Если все-таки там дата правильная, то ничего не надо делать.

Для вычисления раницы, между дыумя значениями в минутах можно вызвать функцию MinutesBetween(). Вернет как раз все, что тебе надо.
Не забудь про фокус с датой. а вообще, вызови хелп по этой функции и там можно щелкнуть на ссылку datetime routines и почитать о разных функциях.
Ответить с цитированием