Cita:
Empezado por Jose Carlos Rey
Que tal, buen dia de nuevo por aqui. gracias a su ayuda y comentarios que me han hecho; les comento que le busque de una forma de otra y nada no arroja informacion en DBGrid. en ocasiones daba errores, cambie los campos de consulta y nada. Para entonces de buscar y buscar siempre en la misma tabla decidi cambiar a otra, la sorpresa fue que la consulta si se realizaba. Por lo que asumo que es la tabla la que arroja el error.
La estructura de la tabla CLIENTE y en especifico del campo que intente consultar ("CLAVE") es "Texto" y el motor de la BD es MS SQL server 2008 no tengo idea de como realizar esta consulta dado que el campo en especifico no muestra nada en consulta y es precisamente el que requiero para obtener la informacion
Código Delphi [-]procedure TForm1.BitBtn1Click(Sender: TObject);
begin
Try
Begin
If Edit1.Text<>Null Then
Begin
DataModule1.ADOQuery1.Close;
DataModule1.ADOQuery1.SQL.Clear;
DataModule1.ADOQuery1.Prepared;
DataModule1.ADOQuery1.SQL.Add('SELECT * FROM INVENTARIO A WHERE A.CVE_ART=:ID');
DataModule1.ADOQuery1.Parameters.ParamByName('ID').Value := Edit1.Text;
DataModule1.ADOQuery1.ParamCheck:=True;
DataModule1.ADOQuery1.Open;
Form2 := TForm2.Create(Self);
Form2.Show;
End
Else
End
Except
ShowMessage('Lo siento no pude abrir la base de datos');
End
End;
Esta es la nueva consulta en la cual he cambiado a la tabla de INVENTARIO y el campo CVE_ART y funciona muy bien pero no es la tabla que requiero consultar.
Alguien que tenga alguna idea?
Saludos
|
De entrada, yo tengo dos sugerencias:
1.- ¿Funciona PERFECTAMENTE en MS SQLServer la consulta que quieres hacer? Es decir, si te vas al manejador de SQLServer, abres una ventana de query, tecleas la consulta y la ejecutas, ¿te arroja los resultados que necesitas?
2.- No consignas qué versión de MS SQLServer utilizas, pero en la 2002 y 2008 R2 hay un error que hace que los parámetros que envías a una consulta NO SE 'TRADUZCAN' ADECUADAMENTE dentro del motor, y para ésto DEBES necesariamente "armar" tu consulta en modo texto respetando los tipos de columna de la(s) tabla(s).
3.- ¿Limpias tu TADOQuery después de ejecutarlo? ¿Eliminas los parámetros? También puede ser 'algo' que se quede pendiente...
Creo que con ésto podrías resolver ésta duda. Si no, buscaremos otra posible solución.