Ver Mensaje Individual
  #1  
Antiguo 13-02-2012
hondaalberto hondaalberto is offline
Miembro
 
Registrado: sep 2010
Ubicación: República Dominicana
Posts: 67
Reputación: 14
hondaalberto Va por buen camino
Problemas con Consulta Sql en Una Búsqueda

Buenas tardes Amigos tengo un problema con el uso del procedimiento que mas abajo les presento, el problema consiste en que si el campo que el usuario selecciono para buscar esta vacio en la tabla porque este Campo permite valores nulos (Campo último número utilizado) en el Grid que estoy mostrando los datos de la consulta cuando limpio los datos en el edit no me muestra todos los registros que deberian mostrarse en el Grid de tres registros que habia en la tabla uno no se muestra despues de buscar por este campo vacio, despues con los que si estan llenos no pasa esto.

Me gustaria si es posible saber que tengo que modificarle para que no me suceda esto.

Utilizo una base de datos en Sql Server y un TRadioGroup para que el usuario seleccione el campo por el cual quiere realizar la busqueda.



Muchas GRacias de antemano por la ayuda que me puedan dar al respecto y por su valioso tiempo.




procedure TFBuscarNumerosdeSerie.EValorChange(Sender: TObject);
const
// Consulta Sql
STRSQL = 'Select * From Numeros_de_Serie';
STRORDER = 'ORDER BY Codigo';


begin
QDatos.Close;

// Está vacío
if (Evalor.Text = '') then begin
QDatos.SQL.Text := STRSQL;

end
else

If rgbuscarpor.ItemIndex = 0 then
begin
// montamos la sql
QDatos.SQL.Text := STRSQL + ' WHERE (Codigo) LIKE (' + QuotedStr('%' + Evalor.Text + '%') + ')' +
// Añadimos el WHER
// Añadimos el orden
STRORDER;
end;

If RGBuscarpor.ItemIndex = 1 then
begin
LValor.Caption:='Descripción';
// montamos la sql
QDatos.SQL.Text := STRSQL + ' WHERE (Descripcion) LIKE (' + QuotedStr('%' + Evalor.Text + '%') + ')' +
// Añadimos el WHER
// Añadimos el orden
STRORDER;
end;
If RGBuscarpor.ItemIndex = 2 then
begin
// montamos la sql
QDatos.SQL.Text := STRSQL + ' WHERE (Numero_Inicial) LIKE (' + QuotedStr('%' + Evalor.Text + '%') + ')' +
// Añadimos el WHER
// Añadimos el orden
STRORDER;
end;

If RGBuscarpor.ItemIndex = 3 then
begin
// montamos la sql
QDatos.SQL.Text := STRSQL + ' WHERE (Numero_Final) LIKE (' + QuotedStr('%' + Evalor.Text + '%') + ')' +
// Añadimos el WHER
// Añadimos el orden
STRORDER;
end;
If RGBuscarpor.ItemIndex = 4 then
begin
// montamos la sql
QDatos.SQL.Text := STRSQL + ' WHERE (Ultimo_Numero_Utilizado) LIKE (' + QuotedStr('%' + Evalor.Text + '%') + ')' +
// Añadimos el WHER
// Añadimos el orden
STRORDER;
end;

QDatos.Open;

end;

Última edición por hondaalberto fecha: 13-02-2012 a las 21:10:53. Razón: error en el titúlo del mensaje
Responder Con Cita