Fórum Daysbetween maluco !!! #212504
09/02/2004
0
Alguém sabe me dizer o pq da minha função Daysbetween retorna um numero totalmente louco ?
Estou usando o código abaixo:
datamaior := strtodate(DataNasc); datamenor := strtodate dmData.qryDiarioDia.Fields0].AsString); //as datas retornadas estão corretas showmessage(datetostr(datamaior)); showmessage(datetostr(datamenor)); DBTDia.Caption := inttostr(DaysBetween(datamenor,datamaior));
Estou usando para teste as datas 04/06/1952 e 24/05/1952, que teria q me retornar 12 dias (diferença entre essas duas datas)...só que o programa me retorna 36514.
Já tentei a DaySpan e trunquei o resultado, deu na mesma...alguém me ajuda...já não sei mais o q fazer...
Ana Davis
Curtir tópico
+ 0Posts
09/02/2004
Beppe
Alguém sabe me dizer o pq da minha função Daysbetween retorna um numero totalmente louco ?
Estou usando o código abaixo:
datamaior := strtodate(DataNasc); datamenor := strtodate dmData.qryDiarioDia.Fields0].AsString); //as datas retornadas estão corretas showmessage(datetostr(datamaior)); showmessage(datetostr(datamenor)); DBTDia.Caption := inttostr(DaysBetween(datamenor,datamaior));
Estou usando para teste as datas 04/06/1952 e 24/05/1952, que teria q me retornar 12 dias (diferença entre essas duas datas)...só que o programa me retorna 36514.
Já tentei a DaySpan e trunquei o resultado, deu na mesma...alguém me ajuda...já não sei mais o q fazer...[/quote:54b815b402]
Sei lá, tentou inverter, assim:
DaysBetween(datamaior,datamenor)
Gostei + 0
09/02/2004
Ana Davis
Tá muito louco....
Tudo que eu queria era q fosse feita a subtração e retornasse o numero de dias entre uma e outra, só isso, tá dificil !
Gostei + 0
09/02/2004
Beppe
Caption := IntToStr(DaysBetween(StrToDate(´24/05/1952´), StrToDate(´04/06/1952´)));
Pra mim retorna 11, pra ti não?
Pode ser que alguma configuração de localização esteja errada...
Gostei + 0
09/02/2004
Fabio.hc
procedure TForm1.Button12Click(Sender: TObject); var dias:integer; begin dias:=DaysBetween(strtodate(´04/06/1952´),strtodate(´24/05/1952´)); end;
Gostei + 0
09/02/2004
Ana Davis
descobri o que fazia a daysbetween retorna um número tão absurdo. Na verdade, não existia nada de absurdo, a função estava retornando o valor correto. Vou explicar: a data que eu capturo do form esta no formato dd/mm/yyyy, enquanto a data q eu seleciono da tabela está no formato dd/mm/yy. Por isso me voltava um valor enorme.
Agora que já sei onde está o problema, queria saber como faço pra configurar as datas da tabela para se tornarem dd/mm/yyyy ??? Estou usando uma simples tabela em paradox. A coluna data está em formato data.
Gostei + 0
09/02/2004
Fabio.hc
procedure TFrmPrincipal.FormCreate(Sender: TObject); begin ShortDateFormat:=´dd/mm/yyyy´; end;
Gostei + 0
09/02/2004
Ana Davis
Gostei + 0
Clique aqui para fazer login e interagir na Comunidade :)