Allanrf Postado Setembro 21, 2007 Denunciar Share Postado Setembro 21, 2007 Como faço para somar a data (dia, mes, ano, hora, minuto e segundo) dentro do meu programa e colocar o resultado em uma tabela? Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Vivendo&Aprendendo Postado Setembro 21, 2007 Denunciar Share Postado Setembro 21, 2007 Olá segue um exemplo, que encontrei na net... não testei ele...Para subtrair ou somar nº de dias à uma data, você vai precisar de : 1- um Edit para data – edtData; 2- um Edit para o nº de dias – edtNoDias; 3- um Label para a nova data – lblNovaData; 4- um Button para o cálculo – btnCalcNovaData; procedure TfrmPrincipal.btnCalcNovaDataClick(Sender: TObject); var Data : String; NoDias: Integer; NovaData : TDateTime; begin Data := edtData.Text; // formato --/--/---- NoDias := StrToInt(edtNoDias.Text); NovaData := StrToDate(Data) - NoDias; // subtrair nº de dias // ou NovaData := StrToDate(Data )+ NoDias; // somar nº de dias lblNovaData.Caption := DateToStr(NovaData); end; ou procedure TfrmPrincipal.btnCalcNovaDataClick(Sender: TObject); var NoDias: Integer; NovaData, Data : TDateTime; begin Data := StrToDate(edtData.Text); // formato --/--/---- NoDias := StrToInt(edtNoDias.Text); NovaData := Data - NoDias; // subtrair nº de dias // ou NovaData := Data + NoDias; // somar nº de dias lblNovaData.Caption := DateToStr(NovaData); end;Alexandre Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Micheus Postado Setembro 22, 2007 Denunciar Share Postado Setembro 22, 2007 Como faço para somar a data (dia, mes, ano, hora, minuto e segundo) dentro do meu programa e colocar o resultado em uma tabela?Allanrf, não deve ser nada complicado se você tiver em mente qual a composição deste campo. A variável TDateTime é equivalente a um Float, onde a parte inteira corresponde o número de dias a partir de 30/12/1899 (ou seja, se você atribuir zero a ela, esta será a data observada) e a parte fracionária corresponde ao valor da hora (horas, min, seg e mili), sendo que 0.9999999 corresponde a aproximadamente 23:59:59. Não seria preciso dizer que quando atingir 1, será incrementada a parte inteira, avançando um dia - visto que 24:00 corresponde a um dia.Se você quizer somar dias, então some o número de dias diretamente à variável TDateTime.Dê uma olhada neste post também. Citar Link para o comentário Compartilhar em outros sites More sharing options...
Pergunta
Allanrf
Como faço para somar a data (dia, mes, ano, hora, minuto e segundo) dentro do meu programa e colocar o resultado em uma tabela?
Link para o comentário
Compartilhar em outros sites
2 respostass a esta questão
Posts Recomendados
Participe da discussão
Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.