Hola: Como puedo apreciar (Puedo esta equivocado) las fechas se la pones a mano antes de la ejecucion de las instrucciones del button1. Lo que deberias hacer es la comprobacion antes de ejecutar las sentencias asi:
Código Delphi
[-]procedure TConsultas.Button1Click(Sender: TObject);
Var
VarFecha1, VarFecha2:string;
begin
If DateTimePicker2.Date < DateTimePicker1.Date then Begin
showmessage('La segunda fecha del rango es menor a la primera');
DatetimePicker2.SetFocus;
end
else
Begin
VarFecha1:=FormatDateTime('mm/dd/yy', DateTimePicker1.Date);
VarFecha2:=FormatDateTime('mm/dd/yy', DateTimePicker2.Date);
IBQuery1.SQL.Add('AND D.FECHA >= ' + '''' + VarFecha1 + '''' );
IBQuery1.SQL.Add('AND D.FECHA <= ' + '''' + VarFecha2 + '''' );
If (CheckBox1.Checked=False) and (CheckBox2.Checked=True) and (CheckBox3.Checked = True) then
Begin
TotalRegistros();
EjecucionPorFecha(); Excedidos();
Ordenar();
IBQuery1.Open;
End;
end;
End;
Asi la ejecucion directamente no arrancara hasta tanto la segunda fecha no sea mayor que la primera. Si no es esto lo que necesitabas, avisa y volvemos a intentarlo.-
Saludos