Make your own free website on Tripod.com

Arquitectura de tres capas con Access

SEGUNDA CAPA: LÓGICA DE NEGOCIO

 

 

octavo proyecto: el informe

 

Caso: Base de datos de estudiantes

Incluir los datos necesarios

El número de campos va a depender de los objetivos y necesidades del sistema. Es mejor crear campos demás que no de menos. La información se escribe en forma de tabla. Supongamos que sea esta la información demandada:

Nombre del Campo

Tipo

Primary Key

SS

Text

Yes

Apellidos

Text

 

Nombre

Text

 

Dirección

Text

 

Ciudad

Text

 

Estado

Text

 

Zip Code

Text

 

Teléfono

Text

 

Major

Text

 

FechaNacim

Date/Time

 

AyudaFinanc

Yes/No

 

Sexo

Text

 

Creditos

Number

 

PuntosAcumulados

Number

 

Evita cálculos en los campos de la tabla

Un campo de cálculo es aquel cuyo valor se deriva de una fórmula o función que hace referencia a otros campos o combinación de campos existentes. Los campos de cálculos no deben guardarse en una tabla, pues están sujetos a cambios, espacios vacíos, y además puede resultar redundante.

El promedio de la puntuación o Grade Point Average (GPA) es un ejemplo de un campo de cálculo. Es innecesario e indeseable guardar el promedio del estudiante en la tabla, porque la tabla contiene los campos (Créditos y PuntosAcumulados) en los que se basa el promedio. Access tiene la capacidad de calcular el GPA desde esos campos cuando lo necesite.

Creación de la tabla

Los nombres de los campos deben ser de un solo nombre.

1.      Abre Access.

2.      Elige un documento en blanco, pon el nombre de graduación.

3.      Selecciona Create table in Design view

4.      Crea en Design view la tabla anterior con el tipo de datos correspondientes y la clave primaria.

Cuidado al seleccionar el tipo de dato del Seguro Social y  la fecha de nacimiento. En el campo de SS hay que añadir Primary Key (Da un clic en el botón Primay Key), y en ambos conviene añadir Input Mask.

Añadir mascarillas (Input Mask)

1.      Selecciona el campo de SS y da un clic en Input Mask box del área Field Properties.

2.      Da un clic en el Build button  para abrir el asistente de Input Mask.

3.      Selecciona Social Security Number.  Continúa con el asistente para ajustar o modificar el formato del SS, y al final presionas Finish.

4.      Selecciona el campo FechaNacim y da un clic en Input Mask box del área Field Properties.

5.      Da un clic en el Build button  para abrir el asistente de Input Mask.

6.      Selecciona el formato Short Date.  Continúa con el asistente para ajustar o modificar el formato seleccionado, y al final presionas Finish.

Añadir una Validation Rule

1.      Selecciona el campo Sexo. Da un clic en la caja Field Size del área de Properties y cambia el tamaño por 1.

2.      Da un clic en la caja de Format del área de Properties y escribe el signo > para convertir en mayúsculas el texto entrado.

3.      Da un clic en la caja Validation Rule. Escribe “M” or “F”

4.      Da un clic en Validation Text. Escribe Debes escribir M o F.

5.      Guarda la tabla con el nombre Students.

Creación de un formulario

1.      Abre la base de datos Graduaciones.

2.      Crea una forma usando el asistente o Form Wizard. Incluye en la forma todos los campos de la tabla Students.

Modificar el formulario

Todos los objetos se ajustan al tamaño deseado y pueden ubicarse donde uno lo desee. Te recomiendo que muevas los objetos con CTRL.+ Fechas de navegación.

Alinea todos los controles y las etiquetas a la derecha.

1.      Abre la forma y cambia al Design view.

2.      Crea controles nuevos, como el de GPA, con la herramienta Text Box (ab|) de la caja de herramientas Toolbox.

§                     Da un clic en Text Box y dibujo en el panel de la forma una caja rectangular como la del modelo. Te aparecen la etiqueta con el nombre de Text 30 u otro número, y la caja de texto con la palabra Unbound.

§                     Cambia el nombre de la etiqueta por el de GPA y el nombre de la caja de texto por el de [PuntosAcumulados]/[Créditos]

3.      Guarda la forma como Students.

Modificar las propiedades del  formulario

1.      Da un clic la caja de texto donde está la fórmula del promedio y otro en el botón derecho del ratón para abrir el shortcut menu (o View/Properties). Selecciona Properties para abrir la caja de diálogo de propiedades.

2.      Si fuera necesario, activa la pestaña All tab.

