Ver Mensaje Individual
  #2  
Antiguo 19-05-2005
Avatar de roman
roman roman is offline
Moderador
 
Registrado: may 2003
Ubicación: Ciudad de México
Posts: 20.269
Reputación: 10
roman Es un diamante en brutoroman Es un diamante en brutoroman Es un diamante en bruto
Prueba esto:

Código Delphi [-]
var
  Criteria: TStringList;
  Where: String;

begin
  Criteria := TStringList.Create;
  Criteria.Delimiter := '&';
  Criteria.QuoteChar := ' ';

  Criteria.Values['cif'] := QuotedStr(Edit1.Text);
  Criteria.Values['empresa'] := QuotedStr(Edit2.Text);
  Criteria.Values['articulo'] := QuotedStr(Edit3.Text);
  Criteria.Values['precio'] := QuotedStr(Edit4.Text);

  Where := StringReplace(Criteria.DelimitedText, '&', ' and ', [rfReplaceAll]);

  Criteria.Free;
end;

Si la cadena Where está vacía es que no se llenó ningún campo. En caso contrario ya nada más agregas la cadena

'WHERE ' + Where

al resto de tu consulta.

Nota Fallará si el caracter & se encuentra en alguno de los campos.

// Saludos
Responder Con Cita