Array
(
)

Erro de conversao Date, firebird 1.5

Titanius
   - 08 dez 2005

Olá, tinha uma base que a data estava como VarChar(15), agora quero pegar este campo e jogar na data DATE.

verifico q as datas estao corretas, porem o firebird nao aceita de jeito nenhum fala que a data esta errada, tentei as seguinte formas...:

#Código


Tb1Data.AsDateTime := StrToDate(Tb2Data.AsString);
Tb1Data.AsDateTime := StrToDate(Trim(Tb2Data.AsString));
Tb1Data.AsString := Tb2Data.AsString;
Tb1Data.AsDateTime := StrToDate(Substitui(Trim(Tb2Data.AsString), ´/´,´.´));


P.S.: a funcao substitui, substitui um char pelo outro..

Nada funcionou, como eu posso fazer...?


desde já agradeço.


Gandalf.nho
   - 08 dez 2005

Em que formato está a data no campo VARCHAR?


Titanius
   - 08 dez 2005

dd/mm/yyyy


Emerson
   - 08 dez 2005

certifique-se do conteúdo da variável de ambiente ShortDateFormat. ela tem influência direta no resultado de StrToDate().

altere-a para o formato utilizado no seu campo varchar(15)
ShortDateFormat := ´dd/mm/yyyy´;
(note que essa alteração, para ser mais eficiente, precisa estar no seu dpr e não na unit)

Tb1Data.AsDateTime := StrToDate(Trim(Tb2Data.AsString));


Titanius
   - 08 dez 2005


Citação:
certifique-se do conteúdo da variável de ambiente ShortDateFormat. ela tem influência direta no resultado de StrToDate().

altere-a para o formato utilizado no seu campo varchar(15)
ShortDateFormat := ´dd/mm/yyyy´;
(note que essa alteração, para ser mais eficiente, precisa estar no seu dpr e não na unit)

Tb1Data.AsDateTime := StrToDate(Trim(Tb2Data.AsString));


Valeu emerson, funcionou perfeitamente agora...

Obrigado.