Fórum Dimunuir Data e Hora com Resultados #445661
17/06/2013
0
Alguem tem alguma solução.
Obrigado, e desde ja agradeço a todos.
Att, Felipe.
Felipe Arruda
Curtir tópico
+ 0Posts
17/06/2013
Felipe Arruda
Gostei + 0
18/06/2013
Alan Souza
var vDaySpan: Double; qtdeDias: Integer; qtdeHoras: TTime; begin vDaySpan := DaySpan(datainicio, datafim); qtdeDias := Trunc(vDaySpan); qtdeHoras := Frac(vDaySpan); end;
Gostei + 0
18/06/2013
Felipe Arruda
Ok, mas eu tenho 3 dbedit um para data incial que e gerado automaticamente com o codigo DBEdit10.Text:=datetostr(now), o outro eu colocarei a data manualmente e o terceiro e ultimo teria que me dar o resultado automatico quando eu preencho o segundo DBEdit.
Para a hora seria parecido, tenho 3 dbedit um para hora incial que e gerado automaticamente com o codigo DBEdit7.Text:=timetostr(now); o outro eu colocarei a hora manualmente e o terceiro e ultimo teria que me dar o resultado automatico quando eu preencho o segundo DBEdit.
Obrigado, fico no aguardo.
Att, Felipe.
Gostei + 0
18/06/2013
Alan Souza
Gostei + 0
18/06/2013
Felipe Arruda
Gostei + 0
19/06/2013
Alan Souza
DaySpan(StrToDate(DBEdit1.Text), StrToDate(DBEdit2.Text));
Gostei + 0
19/06/2013
Felipe Arruda
1- No meu DBEdit de horas automatica, alem de quando cirar o formulario ele insere a data automaticamente, ele tambem tem uma mascasra no Evento OnEnter:
DBEdit10.Field.EditMask:= '!99/99/0000;1';
2 - No meu DBEdit de horas manual, eu tenho no evento OnEnter e no Evento OnExit:
procedure TFRAtendimento.DBEdit11Enter(Sender: TObject); begin DBEdit11.Field.EditMask:= '!99/99/0000;1'; end; procedure TFRAtendimento.DBEdit11Exit(Sender: TObject); var vDaySpan: Double; qtdeDias: Integer; qtdeHoras: TTime; begin vDaySpan := DaySpan(StrToDate(DBEdit10.Text), StrToDate(DBEdit12.Text)); qtdeDias := Trunc(vDaySpan); qtdeHoras := Frac(vDaySpan); end;
3 - O meu DBEdit que vai receber, eo DBEdit12.
4 - Os tipos de campos, em meu banco de dados são: A data automatica tipo date, data manual tipo date, e data a ser mostrada esta como varchar, quando vou fazer o teste no programa me retornar o seguint erro: 'Is not a valid Date".
Tentei mudar o campo que calcula automatico para date, porem quando vou compilar o programa da outro erro.
A mesma data que eu coloco no campo manual e a que aparece no campo automatico.
Obrigado, fico aguardando.
Att, Felipe.
Gostei + 0
19/06/2013
Alan Souza
procedure TFRAtendimento.DBEdit11Exit(Sender: TObject); var vDaySpan: Double; qtdeDias: Integer; begin vDaySpan := DaySpan(StrToDate(DBEdit10.Text), StrToDate(DBEdit11.Text)); qtdeDias := Trunc(vDaySpan); DBEdit12.Text := IntToStr(qtdeDias); end;
Gostei + 0
19/06/2013
Felipe Arruda
Gostei + 0
21/06/2013
Felipe Arruda
Obrigado, aguardo respostas.
Att, Felipe.
Gostei + 0
21/06/2013
Alan Souza
no lugar de:
DBEdit12.Text := IntToStr(qtdeDias);
tente:
DBEdit12.DataSource.DataSet.FieldByName(DBEdit12.DataField).AsInteger := qtdeDias;
Gostei + 0
21/06/2013
Felipe Arruda
DBEdit11.Field.EditMask:= '!99/99/0000;1';
Como ficaria nesse caso?
Obrigado, e tenha um bom dia.
Att, Felipe
Gostei + 0
21/06/2013
Alan Souza
(os testes que fiz foram com essa idéia)
Gostei + 0
25/06/2013
Felipe Arruda
Obrigado.
Att, Felipe.
Gostei + 0
25/06/2013
Alan Souza
Gostei + 0
Clique aqui para fazer login e interagir na Comunidade :)