Calculo com datas...
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
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
Calandrin
Curtidas 0
Respostas
Alphablend
19/05/2003
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
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
GOSTEI 0
Inutaishou
19/05/2003
Você pode fazer algo assim também:
Espero ter ajudado.
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.
GOSTEI 0
Calandrin
19/05/2003
Vou tentar fazer como me orientaram... muito obrigado!
Luiz :D
Luiz :D
GOSTEI 0