Calculo com datas...

19/05/2003

1

Me desculpem pessaol, mas ainda chego lá!
O meu problema agora é com data. Já recebi auxílio, sobre como subtrair uma data da outra. Deu certo! Estou querendo ver quantos dias passou de uma data, para poder ser cobrada uma multa. Estou fazendo DecodeDate(datadevolucao....) e o mesmo em Date, e tá funcionando mais ou menos. Se o atraso é de vários dias, beleza. Mas quando o atraso é de apenas um dia, dá um :?: número maluco pra caramba e a multa vai lá pra cima! Se puderem me ajudar, ou indicar alguma apostila que fale sobre estes tratamentos de data, etc, agradeço muito!
Abraços!
Luiz


Responder

Posts

19/05/2003

Alphablend

Tente o comando DaysBetween !!!
Só uma coisa, ele só conta dias inteiros, por exemplo:
entre os dias 12/02/2003 10:00:00 e 13/02/2003 08:30:00 (o delphi coloca as horas tb) há 0 dias de diferença .... o jeito DaysBetween(dataANTES,dataHOJE)+1;

Existem vários outro comandos para manipulação de data como :

MonthsBetween
YearsBetween
DayOfWeek

etc...

Abraços

AlphaBlend


Responder

19/05/2003

Inutaishou

Você pode fazer algo assim também:

Var Data1, Data2 : TDateTime; Var Diferença : Integer; Var Multa : Double; Begin While Data1 <= Data2 Do Begin Diferença := Diferença + 1; Data1 := Data1 + 1; End; Multa := Diferença*MultaPorDiaDeAtraso End;


Espero ter ajudado.


Responder

20/05/2003

Calandrin

Vou tentar fazer como me orientaram... muito obrigado!

Luiz :D


Responder