Hola, Has intentado mover el trim?:
Código Delphi
[-]procedure BusarPorCalificacionSQL(cCalificacion,cAutor,cTema,cClasificacion: String);
var cPalabra,cAut,cTem,cClasif: String;
nParam: Integer;
begin
nParam := 0;
cPalabra := cCalificacion;
cAut := cAutor;
cTem := cTema;
cClasif := cClasificacion;
DataModule.QueryLib.Close;
DataModule.QueryLib.SQL.Clear;
DataModule.QueryLib.SQL.Add('Select * From TITULOS');
DataModule.QueryLib.SQL.Add('Where ((NomCalifCas = :cPalabra) or (NomCalifCat = :cPalabra) or
(NomCalifIng = :cPalabra) or (NomCalifFra = :cPalabra) or
(NomCalifAle = :cPalabra) or (NomCalifIta = :cPalabra) or
(NomCalifPor = :cPalabra))');
DataModule.QueryLib.Params[nParam].AsString := cPalabra;
if ((nNumItemIndexA = 1) and (cAut <> '')) then begin
DataModule.QueryLib.SQL.Add('And NOMAUTOR1 = :cAut or NOMAUTOR2 = :cAut or
NOMAUTOR3 = :cAut or NOMAUTOR4 = :cAut or
NOMAUTOR5 = :cAut or NOMAUTOR6 = :cAut');
Inc(nParam);
DataModule.QueryLib.Params[nParam].AsString := Trim(cAut);
Inc(nParam);
DataModule.QueryLib.Params[nParam].AsString := Trim(cAut);
Inc(nParam);
DataModule.QueryLib.Params[nParam].AsString := Trim(cAut);
Inc(nParam);
DataModule.QueryLib.Params[nParam].AsString := Trim(cAut);
Inc(nParam);
DataModule.QueryLib.Params[nParam].AsString := Trim(cAut);
Inc(nParam);
DataModule.QueryLib.Params[nParam].AsString := Trim(cAut);
end;
if ((nNumItemIndexB = 1) and (cTem <> '')) then begin
Inc(nParam);
DataModule.QueryLib.SQL.Add('AND (Tema = :cTem)');
DataModule.QueryLib.Params[nParam].AsString := cTem;
end;
if ((nNumItemIndexC = 1) and (cClasif <> '')) then begin
Inc(nParam);
DataModule.QueryLib.SQL.Add('AND (Clasificacion = :cClasif)');
DataModule.QueryLib.Params[nParam].AsString := cClasif;
end;
DataModule.QueryLib.SQL.Add('AND (IsConte = ''No'')');
if(F_Main.sRadioGGrid.ItemIndex = 0) then DataModule.QueryLib.SQL.Add('Order By TITULO');
if(F_Main.sRadioGGrid.ItemIndex = 1) then DataModule.QueryLib.SQL.Add('Order By NUMERO');
DataModule.QueryLib.Open;
end;
Saludos.