{ 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;