Visual Basic - Conectar DBGrid a BD y Botones de Desplazamiento

Life is soft - evento anual de software empresarial
 
Vista:

Conectar DBGrid a BD y Botones de Desplazamiento

Publicado por Tivaldo (17 intervenciones) el 13/06/2003 20:05:10
Buenas a tod@s

Les escribo en busca de un par de cosas para agregarle a algo que ya tengo casi listo y es lo siguiente:

1.
Sabe alguién como Enlazar un DBGrid a una BD Access \"sólo por código\" sin usar ningún control => (data, dataenvironment, adodc)
Bajo código DAO.

2.
Quisiera desplazarme por los registros de la tabla mostrando cada campo de cada registro en unos TextBox que ya están en el Formulario, algo así como el Control Data que trae sus botones de Primero, Anterior, Siguiente, Ultimo, pero sin usar el Data Control, sino por medio de unos CommandButton.

Bueno, si alguien ya ha hecho eso antes y sabe las dos o una de dos, pues, bueno para ver si puede orientarme.

saludos.
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:Conectar DBGrid a BD y Botones de Desplazamient

Publicado por jose carlos (243 intervenciones) el 13/06/2003 20:46:54
abre la base así:

DATA.CONNECT="DBASE iii;" o la base que sea, mira la propiedad connect del data
DATA.DATABASENAME="CARPETA DONDE ESTA LA BASE"
DATA.RECORDSOURCE="SELECT * FROM ARCHIVO WHERE CONDICION ORDER BY ORDEN"
En * puedes poner los campos que quieras separados por comas
en archivo, el nombre de la base de datos que quieres abrir
en condición las condiciones que quieres
y en orden por los campos que quieres ordenar
DATA.REFRESH
para abrir definitivamente la base

para moverte por ella

DATA.RECORDSET.MOVEFIRST;principio
DATA.RECORDSET.MOVENEXT;siguiente
DATA.RECORDSET.MOVEPREVIOUS;anterior
DATA.RECORDSET.MOVELAST; último

para buscar

buscar="campo="+chr(34)+valor+chr(34)
si es un dato alfanumérico
DATA.RECORDSET.FINDFIRST BUSCAR
para saber si lo has encontrado

IF DATA.RECORDSET.NOMATCH THEN
si lo has encontrado
ELSE
si no lo has encontrado
ENDIF

puede que las condiciones esten al revés

si quieres algo mas ponte en contacto

saludos
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Conectar DBGrid a BD y Botones de Desplazamient

Publicado por Tivaldo (17 intervenciones) el 14/06/2003 02:35:03
Gracias amigo...

pero por casualidad conoceras ya seas tú o alguna otra persona la forma de hacer eso sin usar el Data control, es decir, sólo por código DAO, con Rs.MoveNext y etc...

Es que me es más fluido trabajar con código que con los controles el cual puede darme más problemas que el código puro.

Gracias por los datos, los tengo a mano en caso de no conseguirlo de la forma que busco.

Saludos.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Conectar DBGrid a BD y Botones de Desplazamient

Publicado por kikecg (352 intervenciones) el 15/06/2003 14:57:01
Hola.
Lo segundo que quieres hacer es facil. Aunque yo te diria que ADO va mejor (mas rápido). De hecho, te lo comento para ADO.

Necesitas una conexión con la base de datos y un Recordset, nada mas.

Abres la conexión estableciendo su ConnectionString a la base de datos.

Abres el recordset asi:

Rs.Open SentSql, Conexion, TipodeCursor, TipoDeBloqueo, Opciones

Te creas una función que te meta el contenido de cada campo en un textbox:

TextN.Text = Rs.Fields(n)

asi con todos los campos.

Para navegar, tienes los mismos metodos:
MoveFirst
MovePrevious
MoveNext
MoveLast
Siempre dependiendo del tipo de cursor que abras, claro (un cursor adOpenFordwardOnly no puede retroceder).

Cada vez que cambies de registro en el recordset, llamas a la función de llenar los campos de texto. Solo tienes que controlar que cuando llegues al principio o al final del recordset, el usuario no pueda ir mas allá.

Si ademas quieres que los campos sean actualizables, puedes vincular los TextBox al recordset, o bien utilizar una variable Boolean (un switch, vaya) para indicar si se ha cambiado alguno de los campos y actuar en consecuencia antes de moverte al siguiente registro.

Para lo del grid, creo que tambien con un objeto Connection y con un Recordset podrás hacerlo funcionar.

Suerte.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Conectar DBGrid a BD y Botones de Desplazamient

Publicado por Tivaldo (17 intervenciones) el 16/06/2003 01:10:43
Hey gracias kikecg...

Bueno espero que puedas ver esta nota y saber que he visto el mensaje y probaré lo que indicas, ya pensaba que sería con ADO porque cosas que he visto que no salen con DAO termina alguien indicando la solución pero en ADO.

Lo voy a probar y ojala y tenga suerte y funcione bien.

Gracias josé carlos, gracias kikecg : )
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Conectar DBGrid a BD y Botones de Desplazamient

Publicado por kikecg (352 intervenciones) el 16/06/2003 16:40:18
Ok, he visto el mensaje ;-)
Hoy por hoy, vale mas acostumbrarse a utilizar ADO, ya que es mas facil que este evolucione, mientras que DAO posiblemente se irá quedando estancado.
Si te atascas de nuevo, por ahí está mi mail por si tienes dudas.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar