Tratar Data

02/03/2006

0

Amigos,

Boa tarde.
Possuo um campo do tipo TMaskEdit, que possui a mascara: !99/99/9999;1;_

A pergunta é...

como tratar esta campo para não ser inserido datas inválidas e menores do que a data atual?

obrigado amigos!


Fernando_ramos

Fernando_ramos

Responder

Posts

03/03/2006

Paullsoftware

já tentou algo assim:

try
if MskData.Text < Date then
begin
ShowMessage(´A Data não pode ser inferior a Atual!´);
MskData.Setfocus;
MskData.Clear;
Exit;
end
else
begin
// comandos se a data for verdadeira
end
Except
on msg: Exception do
begin
showMessage(´A Data informada não é uma data válida!´);
end;


Responder

03/03/2006

Fernando_ramos

Amigo,

Fiz assim:

try if strtodate(MskData.Text) < DATE then begin ShowMessage(´A Data não pode ser inferior a Atual!´); MskData.Setfocus; MskData.Clear; Exit; end else begin ShowMessage(´DATA VALIDA!´); end; Except on msg: Exception do begin showMessage(´A Data informada não é uma data válida!´); end; end;


na primeira linha estava apresentando erro por MskData.Text ser STRING diferente do tipo DATA!

então mudei...

ai percebi que ele não entra na excessão! tipo..se eu nao preencher nada deixar apenas ´ / / ´, o delphi mostra erro, dizendo que ´ / / ´ é uma data invalida!

se puder me ajudar!


Responder

03/03/2006

Marco Salles

ai percebi que ele não entra na excessão! tipo..se eu nao preencher nada deixar apenas ´ / / ´, o delphi mostra erro, dizendo que ´ / / ´ é uma data invalida! se puder me ajudar!


Esta mensagem que o delphi esta lhe apresentando , se voce executar o programa usando o exe. ela não aparecera.. Esta mensagem é normal e mesmo que voce trate um eventual erro , ela sempre aparecera via projeto, salvo se voce desabilitar esta opção no ide do delphi..

:wink:
Tente ir no executavel , na pasta aonde ele esta gravado e execute o programa por lá.. Veja a diferença

Agora , se voce quiser , informar ao usuário , que a data esta em branco , ao inves de dizer que le não é uma data válida , ai ja é outra historia


Responder

04/03/2006

Fernando_ramos

amigo Marco Salles,

realmente chamando pelo .exe funcionou numa boa!
Não sabia dessa.....vlw!!

Outra coisa...

Como eu poderia implementar, caso a data não fosse preenchida...(em branco).

abraços!


Responder

04/03/2006

Carlos Bernardo

[quote=´fernando_ramos´]amigo Marco Salles,

realmente chamando pelo .exe funcionou numa boa!
Não sabia dessa.....vlw!!

Outra coisa...

Como eu poderia implementar, caso a data não fosse preenchida...(em branco).

abraços!


If mskdata.text <> ´ / / ´ then


Responder

07/03/2006

Sandercomputacao

Galera, eu to com uma dúvida neste componente, se eu digitar uma data inválida ou uma data superior a data de hoje esta funcionando a validação corretamente, porém ao digitar uma data incompleta, tipo: 10/2_/____ e dou ENTER ele me gera o seguinte erro: invalid imput value, alguém sabe como validar este erro??

Obrigado a Todos..


Responder

07/03/2006

Marco Salles

[b:1fe8dd2528]sandercomputacao[/b:1fe8dd2528] , coloque a mascara da seguinte forma
!99/99/9999;1;_ ou
!99/99/9999;0;_ ....

O Nove na mascara , significa digitaçao não obrigatoria.. Ja mascara contendo zero significa digitação obrigatoria..

O Final Um na mascara significa Salvar Literias(Que nesses caso é a Barra ´/´) e o final zero na mascara significa , que não salva os literias

fluiu :?: :?: :?:


Responder

07/03/2006

Sandercomputacao

[quote:949ac3ed95=´Marco Salles´][b:949ac3ed95]sandercomputacao[/b:949ac3ed95] , coloque a mascara da seguinte forma
!99/99/9999;1;_ ou
!99/99/9999;0;_ ....

O Nove na mascara , significa digitaçao não obrigatoria.. Ja mascara contendo zero significa digitação obrigatoria..

O Final Um na mascara significa Salvar Literias(Que nesses caso é a Barra ´/´) e o final zero na mascara significa , que não salva os literias

fluiu :?: :?: :?:[/quote:949ac3ed95]

Realmente deu certo Marcos..
Obrigado!


Responder

Que tal ter acesso a um e-book gratuito que vai te ajudar muito nesse momento decisivo?

Ver ebook

Recomendado pra quem ainda não iniciou o estudos.

Eu quero
Ver ebook

Recomendado para quem está passando por dificuldades nessa etapa inicial

Eu quero

Utilizamos cookies para fornecer uma melhor experiência para nossos usuários, consulte nossa política de privacidade.

Aceitar