si lo que te da error es el Open del SQL prueba a hacer algo como
Código:
try
Query.Open;
except
on E: Exception do
begin
str := 'Error abriendo Query con el mensaje : ' + E.Message;
Application.MessageBox(PChar(str), 'Atención', MB_OK);
end;
end;
Te recomiendo que siempre saques el mensaje de error que da Delphi para así saber por qué "peta".
Si el error es porque la consulta está vacía y tu intentas seleccionar algún registro luego, utiliza lo que te muestra el amigo Marcos
Espero te sirva