Leccion 8 - Enlace a Formularios
Transcript of Leccion 8 - Enlace a Formularios
-
7/29/2019 Leccion 8 - Enlace a Formularios
1/22
[VISUAL BASIC.NET CON BASE DE DATOS] IDSYSTEMS 2013
Enlace a formularios
Visual Studio 2005 proporciona a los desarrolladores un conjunto de herramientas y asistentes que facilitan
enormemente el trabajo y ahorran grandes cantidades de tiempo en el desarrollo de diferentes aplicaciones. De los
asistentes o herramientas que nos proporcionan mayor rendimiento en el entorno de desarrollo rpido de Microsoft,
est la que nos permite trabajar con fuentes de datos como los datos de una aplicacin tpica maestro detalle. Entre
otras cosas, nos centraremos en esta accin, que ser la que veremos en detalle a continuacin.
Qu son los datos Maestro Detalle?
El desarrollador de aplicaciones que debe trabajar con datos y fuentes de datos relacionadas entre s,
encuentra con frecuencia problemas de desarrollo en aplicaciones con datos interrelacionados. Adems, este tipo de
aplicaciones, consumen gran parte del tiempo de desarrollo y son por lo general, acciones repetitivas. Supongamos
como ejemplo general, la tabla Socios de un videoclub. Adems, relacionemos los socios del videoclub, con una tabla
Alquileres, para saber si un socio determinado tiene pelculas alquiladas, y en ese caso, saber cules.
Este sencillo ejemplo, es un claro exponente de una aplicacin que relaciona datos maestro detalle. Ambas
tablas deben estar relacionadas para recopilar la informacin que se necesite en un momento dado.
Los datos maestros seran expuestos por los socios del videoclub, mientras que los datos detalle estaranrelacionados con los datos de los alquileres de los socios.
En nuestro caso, vamos a cambiar las palabras maestro y detalle por padre e hijo, y a partir de ahora, nos
referiremos a padre como la tabla Socios, e hijo como la tabla Alquileres. De esta forma, ubicaremos sin problemas
ambos conceptos dentro del entorno de Visual Studio 2005, ya que ste tiene alguna ligera connotacin que podra
infundirnos a error como observar ms adelante.
Por suerte, Visual Studio 2005 nos proporciona un conjunto de herramientas, que hace que realizar una
aplicacin Windows con todas las caractersticas de una aplicacin maestro detalle, sea un autntico juego de nios,
que nos llevar aproximadamente un minuto de nuestro tiempo como mucho. No me cree? Contine el captulo, y se
sorprender de lo que Visual Studio 2005 puede hacer por usted.
Configurando la fuente de datos
Trabajar con fuentes de datos requiere como tarea inicial, que tengamos listo y preparado un origen de fuentes de
datos vlido.
Para esta tarea, deberemos configurar la fuente de datos que vamos a utilizar, algo que vamos a aprender a hacer a
continuacin.
Configurando el origen de la fuente de datos
Iniciaremos una nueva aplicacin Windows con Visual Studio 2005 y seleccionaremos el men Datos >
Mostrar orgenes de datos como se indica en la figura 1.
En este punto, aparecer una ventana como la que se muestra en la figura 2
LECCION 8 Enlace a formularios Pgina 1
-
7/29/2019 Leccion 8 - Enlace a Formularios
2/22
[VISUAL BASIC.NET CON BASE DE DATOS] IDSYSTEMS 2013
Como podemos apreciar, la ventana no tiene por defecto ningn origen de datos asignado, adems, esta
ventana inicialmente, no est anclada a ningn sitio del entorno. Para situarla en un lugar especfico del entorno,
haga clic sobre la ventana y arrstrela sobre la parte en la que desee situarla, como se indica por ejemplo, en la figura
3.
LECCION 8 Enlace a formularios Pgina 2
-
7/29/2019 Leccion 8 - Enlace a Formularios
3/22
[VISUAL BASIC.NET CON BASE DE DATOS] IDSYSTEMS 2013
En este punto, la ventana de orgenes de datos, quedar anclada en el entorno de desarrollo, como se muestra en la
figura 4.
Cada uno, puede situar esta ventana dnde considere oportuno. En mi caso la he situado entre las ventanas
del Explorador de soluciones y de Propiedades, pero podemos situarla dnde consideremos oportuno. Sobre la
configuracin del origen de datos, haga clic sobre la opcin Agregar nuevo origen de datos... co mo se indica en la
figura 5.
Aparecer una ventana como la que se muestra en la figura 6 en la cul indicaremos el lugar de dnde la
aplicacin obtendr los datos, y que en nuestro caso ser de unaBase de datos.
LECCION 8 Enlace a formularios Pgina 3
-
7/29/2019 Leccion 8 - Enlace a Formularios
4/22
[VISUAL BASIC.NET CON BASE DE DATOS] IDSYSTEMS 2013
Una vez seleccionado la opcin deBase de datos como tipo de origen de datos, presionaremos el botn Siguiente. En la
siguiente ventana, elegiremos la conexin de la base de datos que vamos a utilizar, o presionaremos sobre el botn
Nueva conexin... sino tenemos seleccionada la conexin que queremos utilizar.
En la figura 7, podemos ver como hemos establecido la conexin con nuestra fuente de datos, que utilizaremos en
nuestro ejemplo de creacin de la aplicacin de acceso a datos maestro detalle.
LECCION 8 Enlace a formularios Pgina 4
-
7/29/2019 Leccion 8 - Enlace a Formularios
5/22
[VISUAL BASIC.NET CON BASE DE DATOS] IDSYSTEMS 2013
A continuacin, haremos clic en el botn Siguiente. En la nueva ventana que aparece ahora dentro del
asistente para la creacin del origen de datos, indicaremos el nombre de la cadena de conexin que crearemos. En
nuestro caso, no modificaremos el nombre de la cadena de conexin, dejndola por defecto como se muestra en lafigura 8.
LECCION 8 Enlace a formularios Pgina 5
-
7/29/2019 Leccion 8 - Enlace a Formularios
6/22
[VISUAL BASIC.NET CON BASE DE DATOS] IDSYSTEMS 2013
A continuacin, haremos clic sobre el botn Siguiente.
En este punto, el asistente se conecta a la base de datos para recuperar la informacin de la base de datos y mostrarlaen la ventana del asistente como se muestra en la figura 9.
A continuacin, despliegue el objeto Tablas y seleccione las tablas Alquileres y Socios como se indica en la
figura 10. Una vez que hemos seleccionado los objetos de la base de datos, haremos clic sobre el botn Finalizar para
que el asistente concluya las opciones aadidas al asistente.
LECCION 8 Enlace a formularios Pgina 6
-
7/29/2019 Leccion 8 - Enlace a Formularios
7/22
[VISUAL BASIC.NET CON BASE DE DATOS] IDSYSTEMS 2013
La ventana del origen de datos, quedar ahora configurado de una forma similar a la que se presenta en la
figura 11.
LECCION 8 Enlace a formularios Pgina 7
-
7/29/2019 Leccion 8 - Enlace a Formularios
8/22
[VISUAL BASIC.NET CON BASE DE DATOS] IDSYSTEMS 2013
A partir de aqu, deberemos preparar las tablas del origen de datos para que se comporten como autnticos
datos e informaciones maestro detalle. Esto es lo que veremos en el siguiente mdulo.
Preparando el origen de datos
Ya hemos aprendido a aadir nuestro origen de datos, y ahora aprenderemos a prepararlo para poder utilizarlo
posteriormente en la aplicacin Windows
La preparacin del origen de datos, nos permitir seleccionar que tabla o datos queremos que acten como maestro y
cuales como detalle, o dicho de otra forma, que datos queremos que sean padre y cuales hijo.
Nuestro objetivo principal es mostrar la tablaAlquileres como tabla hijo y la tablaSocios como padre de la tabla
anterior.
Prepararemos e incrustaremos primero la tablaSocios dentro del formulario Windows comoDetalle de la
informacin, y posteriormente insertaremos la tablaAlquileres dentro del formulario.
Por ltimo, asignaremos alguna relacin que permita trabajar con las dos tablas en nuestro formulario Windows sinperder la conexin entre ambas tablas y permitindonos acceder a la informacin que nos proporciona dicha relacin.
Preparando la tabla padre
Lo primero que haremos ser preparar la tabla padre para poderla aadir al formulario Windows. Por esa razn,
haremos clic sobre la tablaSocios de la ventana de Orgenes de datos como se indica en la figura 1.
En la ventana de Orgenes de datos y en concreto con la tabla Socios desplegada, centraremos nuestra atencin en el
campoNIFcomo se indica en la figura 2.
LECCION 8 Enlace a formularios Pgina 8
-
7/29/2019 Leccion 8 - Enlace a Formularios
9/22
[VISUAL BASIC.NET CON BASE DE DATOS] IDSYSTEMS 2013
Pulse sobre la lista desplegable que aparece a la derecha del campo NIFy seleccione la opcinLabelcomo se indica en
la figura 3.
En este caso, la ventana de Orgenes de datos quedar informada tal y como se indica en la figura 4.
A continuacin, haremos clic sobre la tabla Socios como se indica en la figura 5, y posteriormente presionaremos
sobre la lista desplegable que aparece a la derecha de la tabla.
LECCION 8 Enlace a formularios Pgina 9
-
7/29/2019 Leccion 8 - Enlace a Formularios
10/22
[VISUAL BASIC.NET CON BASE DE DATOS] IDSYSTEMS 2013
Si hacemos clic sobre la lista desplegable, aparecer una lista de opciones o posibilidades, para indicar cmo
queremos que sean los campos de la tabla seleccionada con respecto a que tipo de controles queremos que sean. Esto
es lo que se indica en la figura 6.
Por defecto, una tabla queda determinada con un icono que representa el control DataGridView, aunque se puede
modificar la representacin que deseamos tengan los datos dentro de un formulario seleccionando cualquiera de las
opciones que te mos que sean. Esto es lo que se indica en la figura 6.
Por defecto, una tabla queda determinada con un icono que representa el control DataGridView, aunque se puede
modificar la representacin que deseamos tengan los datos dentro de un formulario seleccionando cualquiera de las
opciones que te nemos de la lista desplegable. Estas opciones pueden ser cualquiera de las siguientes:
LECCION 8 Enlace a formularios Pgina 10
-
7/29/2019 Leccion 8 - Enlace a Formularios
11/22
[VISUAL BASIC.NET CON BASE DE DATOS] IDSYSTEMS 2013
En el caso de la tabla Socios que usaremos como tabla padre, cambiaremos la representacin por defecto de
DataGridView para indicarle que nos represente la informacin en controles, tal y como se indica en la figura 7.
Ahora que tenemos la tabla maestra ya preparada, pasaremos a preparar la tabla hija.
Preparando la tabla hija
Ahora que ya tenemos preparada la tabla padre, prepararemos la tabla hija de los alquileres de las pelculas de video,
para poder usar su informacin dentro del formulario Windows. Por esa razn, haga clic sobre la tablaAlquileres dela ventana de Orgenes de datos como se indica en la figura 8.
Dentro de la ventana de Orgenes de datos y en concreto de la tablaAlquileres desplegada, centraremos nuestra
atencin en el campoAlquilerID ySocioNIFcomo se indica en la figura 9.
Sobre el campoAlquilerID ySocioNIF, haremos una pequea modificacin.
LECCION 8 Enlace a formularios Pgina 11
-
7/29/2019 Leccion 8 - Enlace a Formularios
12/22
[VISUAL BASIC.NET CON BASE DE DATOS] IDSYSTEMS 2013
Pulse sobre la lista desplegable
que aparece a la derecha del campoAlquilerID ySocioNIFy seleccione la opcinLabelcomo se indica en la figura 10.
De esta manera, el campo AlquilerID y SocioNIF quedarn modificados en la ventana Orgenes de datos como se
indica en la figura 11.
LECCION 8 Enlace a formularios Pgina 12
-
7/29/2019 Leccion 8 - Enlace a Formularios
13/22
[VISUAL BASIC.NET CON BASE DE DATOS] IDSYSTEMS 2013
A continuacin, haremos clic sobre la tabla Alquileres como se indica en la figura 12, y posteriormente presionaremos
sobre la lista desplegable que aparece a la derecha de la tabla.
Nos aseguraremos que est seleccionada la opcin DataGridView que es la que aparece por defecto. Esto es lo que se
indica en la figura 13.
Una vez que tenemos las tabla maestra y detalle preparadas para utilizarlas, las aadiremos al formulario Windows
para que tengan el funcionamiento esperado.
Incrustando los datos maestro detalle
Ya sabemos como crear un origen de datos, tambin sabemos como preparar los datos maestro y detalle, y por
ltimo, lo que nos queda es insertar esos datos en el formulario, y relacionar todos sus datos para que funcionen de la
forma esperada.
A continuacin, veremos como llevar a cabo esta tarea y aprenderemos a hacerlo posible de forma muy rpida y
sencilla.
Incrustando la tabla padre en el formulario
Nuestra primera accin, ser incrustar en el formulario los datos o tabla padre, que en nuestro caso es la formada por
la tablaSocios. Para situar los datos de la tablaSocios dentro de un formulario y en concreto como una informacin
de detalle, bastar con arrastrar y soltar la tablaSocios sobre el formulario como se indica en la figura 1.
LECCION 8 Enlace a formularios Pgina 13
-
7/29/2019 Leccion 8 - Enlace a Formularios
14/22
[VISUAL BASIC.NET CON BASE DE DATOS] IDSYSTEMS 2013
Observaremos que Visual Studio 2005, generar por nosotros un conjunto de componentes y controles, que por
defecto tendr una apariencia similar a la que se presenta en la figura 2.
Observe por un momento, que el campo NIFque declaramos comoLabelen la ventana de Orgenes de datos, aparece
como tal en el formulario, tal y como se indica en la figura 3.
LECCION 8 Enlace a formularios Pgina 14
-
7/29/2019 Leccion 8 - Enlace a Formularios
15/22
[VISUAL BASIC.NET CON BASE DE DATOS] IDSYSTEMS 2013
Si ejecutamos nuestra aplicacin, observaremos que esta acta como una tpica aplicacin de acceso a datos que nos
permite navegar a travs de los campos de la tablaSocios, tal y como se indica en la figura 4.
A continuacin, insertaremos en el formulario la tablaAlquileres y relacionaremos ambas tablas para que se muestren
los datos relacionados, dentro del formulario Windows.
Incrustando la tabla hija en el formulario
Ya tenemos la tabla padre insertada en nuestro formulario Windows. Nuestra segunda accin, ser la de incrustar en
el formulario los datos o tabla hoja, que en nuestro caso es la formada por la tabla Alquileres, la cul adems, posee
una relacin entre campos con la tablaSocios insertada anteriormente.
Para llevar a cabo esta accin arrastraremos y soltaremos la tabla Alquileres sobre el formulario como se indica en la
figura 5.
LECCION 8 Enlace a formularios Pgina 15
-
7/29/2019 Leccion 8 - Enlace a Formularios
16/22
[VISUAL BASIC.NET CON BASE DE DATOS] IDSYSTEMS 2013
Observe que Visual Studio 2005, genera por nosotros ms componentes y controles, que por defecto tendr una
apariencia similar a la que se presenta en la figura 6. Como podemos observar, el entorno de trabajo ha hecho por
nosotros el trabajo ms complejo para representar los datos de forma rpida y sencilla.
Como podemos observar, el entorno de trabajo ha hecho por nosotros el trabajo ms complejo para representar los
datos de forma rpida y sencilla.
El esquema dedatos tipados
, apareca ya en nuestro proyecto cuando asignamos el correspondiente origen de datos.Ahora lo que ha ocurrido, es que al arrastrar y soltar la tabla padreSocios de la ventana de Orgenes de datos, en el
entorno se ha aadido un componente de nombreMSDNVideoDataSetque es el que permitir relacionar elDataSet
tipado con nuestros datos. Este componente ser usado por la relacin maestro detalle de las dos tablas aadidas al
formulario.
En la figura 7, podemos ver el esquema aadido a nuestro proyecto, y el componente del que estamos hablando.
LECCION 8 Enlace a formularios Pgina 16
-
7/29/2019 Leccion 8 - Enlace a Formularios
17/22
[VISUAL BASIC.NET CON BASE DE DATOS] IDSYSTEMS 2013
Ejecute la aplicacin y observe el comportamiento de la misma. Observar por lo tanto, que los datos entre detalle y
maestra, no estn relacionados. Si navegamos a travs de los datos de detalle a travs del objeto
SociosBindingNavigator, el controlDataGridView no representa la relacin de los datos seleccionados. Esto es lo que
se muestra en la figura 8.
A continuacin, la tarea que nos queda para completar el correcto funcionamiento de nuestra aplicacin, es la de
relacionar la tabla detalle y la tabla maestra entre s, para que los datos que se muestran en la aplicacin, estn
relacionados entre s.
Relacionando la tabla padre con la tabla hija
La tarea ms sencilla es la de relacionar la tabla detalle con la tabla maestra. Es una tarea sencilla, porque Visual
Studio 2005 nos proporciona las herramientas necesarias para simplificar al mximo esta tarea.
LECCION 8 Enlace a formularios Pgina 17
-
7/29/2019 Leccion 8 - Enlace a Formularios
18/22
[VISUAL BASIC.NET CON BASE DE DATOS] IDSYSTEMS 2013
Para llevar a cabo esta tarea, haga clic sobre el controlDataGridView que corresponde a los datos de la tabla maestra,
y acceda a la ventana de Propiedades. Dentro de la ventana dePropiedadesacceda a la propiedadDataSourcecomo se
indica en la figura 9.
Despliegue esta propiedad, y de la lista desplegable que aparece, seleccione la opcin FK_Alquileres_Socioscomo se
indica en la figura 10.
Cuando se asigna el campo de relacin de las tablas, dentro de la aplicacin se aade esta relacin para que cuando
naveguemos entre los datos de la tablaSocios aparezca toda la informacin de la tablaAlquileres relacionada con la
tablaSocios.
LECCION 8 Enlace a formularios Pgina 18
-
7/29/2019 Leccion 8 - Enlace a Formularios
19/22
[VISUAL BASIC.NET CON BASE DE DATOS] IDSYSTEMS 2013
Esto de lo que hablamos, est supeditado por el componente FK_Alquileres_SociosBindingSourc e que es lo que se
indica en la figura 11
Para finalizar, ejecutaremos nuestra aplicacin y comprobaremos que el funcionamiento de esta, incluida la relacin
entre tablas, funciona como esperbamos. En la figura 12, podemos observar el comportamiento de nuestra
aplicacin en ejecucin.
LECCION 8 Enlace a formularios Pgina 19
-
7/29/2019 Leccion 8 - Enlace a Formularios
20/22
[VISUAL BASIC.NET CON BASE DE DATOS] IDSYSTEMS 2013
Manipulando los datos maestro detalle
Obviamente, los datos maestro detalle no nos sirve nicamente para insertar las tablas de datos en un formulario,
mostrarlos y navegar por ellos.
Adems de esto, podemos tambin manipular los datos maestro detalle, modificarlos, actualizarlos, borrarlos, sin
hacer ninguna accin adicional. El controlBindingNavigatorya proporciona todas las caractersticas necesarias para
realizar estas acciones. Podemos personalizar el control para per mitir o denegar estas acciones. Adems, dentro de la
ventana de Orgenes de datos, podemos seleccionar diferentes campos de las tablas y cambiar el tipo de control en el
que queremos representar sus datos.
A continuacin veremos un breve ejemplo de como manipular datos para que nos sirva de aprendizaje de cmo hacer
esto posible.
Modificando datos
Ejecute la aplicacin de ejemplo que hemos diseado hasta ahora y sitese en alguno de sus campos. Centrndonos en
la informacin de la tablaSocios, cambiaremos un campo determinado, como el que se muestra en la figura 1.
LECCION 8 Enlace a formularios Pgina 20
-
7/29/2019 Leccion 8 - Enlace a Formularios
21/22
[VISUAL BASIC.NET CON BASE DE DATOS] IDSYSTEMS 2013
Acto seguido, cuando hayamos realizado la modificacin, haremos clic sobre la opcin de Guardar datos, tal y como se
muestra en la figura 2.
Como vemos, la manipulacin de datos es realmente sencilla y en la relacin de datos mostrada, no tiene porqu
presentarnos ninguna dificultad.
Insertando y eliminando datos
Si queremos agregar datos, deberemos hacer clic sobre la opcinAgregar nuevo del controlBindingNavigatorcomo se
muestra en la figura 3.
De la misma manera funciona el mecanismo para eliminar un registro, tal y como se muestra en la figura 4.
LECCION 8 Enlace a formularios Pgina 21
-
7/29/2019 Leccion 8 - Enlace a Formularios
22/22
[VISUAL BASIC.NET CON BASE DE DATOS] IDSYSTEMS 2013
Recuerde presionar el icono si quiere que los cambios y modificaciones realizadas se mantengan. Pulsando sobre
ese icono, la accin de manipulacin de datos se lanza contra la base de datos.
LECCION 8 Enlace a formularios Pgina 22