Firebird Dia 31

Firebird

13/01/2006

Estou tendo um problema, quando eu tento editar um campo DATE se o dia for 31 o programa retorna mensagem de erro dizendo que a data é invalida, se for qualquer outro dia funciona legal, e se eu editar pelo iboconsole o dia 31 funciona....Como resolver isso???


Joe_wah

Joe_wah

Curtidas 0

Respostas

Joe_wah

Joe_wah

13/01/2006

Notei agora que dependendo do mes/ano funciona por exemplo 31/10/2000 funciona mas 31/11/2000 retorna erro de data invalida


GOSTEI 0
Bruno Belchior

Bruno Belchior

13/01/2006

é porque novembro só tem 30 dias... é uma questão de lógica não?


GOSTEI 0
Martins

Martins

13/01/2006

Notei agora que dependendo do mes/ano funciona por exemplo 31/10/2000 funciona mas 31/11/2000 retorna erro de data invalida


Desse jeito não vai funcionar mesmo, tendo em vista q vc vai trabalhar com datas, deves saber quais meses tem 31 dias e quais tem 30 ok!

Como disse o Bruno, lógica pura, pois imagine eu colocando 31/02/2006, hehehe vai dar pau não é mesmo, pois fevereiro tem 28 dias e em casos especiais como ano bisexto ele terá 29 dias.


GOSTEI 0
Joe_wah

Joe_wah

13/01/2006

estava imaginando que devia se risso, mas a integridade da data nao é importante no meu programa..em todo caso , qual a melhor forma de solucionar isso?devo checar se o mes tem determinado dia e se nao tiver cancelar a operacao?


GOSTEI 0
Martins

Martins

13/01/2006

estava imaginando que devia se risso, mas a integridade da data nao é importante no meu programa..em todo caso , qual a melhor forma de solucionar isso?devo checar se o mes tem determinado dia e se nao tiver cancelar a operacao?


A melhor forma é fazer um tratamento para data.

try
  data...
except
  mensagem de erro (data inválida....)




boa sorte!!!


GOSTEI 0
Weber

Weber

13/01/2006

function IsDate(const S: ShortString): Boolean;
var
  DateTime: TDateTime;
begin
  Result := TryStrToDate(S, DateTime);
end;



GOSTEI 0
Sremulador

Sremulador

13/01/2006

Bem amigo como eu sempre digo, um bom funcionário tem que estar atento a tudo, inclusive isso, que tem em todos os calebdarios...


GOSTEI 0
POSTAR