Visual Basic - Ver datos de una tabla en modo formulario

Life is soft - evento anual de software empresarial
 
Vista:

Ver datos de una tabla en modo formulario

Publicado por Alfredo Asensio (3 intervenciones) el 03/02/2010 07:11:48
Hola a todos. Soy relativamente nuevo en visual basic y hay algo que aun no he encontrado a pesar de haber buscado y leido bastante.
Lo que quiero saber es si hay alguna manera de desplegar los datos de una tabla de base de datos en un formulario de visual basic, pero que el despliegue no sea tipo hoja de datos (como el datagridview) sino como formulario, agregandole cuadros de control y todo. Al estilo Access por asi decirlo. Gracias de antemano.
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:Ver datos de una tabla en modo formulario

Publicado por Pedro Luis (878 intervenciones) el 03/02/2010 09:39:16
Hay un asistente para creación de formularios, no lo he usado, pero existe.
Por otra parte tienes el Control DataControl que se asocia a una base de datos y te sirve de enlace con otros controles. Por ejemplo el TextBox tiene la propiedad DataSource en la que pondrás el nombre del DataControl, al que previamente le habras puesto el DataBaseName, y el DataField para poner el nombre del Campo.
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:Ver datos de una tabla en modo formulario

Publicado por Alfredo (3 intervenciones) el 03/02/2010 16:35:18
Hola. Gracias por tu tiempo... En este momento no puedo probar tu solución, pero investigaré si es posible usar el DataControl que me dices con coneccion mysql. No he oido sobre el asistente, investigare un poco eso y espero sirva con coneccion mysql. =P. Aprecio mucho la ayuda, con esto ya puedo investigar mas.
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:Ver datos de una tabla en modo formulario

Publicado por Oihana (13 intervenciones) el 03/02/2010 09:49:47
Hola, no estoy segura de lo que quieres.

Si lo que quieres es que se visualicen en un formulario los campos de la base de datos es sencillo.

Lo primero, es poner dichos cuadros de texto (si quieres que luego introduzcan datos) o etiquetas si solo lo quieres visualizar.
Un vez hecho esto tienes que enlazar la base de datos con el formulario, para ello tienes 2 formas, una de ellas es con el adodc y una vez enlazado el adodc con la base de datos y con la tabla vas a las cajas de texto o a las etiquetas y en la propiedad "Data Source", se te desplegara una lista con todos los adodc que tengas, escoges el de la tabla a la que quieres enlazar los registros y luego vas a la propiedad "Data Field" y le dices que registro de esta tabla quieres mostrar en esa caja de texto. Una vez hecho esto puedes moverte a traves de los registros de la tabla con las flejas del Adodc.

Este es un metodo sencillo, pero feo a la hora de programar.

La segunda manera es hacerlo a traves del codigo. Lo primero es abrir un modulo en el que vas a declarar todas las variables que vayan a ser comunes para todos los formularios. Ahora en ese modulo declara una variable que sera para abrir la base de datos, ejm "Base" y la declaras como "database" es decir : "Public Base as DataBase", recuerda poner public a estas variables para que sean visibles por los demas formularios. Ahora declara una variable para la tabla que quieres visualizar, y la declaras como "recordset": Ejm: "Public Tabla1 as Recordset" te recomiendo que les pongas nombres que se asocien con la tabla para que te sea mas facil.

Ahora vas al formulario donde quieres visualizar los datos(se supone que ya tienes todas las cajas de texto puestas), lo primero que tienes que hacer es abrir la base de datos, para eso se usa el siguiente codigo:

set "nombre de la base de datos"=OpenDatabase("Direccion de la base de datos\Nombre de la base de datos")

si tienes la base de datos en la misma carpeta del programa puedes usar "App.path" que te pone la direccion de donde estas situado

Ejem:

Set Base=OpenDataBase(App.Path & "\basedatos.mbd")

una vez abierta la base de datos, tienes que abrir la tabla

set "nombre de la variable de la tabla"="nombre variable de la base de datos".openrecordset("Nombrede la tabla",dbopentable)

Ejem:

set Tabla1=Base.openrecorset("Usuarios", dbopentable)

ya tienes la base de datos y la tabla abiertas, ahora tienes que enlazar los registros con las cajas de texto, para ello se emplea el siguiente codigo.

caja1.text=tabla1.fields("Nombre")-->Lo que va entre parentesis es el nombre del regitro que posee la tabla original.

y asi con todo lo que desees visualizar. Ahora solo te queda poder moverte por la tabla, para eso, crea 4 botones, uno para ir la principio de la tabla, otro para ir al registro anterior, para ir al registro siguiente y para ir al final de la tabla y les pones el siguente codigo:

Para ir al principio de la tabla:
tabla1.movefist

Para ir al final de la tabla:
tabla1.movelast

Para ir al registro anterior:
if tabla1.bof=false then
tabla1.moveprevious
end if

Para ir al registro siguiente:
if tabla1.eof= false then
tabla1.movenext
end if

Listo, el "BOF" es el marcador de inicio de la tabla, asi que cuando preguntamos si es false, queremos decir que si es falso que haya llegado al principio de la tabla se desplace al anterior, porque si desplazas fuera de la tabla te dara error, y lo mismo con "EOF" que es el indicador de final de tabla.

Asi que con esto ya tienes visualizada la tabla y puedes moverte por ella.

Si no te ha quedado claro algo avisa he intentare explicartelo mejor.

Un beso

Oihana
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:Ver datos de una tabla en modo formulario

Publicado por Alfredo (3 intervenciones) el 03/02/2010 16:31:49
Hola .

Es una exelente respuesta y gracias por tomarte el tiempo en hacerlo.

Creo que este método que me acabas de dar es para usarlo unicamente con bases de datos de access. o me equivoco? la verdad estoy tratando de usar mysql. Yo se que visual basic no reconoce mysql como tal, pero trato de aprovechar un sitio que da hosting gratis de bases de datos mysql mientras aprendo el codigo.
Volviendo al tema... Crees que este metodo me puede servir con mysql?
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:Ver datos de una tabla en modo formulario

Publicado por Oihana (13 intervenciones) el 04/02/2010 12:49:19
Me alegro de que te sirviese, siempre es un placer ayudar en lo que se puede.

Pues la verdad, en lo referente a las bases de datos, nunca he probado para otro tipo, ya que las tablas que yo realizo son en access pero a traves del Administrador visual de datos que posee el visual basic. Lo veo el modo mas sencillo para asegurarte la compatibilidad. Pero pruba, no cuesta nada probar si no te funciona ya sabes a que recurrir, pero las cosas se aprenden probando.

Si pruebas, ya me diras si te funciona o no, asi yo tambien aprendo algo

Un beso

Oihana
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