3.      Escribe en Name: Promedio.

4.      Da un clic en la caja de Format. Da otro clic en la flecha en dirección hacia abajo y selecciona Fixed.

5.      Da un clic en Decimal places. Da otro clic en la flecha en dirección hacia abajo y selecciona 2.

6.      Cierra la caja de diálogo Properties.

Crear el encabezamiento del  formulario

1.      Da un clic donde dice Form Header y arrastra el ratón hasta abrir espacio suficiente para escribir el encabezamiento.

2.      Da un clic en la herramienta Label de ToolBox y dibuja una caja de texto en el encabezamiento. Escribe en la caja de texto: Forma de Información de Estudiantes.

3.      Activa la caja de texto y crea formato del texto (tipo de letra, tamaño, color)

4.      Guarda la forma.

Modificar la tabla

1.      Abre la tabla de Students en Design view y añade estos dos campos:

Campo

Tipo de Dato

Campus

Text

Major

Lookup Wizard

2.      En Major selecciona el tipo de dato Lookup Wizard… Se abre la primera pantalla del asistente preguntándote cómo quieres ver los datos. Selecciona I will type in the values that I want. Presiona Next.

3.      Escribe 1, si fuera necesario, como número de columnas.

4.      Escribe en la columna 1 las siguientes concentraciones:

5.      Presiona Next. Te pregunta por el nombre para identificar la columna. Deja Major. Da un clic en Finish.

6.      Guarda la tabla.

Crear Option Group

1.      Abre la Forma de Students en Design view.

2.      Da un clic en el botón Option Group de la caja Toolbox.

3.      Dibuja un cuadrado como de 1”, más o menos. Aparece el asistente de Option Group.

4.      Entra en la primera caja de texto Aguadilla. Entra el resto de los recintos como en el modelo. Al entrar los recintos, presiona Next.

5.      Selecciona Aguadilla como Default. Presiona Next y acepta los valores asignados a cada campus.

6.      Da un clic en la flecha dirección hacia abajo hasta encontrar el campo donde guardar “option group”. Selecciona Campus. Presiona Next.

7.      En esta pantalla selecciona: Option buttons y el estilo Sunken.

8.      Entra Campus como caption para option group. Presiona Finish.

9.      Da un clic en el borde de option group de la forma, selecciona Properties (View/Properties/All Tab) y cambia el nombre existente por el de Campus. Guarda la forma.

Añadir nuevos controles: Major y Ayuda Económica

1.      Con la forma abierta en la vista de Design:

2.      Da un clic en el View de la barra del menú.

3.      Selecciona Field List. Abre verticalmente esta ventana hasta ver todos los campos de la base de datos.

4.      Añade a la forma los campos de Major y AyudaFinanc. El campo de Major fue creado como un Combo box, y la Ayuda Financiera como un Check box.

5.      Guarda la forma.

Así debe quedar la forma en la vista de entrar entrada datos.

Entra datos hipotéticos hasta llegar a tres récords por concentración.

El promedio

Imagínate que tienes otra tabla para el registro de notas y calificaciones de tres exámenes. ¿Cómo sacarías el promedio en el formulario, sin tener en la base de datos o tabla el campo Promedio?

1.      Presenta el formulario con la vista de diseño.

2.      Crea un objeto con Text Box.

3.      Escribe en el rótulo (propiedad Caption) Promedio.

4.      Escribe en el recuadro de Text Box la siguiente fórmula:

=([Ex1] + [ Ex2 ] + [Ex3])/3 

5.      Cambia el nombre (Name) del Text Box que contiene la fórmula del promedio:

§         Da un clic con el botón derecho sobre el Text Box del Promedio.

§         Elige Properties.

§         Escribe en la propiedad Name Avg (sin punto). Este nombre se utilizará posteriormente para calcular la NOTA.

§         En la propiedad Format, elige Fixed

La Nota

Con el formulario en la vista Design:

1.

Crea un objeto con la herramienta Text Box debajo del objeto de promedio (Ver el modelo anterior).

2.

Escribe en el rótulo (Caption) Nota.

3.

Escribe en el recuadro de Text Box la siguiente fórmula:

=IIf([Avg]<59,"F",IIf([Avg]<69,"D",IIf([Avg]<79,"C",IIf([Avg]<89,"B","A"))))

Así se aparecerá cuando se ejecute el formulario.

En Access se escribe IF con dos íes IIF(...)

La comisión

If simple:

=IIf ([Ventas] >=1000,[Ventas]*.1)

If múltiple:

