Fórum como obter o Total de horas trabalhadas Semanalmente DELPHI Ajudem ! #523339
19/06/2015
0
Bom dia Galera,
preciso de uma função para somar as horas trabalhadas semanalmente por um funcionário, quando eu estou somando ao passar de 24 horas ele zera o contador, mas eu preciso do total correto. Alguém pode me ajudar?
preciso de uma função para somar as horas trabalhadas semanalmente por um funcionário, quando eu estou somando ao passar de 24 horas ele zera o contador, mas eu preciso do total correto. Alguém pode me ajudar?
Samdi Informática
Curtir tópico
+ 0
Responder
Posts
19/06/2015
Dorivan Sousa
voce precisa criar um acumulador pra horas, minutos e segundos e ao final converter.
1 - cria um type:
2- variaveis para acumular as horas, minutos e segundos
cria a funcao
3 - utilizar
na hora de exibir voce
1 - cria um type:
TypeHora = Array[1..3] of integer;
2- variaveis para acumular as horas, minutos e segundos
var iHoraPos,iMinutoPos,iSegundoPos:Integer;
cria a funcao
function TRel_Cartao_Ponto.AcumulaPos(HoraTrabalhada: TTime) : TypeHora;
Begin
iHoraPos:=iHoraPos+StrToInt(Copy(TimeToStr(HoraTrabalhada),1,2));
iMinutoPos:=iMinutoPos+StrToInt(Copy(TimeToStr(HoraTrabalhada),4,2))
iSegundoPos:=iSegundoPos+StrToInt(Copy(TimeToStr(HoraTrabalhada),7,2));
If iSegundoPos >= 60 Then
Begin
iMinutoPos:=iMinutoPos+1;
iSegundoPos:=0;
end;
If iMinutoPos >= 60 Then
Begin
iHoraPos:=iHoraPos+1;
iMinutoPos:=0;
end;
AcumulaPos[1]:=iHoraPos;
AcumulaPos[2]:=iMinutoPos;
AcumulaPos[3]:=iSegundoPos;
End;
3 - utilizar
AcumulaPos(StrToTime(hTotal_Trab));
na hora de exibir voce
Hora:=FormatFloat('00',iHoraPos)+':'+FormatFloat('00',iMinutoPos);
Responder
Gostei + 0
22/06/2015
Samdi Informática
Boa tarde Dorivan,
Muito obrigado, mas consegui resolver este problema. Obrigado mais um vez pela disposição!
Muito obrigado, mas consegui resolver este problema. Obrigado mais um vez pela disposição!
Responder
Gostei + 0
Clique aqui para fazer login e interagir na Comunidade :)