Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2002.11.04;
Скачать: CL | DM;

Вниз

Подсчёт времени.   Найти похожие ветки 

 
Widom   (2002-10-15 07:09) [0]

Есть два поля Часы и Минуты.
Надо просумировать время что бы получить общее время.
например: 2ч 35мин
1ч 40мин
1ч 25мин
Итог: 5ч 40мин

Подскажите функцию


 
Sirus ©   (2002-10-15 07:22) [1]

procedure TForm1.Button1Click(Sender: TObject);
var t1,t2:ttime;
begin
t1:=StrToTime(Edit1.Text+":"+Edit2.Text+":00");
t2:=StrToTime(Edit3.Text+":"+Edit4.Text+":00");
ShowMessage(TimeToStr(t1+t2));
end;

Вместо компонент TEdit вставишь свои поля...
Должно работать...


 
Sirus ©   (2002-10-15 07:23) [2]

Забыл...
Edit1 и Edit3 это часы...
Edit2 и Edit4 это минуты...
Удачи...


 
Widom   (2002-10-15 08:00) [3]

Спасибо.
А если у меня много записей в базе ?
У тебя только на две.
обьясните делитанту...


 
Sirus ©   (2002-10-15 08:09) [4]

Var TotalTime:TTime;
CurrTime:TTime;
Begin
Query1.Open;
Query1.First;
TotalTime:=0;
Repeat
CurTime:=StrToTime(Query1.FieldByName("ЧАСЫ").AsString+":"+Query1.FieldByName("МИНУТЫ").AsString+":00");
TitalTime:=TotalTime+CurrTime;
Query1.Next;
Until Query1.Eof;
ShowMessage(TimeToStr(TotalTime));
End;

Вместо Query1 можешь вставить Table1 или че нить другое
ЧАСЫ и МИНУТЫ это названия полей содержащих часы и минуты.


 
Widom   (2002-10-15 09:58) [5]

Всё замечтельно....
но у меня время большое например 26 часов 40 минут.
Т.е у меня програма учет рабочего времени сколь всего часов работатли в месяц.
А он больше 24 не суммирует.


 
Johnmen ©   (2002-10-15 10:10) [6]

А может проще ?
SELECT
CAST((SUM(h*60+m)/60)-0.5 AS INTEGER) AS hs,
SUM(m)-60*CAST((SUM(m)/60)-0.5 AS INTEGER) AS ms
FROM ...
WHERE ...



 
Sergey13 ©   (2002-10-15 11:18) [7]

А может исчо проще? 8-)
select sum(h) as h_coiunt,sum(m) as m_count from....
Потом
часы:=H_count+int(m_count/60)
минуты:=m_count-(60*int(m_count/60))



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

Текущий архив: 2002.11.04;
Скачать: CL | DM;

Наверх




Память: 0.48 MB
Время: 0.026 c
1-11146
opoloXAI
2002-10-24 13:05
2002.11.04
Сообщение об ошибке при показе MessageDlg.


7-11527
partizan
2002-08-29 13:51
2002.11.04
Перегрузка


3-11105
Di_
2002-10-16 11:08
2002.11.04
Удаление повторяющихся записей


14-11483
pavel-ak
2002-10-16 12:16
2002.11.04
Кому в кокое время програмится лучше


1-11160
Gari
2002-10-24 13:55
2002.11.04
Сервер автоматизации