Transformar a subtração de horas em número
Boa Tarde,
Estou com um problema. Tenho duas hora a de início do serviço e a de final do serviço. Preciso calcular o tempo (final - início) e depois preciso gravar no banco a quantidade de horas (número fracionado) e depois calcular o valor total do serviço. Multiplicar a quantidade de horas pelo valor da hora técnica.
Por exemplo: Hr. Inicial: 15:30 e Hr. Final: 16:30
Sei que final - início = 1 e que se multiplicar pelo valor da hora da o total. Mas quando tranforma o que tem dentro do meu MaskEdit para time e diminuo não consigo jogar para dentro do campo do banco tipo float.
O que devo fazer?
Estou com um problema. Tenho duas hora a de início do serviço e a de final do serviço. Preciso calcular o tempo (final - início) e depois preciso gravar no banco a quantidade de horas (número fracionado) e depois calcular o valor total do serviço. Multiplicar a quantidade de horas pelo valor da hora técnica.
Por exemplo: Hr. Inicial: 15:30 e Hr. Final: 16:30
Sei que final - início = 1 e que se multiplicar pelo valor da hora da o total. Mas quando tranforma o que tem dentro do meu MaskEdit para time e diminuo não consigo jogar para dentro do campo do banco tipo float.
O que devo fazer?
Fernanda.sique
Curtidas 0
Respostas
Marco Salles
05/04/2004
Olha Eu Não Sei o Que PodeEstar Acontecendo, Mas Para Transformar o Time Para Real (Tipo Float) Para Ser Coerente Devemos Multiplicar Por 24
Abaixo Segue Um Exemplo Simples Que Pode Dar a Voce Uma Idéia De Como Fazer:
Abaixo Segue Um Exemplo Simples Que Pode Dar a Voce Uma Idéia De Como Fazer:
procedure TForm1.Button1Click(Sender: TObject); var Horainicial,horafinal,Saldo:TTime; Valor:real; begin Saldo:=StrtoTime(Edit2.Text)-StrToTime(Edit1.Text); Valor:=24*(Saldo); Showmessage(FloatToStr(Valor)); end;
GOSTEI 0
Fernanda.sique
05/04/2004
Funcionou !!!!
Valeu, Abraços
:P
Valeu, Abraços
:P
GOSTEI 0