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

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

Как перевести DateTime в минуты?


Евгений Владимирович ©   (2006-08-01 17:40:00) 

Как правильно перевести интервал времени (DateTime) в минуты и вывести на печать как количество минут?


Евгений Владимирович   (2006-08-09 14:52:00) [1]

fishkaспасибо большое =) Действительно, что-то стормозил я малёк


fishka   (2006-08-09 09:27:00) [2]

sheet.cells[10+i,8]:= MyOtchet.MinutInterval[i];  // вывожу на печать

Наверно, надо писать так : вывожу в Excel. А уже в Excel (с помощью Delphi) надо поставить формат ячейки (столбца...).


Shaman_   (2006-08-08 20:00:00) [3]

вывожу на печать, выводится в виде: 17.06.1904 0:00:00
потому что на печать выводишь как TDateTime и у тебя идет преобразование через DateTiteToStr а должно быть FloatToStr
Кстати не мешало бы сначала округлить значение до целых


Shaman_   (2006-08-08 19:57:00) [4]

нажал случайно на ДОБАВИТЬ :)
MyOtchet.MinutInterval[i]:= MyOtchet.SumInterval[i]*(24*60);
В итоге здесь долны быть минуты. Если не работает, смотри, под отладчиком где ты намудрил


Shaman_   (2006-08-08 19:55:00) [5]

MyOtchet.MinutInterval[i]:= MyOtchet.SumInterval[i]*(24*60);


Евгений Владимирович   (2006-08-08 19:16:00) [6]

TMyOtchet = record
...
SumInterval  : array [0..100] of TdateTime;
MinutInterval  : array [0..100] of Double;
...
Вычисляется  MyOtchet.SumInterval[i] как продолжительность какого-то события. Например, результат составляет одни сутки,   3 часа,  10 минут.
...
MyOtchet.MinutInterval[i]:= MyOtchet.SumInterval[i]*24*60;  // перевожу в минуты, получилось 1630 минут, в таком виде надо вывести на печать
sheet.cells[10+i,8]:= MyOtchet.MinutInterval[i];  // вывожу на печать, выводится в виде: 17.06.1904 0:00:00  
Подскажите, как правильно выполнить преобразование.


Германн   (2006-08-02 01:36:00) [7]


> Fay ©   (01.08.06 23:58) [5]
>
> Чё-то мне кажется, что афтару нужно курить DecodeTime
>

В подобных случаях, лично я, предпочитаю пользовать FormatDateTime.


Fay   (2006-08-01 23:58:00) [8]

Чё-то мне кажется, что афтару нужно курить DecodeTime


Desdechado   (2006-08-01 19:16:00) [9]

Уточню себя - количество суток от начала отсчета.
Интервал имеет тип Double - это просто количество суток между концом и началом.


stone   (2006-08-01 18:19:00) [10]

MinutesBetween()


sniknik   (2006-08-01 18:05:00) [11]

интервал (разница между концом и началом) в минутах

dt, dd: TDateTime;
...
ShowMessage(IntToStr(Round((dd - dt) * 1440)));


Desdechado   (2006-08-01 17:49:00) [12]

TDateTime - это количество суток.
Сколько в них минут, думаю, посчитать несложно.


Наверх

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