Consulta en Datagrid y combobox

Yolanda Prieto
29 de Mayo del 2006
Hola

Necesito realizar una consulta en un Datagrid, tengo un combobox que contiene diferentes tipos de documentos y quiero que cuando seleccione un dato del combobox me haga la consulta y el datagrid me muestre todos los registros de ese tipo de documento.
Ya tengo el enlace al Datagrid pero me falta la consulta.

Podrian Ayudarme.....

Gracias!!!!!

pco_barny
29 de Mayo del 2006
dime como enlazas el datagrid???

Bartolom
29 de Mayo del 2006
en ves del combobox te recvomiendo usar un datacombo, porque así siempre te va a mostrar los valores que existan en ese campo y en caso de que la tabla varíe, vas a tener los datos actualizados, o sea no te van a sobrar ni faltar. En caso de que siempre sean valores fijos, entonces no habría problemas.
Para enlazar el datagrid, puedes hacerlo creando una conexión, luego una consulta y luego esa consulta asociarla a tu DataGrid, de la siguiente forma:

Set cnConsulta = New Connection
With cnConsulta
.Provider = "Microsoft.jet.oledb.4.0"
.ConnectionString = "Tu base access"
End With
cnConsulta.Open

Set rsConsulta = New Recordset
With rsConsulta
.Source = "SELECT * FROM TABLA WHERE Campo Like '" & DataCombo.Text & "' "
.ActiveConnection = cnConsulta
.CursorType = adOpenStatic
.CursorLocation = adUseClient
.LockType = adLockOptimistic
End With

Set DataGrid1.DataSource = rsConsulta


Saludos!
Bartolom
Chile


Yolanda Prieto
29 de Mayo del 2006
Hola pco_barny

No utilice codigo para la enlazar el Datagrid a la BD, lo hice con las propiedades del Datagrid claro primero enlazando el control ADO y despues cada una de las columnas del Datagrid las enlace a la tabla correspondiente.

Respecto a la consulta lo intente hacer en la propiedad Datamember de Datagrid pero no funciono esta es la linea

Select * from Table1 Whrere tipo de doc=Manual de Calidad

Yolanda Prieto
29 de Mayo del 2006
Hola Bartolom

Ya ejecute tu codigo, agregue un DataCombo y en el evento clic de este puse el codigo claro con el nombre de la BD, de la Tabla pero no aparece nada en el Datagrid.

¿Que Falta?

Ayudame!!!!

Bartolom
29 de Mayo del 2006
Primero, tienes que revisar si el DataCombo está desplegando los datos. Para eso debes tener un control ADO en el formulario que esté enlazado a la tabla de tu base de datos. Una vez hecho esto, en el datacombo debes configurar las siguientes propiedades:
Rowsource: Acá colocas el control ADO creado en tu formulario

Datafield: Acá colocas el campo que quieres que muestre el DataCombo.

Una vez hecho esto debería funcionarte. Recuerda revisar la instrucción SQL, que muestre la tabla y el campo correcto, lo más probable es que si el grid aparece vacío es que la instrucción SQL no está arrojando ningún resultado. Podrías colocar el código que estás usando?

Saludos!
Bartolom
Chile

Yolanda Prieto
29 de Mayo del 2006
Ya revice todo y esta bien el datacombo me despliega los datos y tengo bien enlazado el control ADO, pero hay algo curioso cuando hago la consulta si me muestra los renglones de los registros, o sea que si en mi BD tengo 2 registros al hcer la consulta me muestra el datagrid con 2 renglones, y si le agrego otros 2 registros ya me muestra 4 renglones pero no me muestra los datos.

Sabes que puede estar mal?

Yolanda Prieto
29 de Mayo del 2006
El Codigo que tengo es el siguiente, pero no funciona:

Dim cnConsulta As Connection
Set cnConsulta = New Connection
With cnConsulta
.Provider = "Microsoft.jet.oledb.4.0"
.ConnectionString = "C:My Documentsdatagrid.mdb"
End With
cnConsulta.Open

Dim rsConsulta As Recordset
Set rsConsulta = New Recordset
With rsConsulta
.Source = "SELECT * FROM Table1 WHERE tipo de doc =Like '" & DataCombo1.Text & "' "
.ActiveConnection = cnConsulta
.CursorType = adOpenStatic
.CursorLocation = adUseClient
.LockType = adLockOptimistic
End With

Set DataGrid2.DataSource = rsConsulta

SI ESTOY MAL EN ALGO DIGANME PORFAVOR
GRACIAS..

yes
29 de Mayo del 2006
como se enlaza un combobox con undatagrid con el ADO

mery lembke
29 de Mayo del 2006
hola mira, estuve leyendo esta consulta y tengo un problema muy parecido, pero tengo un a conexion a sql server... podrian ayudarme?

mery
29 de Mayo del 2006
la idea principal es que el datagrid haga un filtro para visualizar productos que coincidan con el mismo rut de una determinada persona, a traves de un adodc

nicop
29 de Mayo del 2006
hacelo con una consulta sql
pones en un boton
if combo1.text="Nombre" then
reg.open "select from nombre from tutabla"
y asi con lo que tengas en el combo
bye

andres
29 de Mayo del 2006
gracias por las respuestas de alguien de este foro, porque indirectamente he solucionado un problema con la actualizacion del datagrid.
Espedificamente:

Adodc1.Refresh
DataGrid1.Refresh

gracias a todos :)