=IIf ([Ventas] <= 1000, “Sin comisión”,IIf([Ventas]< =5000,[Ventas]*.05, IIf([Ventas]< =10000,[Ventas]*.10, “Viaje en un Crucero”)))

El viaje en crucero ocurre por defecto cuando haya vendido más de 10,000.00

 

 

Informes y Queries

El informe será creado con el Asistente teniendo como base la tabla de Students. Los controles del informe son similares a los de la forma. Tiene un bound control, unbound control y un calculated control.

El informe

1.      Crear el informe.

§                     Abre la base de datos graduación.

§                     Da un clic en Reports del menú de Objects.

§                     Selecciona Create report by using wizard. Se abre la caja de diálogo de Report Wizard

§                     Asegúrate que esté seleccionada la Tabla Students. Coloca en la ventana Select fields los campos: Apellidos, Nombre, Teléfono y Major. Presiona Next y no sin añadas grupos.

§                     La siguiente pantalla te pregunta si quieres organizar los récordes. Selecciona por Apellidos. Presiona Next.

§                     Selecciona el layout Tabular y la orientación Portrait. Presiona Next.

§                     Elige el estilo Soft Gray. Presiona Next.

§                     Pon como título del informe Lista General de Estudiantes. Da un clic en Finish.

2.      Modificar controles existentes.

§         Cambia la vista del informe creado a Design view.

§         Abre la sección de Page Footer lo suficiente hasta ver la función =Now(). Selecciona esta función y arrástrala hasta el lado derecho de la sección Report Header, como aparece en la gráfica.

§         Da un clic a esta función con el botón derecho del ratón y selecciona en el menú que se abre Properties.

§         Da un clic en la caja de Format de la ventana de Properties y selecciona Short Date.

§         Guarda el informe.

§         Añadir un Control Unbound para añadir texto en la sección de PageFfooter:.

§         Da un clic en la herramienta Label de la caja Toolbox.

§         Da un clic y arrastra hasta dibujar una caja de texto al lado izquierdo del el área de Page Footer (ver la gráfica anterior) y escribe en la misma:  Preparado por TuNombre

§         Da un clic con el botón derecho del ratón sobre el control creado, selecciona Properties y cambia el tamaño (8) y color de letra (Rojo).

3.      Cambiar el orden.

§         Da un clic en View de la barra del Menú. Selecciona Sorting and Grouping. Aparece la caja de diálogo de Sorting and Grouping.

§         Selecciona en la primer línea de Field/Expresión el campo Major , y en la segunda, el campo Apellidos para organizarlos de forma ascendente.

§         Cierra la caja de organización y guarda el informe.

4.      Propiedades del Informe

5.      Selecciona con el botón derecho del ratón, en la ventana de la base de datos, el informe Lista General de Estudiantes.

6.      Da un clic en Properties y describe en la caja de texto el informe creado, tal como aparece en la gráfica siguiente.

7.      Cierra la caja de propiedades dando un clic en OK.

Agrupación de récords en un Informe

Los récordes pueden agruparse por categorías, de acuerdo al valor de cada campo. En nuestro caso podemos agrupar a los estudiantes por concentración, por honores (puntuación), por ciudad, etc.

Agrupando récordes se facilita hacer cálculos de cada grupo de récordes, como: contar el número de récordes de cada grupo (COUNT), la puntuación más alta (MAX) y mínima (MIN), sumar (SUM) y el promedio (AVERAGE).

El informe que se va a crear estará basado en un query, lo que implica que hay que crear antes el query.

Crear el Query

1.      Abre la base de datos Graduación.

2.      Da un clic en el botón Queries de la ventana de la base de datos

3.      Selecciona Create query in Design view.

4.      Aparece la ventana Show Table como la de Students.

5.      Presiona el comando Add para añadir la tabla al query, y presiona Close.

6.      Amplia la ventana que lista los campos de la tabla hasta ver la mayor parte de los mismos.

7.      Da un clic al campo de Major de la lista de campos y arrástralo hasta la fila de Field del query. Haz lo mismo con los campos de Apellidos, Nombre, PuntosAcumulados y Creditos.

8.      Da un clic en la fila de Sort para los campos de Major y de Apellidos, y selecciona Ascending.

Añadir un control de cálculo

1.      Da un clic en la primera columna en blanco de la fila Field (después de Créditos) y entra la siguiente expresión =[PuntosAcumulados]/[Creditos]. Presiona ENTER y se substituirá por:  Expr1: [PuntosAcumulados]/[Creditos]

2.      Guarda el query con el nombre de GPA por Major.

