leccion 8 - enlace a formularios

Upload: idsystems

Post on 04-Apr-2018

222 views

Category:

Documents


0 download

TRANSCRIPT

  • 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