Programación General > Visual Basic 6.0 e inferiores

 Re: Uso de DBgrid con Codigo no con DataControl

(1/2) > >>

palmiro:
Hola quisiera saber como llenar un dbgrid usando código y no usando un data control. En el código que quiero usar deseo poner algo que me actualice el dbgrid con lo datos de la consulta que obtiene datos de un dtpicker. Es algo más o menos como esto :

Set mibase = Workspaces(0).OpenDatabase(App.Path & "biblio.mdb")
Set puntero = mibase.OpenRecordset("prestamomaterial", dbOpenTable)

SQL = "select codigo, nombrematerial, serie, estado, nombre, apellidos, curso, fechaprestamo from prestamomaterial where fechadevolucion = '" & DTPicker1.Value & "'"

y todo esto en el dbgrid.

P.D. : Se puede usar un data control pero al decir el databasename no colocar una direccion estatica si no algo como (App.Path & "biblio.mdb"), pero que ademas me reconozca el recordsource el las propiedades del data control.

Gracias.

J.M.Movilla:
Bueno, creo que tú lo que quieres es definir las propiedades del Data de forma que puedas actualizarlas en tiempo de ejecución. Pues simplemente haces esto:

Data1.Visible = False

SQL = "Select............
Data1.DatabaseName = App.Path & "biblio.mdb"
Data1.RecordSource = SQL
Data1.Refresh

(TE SOBRAN LAS INSTRUCCIONES set mibase Y set puntero)

Saludos y suerte

palmiro:
Me dice ese mensaje en la línea del data1.refresh.
Ahora estoy usando lo data control con el recordsource y databasename definidos en el cuadro de propiedades y el siguiente codigo :

paso = dtpicker1.value

SQL = "select codigo, nombrematerial, serie, nombre, apellidos, curso, fechaprestamo from prestamomaterial where fechadevolucion = '" & paso & "'"
Data1.RecordSource = SQL
Data1.Refresh

Me puedes decir que falta o que esta fallando.

Gracias.

J.M.Movilla:
Está claro que lo que falla es la definición de la fecha, cuyo formato no reconoce la SQL.

Prueba con
paso = DateValue(""" & DTPicker1 & """)
quitando las comillas simples de la SQL
...where fechadevolucion = " & paso

y espero que se te solucione.  Ya me tendrás informado.

Saludos y suerte

palmiro:
La verdad es que no me resulto, y comprobé que es el problema de la fecha.
En la BD la fecha esta como shotdate y mascará 99-99-0000;0;_, todos los datos se ingresan con dtpicker y se visualizan en el dbgrid de la forma dd-mm-aaaa, e intentado la consulta poniendo el valor con valores de dtpicker, con maskedit, textbox, pero no me reconoce ni siquiera de tu forma (definí paso como date y como string pero me dice en esa línea que no coinciden los tipos). Que podría hacer, cambiar la forma de definición en la bd, u otra cosa. Como podría hacer para que el valor que me da en la BD en fechadevolucion fuera compatible con el que estoy introduciendo y pudira comparlo.:oops:

Navegación

[0] Índice de Mensajes

[#] Página Siguiente

Ir a la versión completa