Modificar el Query

El resultado del promedio debe salir con dos decimales. Por consiguiente:

1.      Da un clic con el botón derecho del ratón sobre la celda donde está la fórmula del promedio (Exp1: […]) y selecciona Properties. Asegúrate que está activada la pestaña General.

2.      Escribe Promedio en Description, selecciona Fixed en Format y 2 en Decimal Places.

Ejecutar el query

Da un clic en el botón ! Run que se encuentra en la barra estándar.

El Informe con asistente

1.      Abre la base de datos Graduación.

2.      Da un clic en el botón Reports de la ventana de la base de datos

3.      Selecciona Create report by using wizard.

4.      Selecciona en Tables/Queries, el Query: GPA por Major

5.      Pasa al área de Selected Fields los campos de Major, Apellidos, Nombre y Expr1 (la fórmula del promedio).

6.      Presiona Next.

7.      Aparece la caja de diálogo preguntando por la forma de agrupar. Selecciona el campo Major y pásalo a la ventana de la derecha dando un clic en el símbolo >, y presiona Next.

8.      La siguiente pantalla pregunta por el orden de la información. Selecciona por Apellidos en orden Ascendente (default). Presiona Next.

9.      En la siguiente pantalla selecciona la opción Stepped. Asegúrate que esté marcado Adjust field width so… Presiona Next.

10.  Selecciona el estilo más apropiado. Presiona Next.

11.  Deja el mismo nombre de GPA por Major para el informe que acabas de hacer. Finish.

Organizar y agrupar

El informe creado tiene que verse en la vista Design de esta forma, solo que sin la ventana Sorting and Grouping.

1.      Modifica los títulos de Expr1 del encabezamiento de página (Page Header) y de detalles (Detail) por GPA.

2.      Saca la caja de diálogo de Sorting and Grouping dando un clic en el View de la barra del menú y luego otro clic en Sorting and Grouping.

3.      Con el campo de Major seleccionado, da un clic en la propiedad de Group Footer, y selecciona Yes.

4.      Cierra la caja de diálogo.

Crear Group Footer

1.      Da un clic en la herramienta Text Box de la caja Toolbox.

2.      Da un clic y arrastra hasta dibujar una caja de texto (esta caja contendrá el promedio GPA) en cualquier parte del el área de Major Footer.

3.      Da un clic en el text box del control (Unbound desaparece). Entra la fórmula del promedio en la caja de texto =[PuntosAcumulados]/[Creditos] para calcular el promedio de todos los estudiantes en este grupo.

4.      Da un clic en la caja anexa del control (Text14) y escribe la etiqueta Promedio GPA por Major. Modifica el tamaño de la caja y alinea la fórmula de la concentración con la del GPA del Page Header.

5.      Da un clic con el botón derecho del ratón en el control Promedio GPA y selecciona Properties.

6.      Asegúrate que está seleccionada la pestaña All.

7.      Da un clic en la caja Format y selecciona Fixed.

8.      Da un clic en Decimal places y selecciona 2.

9.      Cierra la caja de Properties y guarda el informe.

Crear el pié de página del informe (Report Footer)

El Report Footer es la última sección del informe. Se crea de la misma forma que se creó el Group Footer.

1.      Da un clic y arrastra el botón de Report Footer hasta extenderlo 0.50”.

2.      Da un clic en el botón Text Box en la caja de herramientas Toolbox, después da un clic en cualquier parte del área de report footer y arrastra hasta dibujar una caja de texto de 2” de largo aproximadamente.

3.      Da un clic en el text box del control (Unbound desaparece). Entra la fórmula del promedio en la caja =[PuntosAcumulados]/[Creditos] para calcular el promedio de todos los estudiantes en este grupo.

4.      Da un clic en la caja anexa del control (Text16) y escribe la etiqueta Promedio GPA de Todos los Estudiantes. Modifica el tamaño de la caja y alinea la fórmula de la concentración con la del GPA del Page Header.

5.      Crea el formato del control:

§         Da un clic con el botón derecho del ratón en el control Promedio GPA de Todos los Estudiantes y selecciona Properties.

§         Asegúrate que está seleccionada la pestaña All.

§         Da un clic en la caja Format y selecciona Fixed.

§         Da un clic en Decimal places y selecciona 2.

§         Cambia el Name por el de Promedio GPA de Todos los Estudiantes.

§         Cierra la caja de Properties y guarda el informe.

6.      Cierra la base de datos Graduacion.

7.      Cierra  Acces: File/Clos.

 

 

Home | Diseño Aplicaciones |