Problemas com cálculos de datas

Delphi

08/06/2006

boa tarde

preciso fazer uma subtração em 2 datas que estão informadas em meu sistema, a primeira por exemplo 30/01/2006 e a 2º 15/01/2006 as duas vindas de edit´s, porém preciso fazer a operação sem as barras e deve no exemplo me retornar o valor 15, alguém tem idéia como posso efetuar a operação, a principio se que preciso inverter os valores e depois fazer a subtração como posso fazer isso?

tipo... 20060130
- 20060115
________
00000015

Desde já muito obrigado.


Gtts

Gtts

Curtidas 0

Respostas

Marco Salles

Marco Salles

08/06/2006

function Subtrair(editf,editi:String):String;
var
datai,dataf:TDateTime;
begin
result:=´Data Inválida´;
if TryStrToDate(editi,datai) then
    if TryStrToDate(editf,dataf) then
      begin
        if dataf >= datai Then
          result:=inttostr(trunc(dataf-datai))
        else
          result:=´A DataFinal tem que ser maior que a data Inicial)´;
      end;
end;


procedure TForm1.Button1Click(Sender: TObject);
begin
edit3.Text:=Subtrair(edit1.Text,edit2.text);
end;



//[b:4b7c464be6]Opcional[/b:4b7c464be6]..Garante o formato de Data independende do sistema windows
procedure TForm1.FormShow(Sender: TObject);
begin
dateSeparator:=´/´;
LongdateFormat:=´dd/mm/yyyy´;
end;



GOSTEI 0
Gtts

Gtts

08/06/2006

funcionou blza.

obrigado pela ajuda Marco Salles. :o


GOSTEI 0
POSTAR