Hola Delphitest.
Una posibilidad sería considerar los campos con valor
NULL:
Código Delphi
[-]
begin
with ADOQuery1 do
begin
Close;
SQL.Clear;
SQL.Add('SELECT APELLIDO, NOMBRE, DNI FROM CLIENTES');
SQL.Add('WHERE (APELLIDO LIKE :PAPE OR APELLIDO IS NULL) AND');
SQL.Add('(NOMBRE LIKE :PNOM OR NOMBRE IS NULL) AND');
SQL.Add('(DNI LIKE :PDNI OR DNI IS NULL)');
Parameters.ParamByName('PAPE').Value:= '%'+Edit1.Text+'%';
Parameters.ParamByName('PNOM').Value:= '%'+Edit2.Text+'%';
Parameters.ParamByName('PDNI').Value:= '%'+Edit3.Text+'%';
Open;
end;
end;
Pero no se si te sirva de ese modo...
Saludos