Informática
Bases de datos

Tu Instituto Online
   


 
Nivel Básico Base: Formularios maestro-detalle/subformularios
Duración aproximada: 1 sesión.
   
Objetivos Objetivos
  • Concepto de formulario maestro-detalle o subformulario.
  • Crear y utilizar subformularios.
   
Fuentes de información Fuentes de información
   
Contenidos
Contenidos
 

1. Formularios maestro-detalle/subformularios

Los formularios maestro-detalle o subformularios representan formularios que se encuentran localizados dentro de otros formularios. Sirven para mostrar información contextual o adicional de uno o más campos del formulario.

2. Subformularios con el asistente

En prácticas anteriores, nos habíamos saltado el paso de añadir subformularios. Ahora ha llegado el momento de utilizar ese paso para crear nuestros subformularios.

   
Ejercicios
Ejercicio
 

2.1. Base de datos "videoclub"

Crear subformulario

Vamos a crear un formulario GENERO haciendo que, cada vez que nos movemos entre los distintos registros, nos muestre la información de todas las películas pertenecientes a ese género. Para ello, vamos a utilizar subformularios.
  • Abre la base de datos "videoclub".
  • Haz clic en el botón Formularios de la Barra de Objetos.
  • En la zona superior de Tareas, haz clic en la opción Usar el asistente para crear un formulario.
Paso 1. Selección de campo

Debemos elegir qué campos queremos que se muestren en el formulario.

  • Elige la tabla GENERO.
  • Selecciona todos los campos.
  • Pulsa Siguiente.
Paso 2. Configurar un subformulario

Vamos a crear un subformulario basándonos en la relación existente entre la tabla GENERO y PELICULA, dado que un género tiene muchas películas y dada una película pertenece a un sólo género.

  • Marca la casilla Agregar subformulario.
  • Marca la opción Subformulario basado en relación existente. Haz clic sobre la tabla PELICULA.

  • Haz clic en Siguiente.
Paso 3. Agregar campos de subformulario

Debemos añadir los campos a mostrar en el subformulario.

  • Selecciona los campos "Titulo", "Director", "Anyo", "Duracion", "Soporte", "Argumento" y "Genero".

  • Haz clic en Siguiente.
Paso 5. Organizar campos de control
  • En el siguiente paso podemos elegir la distribución de los campos en el formulario.
  • Haz clic en el icono de la izquierda “En columnas - Etiquetas a la izquierda”.
  • Haz clic en Siguiente.
Paso 6. Establecer entrada de datos

Dejamos las opciones por defecto.

  • Pulsa Siguiente.
Paso 7. Aplicar estilos
  • Aquí vamos a elegir uno de los estilos propuestos por Base.
  • Elige el color y efectos 2D ó 3D que quieras.
  • Haz clic en Siguiente.
Paso 8. Establecer nombre

Por último guardamos el formulario.

  • En el campo Nombre del formulario escribe GENERO_SF. Resto de opciones por defecto.
  • Haz clic en Finalizar.

Una vez finalizado el asistente, se nos abre el formulario para manipular datos. Si nos fijamos, cada vez que cambiamos de género, los datos del subformulario cambian automáticamente, mostrando información detallada de las películas que pertenecen a ese género.

Personalizar formulario

  • Edita el formulario GENERO_SF en vista Diseño.
  • Puede utilizarse los efectos y colores que se desee.
  • Cambia el color de fondo.
  • Redimensiona los elementos de la pantalla.
  • Inserta un rectángulo redondeado 3D. Escribe dentro el texto “GÉNEROS-DETALLE”.
  • Por ejemplo:

Cerrar la base de datos

  • Guarda los cambios en la base de datos.
  • Cierra la base de datos "videoclub".

Subir fichero

  • Sube la base de datos "videoclub" a la plataforma.
   
Ejercicios
Ejercicio
 

2.2. Base de datos "gimnasio"

Vamos a hacer aún más intuitivo el formulario SOCIO haciendo que, cada vez que nos movemos entre los distintos registros, nos muestre la descripción de la actividad que realiza cada socio. Para ello, vamos a utilizar subformularios.

Crear consulta

En primer lugar, necesitamos crear una consulta que posteriormente usaremos en nuestro subformulario.

  • Abre la base de datos "gimnasio" del bloque básico de prácticas.
  • Crea una consulta en vista diseño con nombre CSF_ACTIVIDAD. Elige la tabla ACTIVIDAD y selecciona los campos "Actividad" y "Descripcion".
  • Cierra la consulta.

Crear subformulario

  • Haz clic en el botón Formularios de la Barra de Objetos.
  • En la zona superior de Tareas, haz clic en la opción Usar el asistente para crear un formulario.
Paso 1. Selección de campo

Debemos elegir qué campos queremos que se muestren en el formulario.

  • Elige la tabla SOCIO.
  • Selecciona todos los campos.
  • Pulsa Siguiente.
Paso 2. Configurar un subformulario

Vamos a crear un subformulario basándonos en la relación existente entre la tabla GENERO y PELICULA, dado que un género tiene muchas películas y dada una película pertenece a un sólo género.

  • Marca la casilla Agregar subformulario.
  • Marca la opción Subformulario basado en selección manual de campos.

  • Haz clic en Siguiente.
Paso 3. Agregar campos de subformulario

Debemos añadir los campos a mostrar en el subformulario.

  • Elige la consulta CSF_ACTIVIDAD y selecciona los 2 campos de dicha consulta.

  • Haz clic en Siguiente.

Paso 4. Obtener campos combinados

