FormatDateTime não funciona
Srs, estou tentando mostrar um campo data de minha tabela no formato 'dd/mm/yyyy' com FormatDateTime mas esta dando o seguinte erro:( "2014-06-04" is not a valid date time ), curioso que quando coloco now ele funciona normal. Alguem poderia me ajudar, já tentei de tudo mas não estou conseguindo resolver o problema.
Obrigado,
Vantuil.
PS: Meu banco é SQ-Server 2008r2 e estou usando Delphi XE3
Obrigado,
Vantuil.
PS: Meu banco é SQ-Server 2008r2 e estou usando Delphi XE3
Vantuil Amante
Curtidas 0
Respostas
Cauê Nishijima
05/06/2014
Posta como você esta fazendo pra ficar mais fácil detectar o que pode estar errado!
GOSTEI 0
Vantuil Amante
05/06/2014
FormatDateTime('dd/mm/yyyy',queryApont.FieldByName('apt_data_apont').AsDateTime)
GOSTEI 0
Edinei Steffen
05/06/2014
Por hora isso pode te ajudar. Transforme isso em uma função e toda vez que vc quiser formatar chame esta função.
OBS.: As configurações regionais do teu computador estão no padrão "dd/MM/yyyy"... Quem sabe pode ser isso...
var
txt,tmp, d, m, a, data_ok: string;
begin
tmp := queryApont.FieldByName('apt_data_apont').AsString;
txt := copy(tmp,1,pos('-',tmp)-1);
delete(tmp,1,pos('-',tmp));
if length(txt) > 2 then
a := txt;
txt := copy(tmp,1,pos('-',tmp)-1);
delete(tmp,1,pos('-',tmp));
m := txt;
txt := copy(tmp,1,pos('-',tmp)-1);
delete(tmp,1,pos('-',tmp));
d := txt;
data_ok := d + '/' + m + '/' + a;
end;OBS.: As configurações regionais do teu computador estão no padrão "dd/MM/yyyy"... Quem sabe pode ser isso...
GOSTEI 0
Edinei Steffen
05/06/2014
Por hora isso pode te ajudar. Transforme isso em uma função e toda vez que vc quiser formatar chame esta função.
OBS.: As configurações regionais do teu computador estão no padrão "dd/MM/yyyy"... Quem sabe pode ser isso...
var
txt,tmp, d, m, a, data_ok: string;
begin
tmp := queryApont.FieldByName('apt_data_apont').AsString;
txt := copy(tmp,1,pos('-',tmp)-1);
delete(tmp,1,pos('-',tmp));
if length(txt) > 2 then
a := txt;
txt := copy(tmp,1,pos('-',tmp)-1);
delete(tmp,1,pos('-',tmp));
m := txt;
txt := copy(tmp,1,pos('-',tmp)-1);
delete(tmp,1,5);
d := txt;
data_ok := d + '/' + m + '/' + a;
end;OBS.: As configurações regionais do teu computador estão no padrão "dd/MM/yyyy"... Quem sabe pode ser isso...
GOSTEI 0
Edinei Steffen
05/06/2014
Corrigido...
Por hora isso pode te ajudar. Transforme isso em uma função e toda vez que vc quiser formatar chame esta função.
OBS.: As configurações regionais do teu computador estão no padrão "dd/MM/yyyy"... Quem sabe pode ser isso...
var
txt,tmp, d, m, a, data_ok: string;
begin
tmp := queryApont.FieldByName(''apt_data_apont'').AsString;
txt := copy(tmp,1,pos(''-'',tmp)-1);
delete(tmp,1,pos(''-'',tmp));
if length(txt) > 2 then
a := txt;
txt := copy(tmp,1,pos(''-'',tmp)-1);
delete(tmp,1,pos(''-'',tmp));
m := txt;
d := tmp;
data_ok := d + ''/'' + m + ''/'' + a;
end;OBS.: As configurações regionais do teu computador estão no padrão "dd/MM/yyyy"... Quem sabe pode ser isso...
GOSTEI 0
Vantuil Amante
05/06/2014
verifiquei no meu micro e no servidor onde vai ser executado, esta no padrão "dd/MM/yyyy"....mas vamos rodar sua função pra ver se vai dar certo. obrigado.
GOSTEI 0
Vantuil Amante
05/06/2014
Edinei, sua rotina funcionou numa boa, muito obrigado!!!!
GOSTEI 0