Buscar

Tratamento de campo data (dbedit) - completo

Código

{ Colocar no editmask do campo !99/99/9999;1;_
   Colocar a regra no evento OnSetText do campo Data no DataSet }


procedure TDataModule1.qPacientesDatNasSetText(Sender: TField;
  const Text: String);
var
   vAno: integer;
begin
   if text = '  /  /    ' then
   begin
      frmPacientes.dbEditDatNas.Clear;
      qPacientesDatNas.Clear;
   end
   else
   begin
      try
         StrToDate(Text);
         vAno := YearOf(StrToDate(Text));
         if ((vAno < 1900) or (vAno > 2100)) then
         begin
            MessageDlg('Data Inválida', MtError, [MbOk], 0);
            Abort;
         end;
      except
         on EConvertError do
         begin
            MessageDlg('Data Inválida', MtError, [MbOk], 0);
            Abort;
         end;
      end;
      Sender.AsString := Text;
   end;
end;

Publicidade

Vote na dica




Quantidade de votos: 0 votos
Aceitação: 0%


Detalhes da dica

Categoria: Arquivos
Adicionada dia: 09/05/07
Por: Magno Fermo
Visualizada: 12321 vezes

Planeta Delphi - Tudo sobre programação Delphi Planeta Delphi - www.planetadelphi.com.br - Todos os direitos reservados | Copyright 2001-2009