En este paso se define la relación existente entre el subformulario y el formulario principal.

  • En Primer campo de subformulario combinado, selecciona el campo “Actividad”.
  • En Primer campo de formulario principal, selecciona el campo “Actividad”.

  • Haz clic en Siguiente.
Paso 5. Organizar campos de control
  • En el siguiente paso podemos elegir la distribución de los campos en el formulario.
  • Haz clic en el icono de la izquierda “En columnas - Etiquetas a la izquierda”.
  • Haz clic en Siguiente.
Paso 6. Establecer entrada de datos

Dejamos las opciones por defecto.

  • Pulsa Siguiente.
Paso 7. Aplicar estilos
  • Aquí vamos a elegir uno de los estilos propuestos por Base.
  • Elige el color y efectos 2D ó 3D que quieras.
  • Haz clic en Siguiente.
Paso 8. Establecer nombre

Por último guardamos el formulario.

  • En el campo Nombre del formulario escribe SOCIO_SF. Resto de opciones por defecto.
  • Haz clic en Finalizar.

Una vez finalizado el asistente, se nos abre el formulario para manipular datos. Si nos fijamos, cada vez que cambiamos de socio, los datos del subformulario cambian automáticamente, mostrando la descripción de la actividad que realiza el socio actual.

   
Ojo

Ahora bien, como podemos observar, se han perdido todos los cambios que habíamos hecho en nuestro formulario SOCIO, ya que nos faltaría incluir la lista desplegable de actividades y el campo DNI con máscara de edición de datos. Además, también se han perdido los cambios en el diseño como el color, etc.

   
Contenidos
Contenidos
 

3. Subformularios en vista diseño

El asistente es una forma rápida de crear subformularios pero tiene el inconveniente de que perdemos todos los cambios efectuados en el formulario principal.

Existe un método alternativo para incluir subformularios sin necesidad de perder las modificaciones realizadas sobre un formulario.

   
Ejercicios
Ejercicio
 

3.1. Base de datos "gimnasio"

Formulario SOCIO. Diseño

  • Haz clic en el botón Formularios de la Barra de Objetos.
  • Edita el formulario SOCIO en vista diseño.

Crear subformulario

  • En la barra de herramientas inferior, pulsa el icono Navegador de formulario.
  • Selecciona el formulario principal MainForm y con el botón derecho del ratón elige la opción Nuevo → Formulario. Pon como nombre “SF_ACTIVIDAD”.

Vincular subformulario

Ahora tenemos que indicar el vínculo que existe entre el formulario principal y el subformulario creado.

  • Haz clic en el subformulario SF_ACTIVIDAD. Con el botón derecho del ratón elige la opción Propiedades, pestaña Datos.
    • Tipo de contenido. Elige “Consulta”.
    • Contenido. Elige la consulta “CSF_ACTIVIDAD”.
    • Enlazar campos maestros. Haz clic en el botón derecho con puntos suspensivos. Selecciona el campo actividad tanto en la consulta CSF_ACTIVIDAD como en la tabla SOCIO.

Se nos despliega una ventana donde debemos indicar por qué campos vamos a relacionar ambos formularios. Nosotros queremos conseguir que, dado un socio seleccionado en el formulario principal, se muestre la descripción de la actividad realizada en un subformulario. En consecuencia, elegimos el campo en común que comparten ambas tablas de SOCIO y ACTIVIDAD, es decir, el código de actividad.

  • Cierra las propiedades del subformulario.

Insertar subformulario en formulario SOCIO

Ahora sólo nos falta elegir un campo de control que permita mostrar en el subformulario la descripción de la actividad.

  • Ve al navegador de formularios. Selecciona el subformulario “SF_ACTIVIDAD".
  • Pulsa sobre el icono de la barra izquierda llamado Más controles .
  • Base nos muestra un cuadro con controles adicionales. Hacemos clic en el icono Control de tablas.
  • Dibuja el nuevo control en el formulario, por ejemplo al lado del campo “Actividad”. Nos aparece un asistente donde elegimos los campos de “Actividad” y “Descripcion” de la consulta CSF_ACTIVIDAD.

  • Haz clic en el botón Finalizar.

Como podemos ver, se ha creado un nuevo control dentro del subformulario.

Modificar subformulario

Modificamos las propiedades del nuevo control para que sólo se pueda visualizar su contenido.

  • Haz doble clic sobre el nuevo campo de subformulario.
  • Selecciona la pestaña General. Modifica las siguientes propiedades:
    • Activado: No.
    • Barra de navegación: No.
    • Marcador de registros: No.
  • Cierra la ventana Propiedades.
  • Cierra el navegador de formularios.
  • Mueve y redimensiona los diferentes campos para dejar un diseño funcional. Por ejemplo:

  • Cierra el formulario.

Formulario SOCIO. Entrada de datos

  • Haz doble clic sobre el formulario SOCIO. Comprueba que se muestra la descripción de la actividad que realiza cada socio.

Cerrar la base de datos

  • Guarda los cambios en la base de datos.
  • Cierra la base de datos "gimnasio".

Subir fichero

  • Sube la base de datos "gimnasio" a la plataforma.
   
   
Creditos Créditos
Licencia de Creative Commons

El texto de esta obra está bajo una licencia de Creative Commons Reconocimiento-NoComercial-CompartirIgual 3.0 España.
TuInstitutoOnline.com G.García, P.Gargallo, A.Martínez. v. 2.0.1.6.0

Los reconocimientos se realizan en el apartado Fuentes de información.

Los iconos empleados están protegidos por la licencia LGPL y se han obtenido de:
https://commons.wikimedia.org/wiki/Crystal_Clear
https://www.openclipart.org