Вниз
Скачать: CL | DM;

Формат времени   Найти похожие ветки 

← →
Марат   (2004-04-14 08:22) [0]

Здравствуйте, мастера. Хочу спросить по какой формуле расчитывается время, т.е. дробная часть. Например, как из 18:00:00 получается 0.75. И второй вопрос: в моей программе ведется расчет контрольного срока и, допустим, время котрольного срока попало на обеденный перерыв (13:00-14:00), тогда мне нужно к контрольному сроку прибавить еще один час. Я сделал так:
DtCntr:=(контрольный срок, допустим 07.04.04 13:34:45)
DtCntr1:=DtCntr-int(DtCntr);
if DtCntr1>=strtotime("13:00:00") or DtCntr1<=strtotime("14:00:00") then
DtCntr:=DtCntr+strtotime("01:00:00");
а может быть можно как-то проще?
И еще. Данной программой пользуются много пользователей. Может ли случится какая-нибудь оказия по поводу AM,PM (00:00-11:59,00:00-23:59)?


← →
Cobalt ©   (2004-04-14 08:24) [1]

TDateTime + F1.
RTFM


← →
Anatoly Podgoretsky ©   (2004-04-14 08:32) [2]

1 час это сутки (1) деленое на количество часов в сутках (24)


← →
Марат   (2004-04-14 08:40) [3]

По первому понял. Спасибо. А по второму? (Справку читал непонятно).


← →
Юрий Зотов ©   (2004-04-14 09:01) [4]

> Марат   (14.04.04 08:22)

1. Дробная часть - это кол-во миллисекунд, прошедших от начала суток, деленное на кол-во миллисекунд в сутках.

2.
а). Ошибка в условии - надо не OR, а AND. И нет скобок.
б). Преобразования строк во время - лишние, только тормозят работу. Заведите константы и используйте их:

var
 Hour13: TDateTime = 13/24;
 Hour14: TDateTime = 14/24;
 Hour1 : TDateTime = 1/24;

3. Если Вы используете преобразования строк в дату или время и установленный в системе пользователя формат даты или времени не совпадает с заданным в программе, то оказия случится - в виде EConvertError. Чтобы этого не было, либо не используйте такие преобразования, либо формируйте строку даты/времени с помощью ShortDateFormat, DateSeparator и TimeSeparator.


← →
Anatoly Podgoretsky ©   (2004-04-14 09:12) [5]

Хватит и одной
OneHour = 1/24
А затем просто  DT + OneHour * 1.5



Страницы: 1 вся ветка

Скачать: CL | DM;



Память: 0.46 MB
Время: 0.02 c
1-1081876348
andrysha
2004-04-13 21:12
2004.05.02
как програмно поставить галочку в checkbox


8-1075539841
kirilllius
2004-01-31 12:04
2004.05.02
Масштабирование изображения


1-1082053059
ZDDR
2004-04-15 22:17
2004.05.02
Hook для блокировки компа


1-1081761868
ГАГН
2004-04-12 13:24
2004.05.02
Как проверить Edit ы?


1-1082113298
Ш-К
2004-04-16 15:01
2004.05.02
Word "Параметры сраницы"




   Наверх