Erro ao converter uma string vazia em date
Tem uma tabela onde a coluna data é do tipo string. Quando vou exportar preciso transformar em date para usar a FormatDateTime.
Que que quando acha um campo vazio da erro.
DataFundacao := FormatDateTime('yyyy-mm-dd', strtodate(DataOriginal));
Erro.:
''is not a valid date.
Como posso resolver?
Que que quando acha um campo vazio da erro.
DataFundacao := FormatDateTime('yyyy-mm-dd', strtodate(DataOriginal));
Erro.:
''is not a valid date.
Como posso resolver?
Adalmir
Curtidas 0
Melhor post
Gabriel Baltazar
18/06/2015
Usa um if
if DataOriginal <> '' then
DataFundacao := FormatDateTime('yyyy-mm-dd', strtodate(DataOriginal));
GOSTEI 1
Mais Respostas
Douglas
18/06/2015
Olá Adalmir, você também pode utilizar a seguinte expressão abaixo:
DataFundacao := FormatDateTime('yyyy-mm-dd', strtodatedef(DataOriginal, 0));
GOSTEI 1
Adalmir
18/06/2015
Olá Adalmir, você também pode utilizar a seguinte expressão abaixo:
DataFundacao := FormatDateTime('yyyy-mm-dd', strtodatedef(DataOriginal, 0));
Dougla seu código esta muito pratico porem quando o campo esta vazio ele esta retornando o valor 1899-12-30.
Como corrijo para retornar vazio?
GOSTEI 0
Douglas
18/06/2015
Olá Adalmir,
Desta forma você terá que fazer um pequeno tratamento mesmo. A dica do amigo Baltazar corrigi o seu problema ou o código abaixo:
Desta forma você terá que fazer um pequeno tratamento mesmo. A dica do amigo Baltazar corrigi o seu problema ou o código abaixo:
Try
DataFundacao := FormatDateTime('yyyy-mm-dd', strtodate(DataOriginal));
except
DataFundacao := EmptyStr;
end;
GOSTEI 0