Los informes constituyen un recurso específico
para la presentación de informaciones en papel impreso. El origen de
estas informaciones puede ser una tabla o consulta. Además de eso, es
posible incluir en el informe elementos gráficos para hacerlo mas
atractivo. Como será visto, los informes también incluyen medios para
agrupar y agregar datos.
Para mostrar como se genera un informe a través
del asistente será utilizado el ejemplo que imprime la relación de
empleados y sus salarios por cargo dentro de cada departamento.
También deseamos imprimir el total de salarios
por cargo y por departamento, como así también el total general de la
empresa.
Como es un informe que involucra informaciones
con origen en las tres tablas de la base de datos, debemos crear
inicialmente una consulta que comprenda todas las informaciones
necesarias. En la consulta fueron utilizadas leyendas mnemotécnicas para
facilitar las elaboraciones posteriores:
-
Sigla del departamento (depsig)
-
Nombre del departamento (depnom)
-
Código del cargo (carcod)
-
Nombre del cargo (carnom)
-
Número del empleado (empnum)
-
Nombre del empleado (empnom)
-
Salario del Cargo (carsal)
La pantalla del proyecto de esta consulta consta
de (en la figura 7.1 observar que ya fue indicado el orden adecuado de
clasificación): sigla del departamento, código del cargo y nombre del
empleado. Mientras tanto, esto no es obligatorio para generar el
informe, el asistente efectivamente rehace esa clasificación.
El informe en su versión original fue generado
por el asistente del informe, opción seleccionada en la ventana Nuevo
informe. En esta ventana también debe ser elegida la consulta empsal por
cargo por depto cuyos registros irán a componer el informe generado. El
asistente hace 6 preguntas comentadas a continuación.
Cuales campos son deseados en el
informe. Incluir todos en el orden en que irán apareciendo las líneas.
Depsig, depnom, carcod, carnom, empnum, empnom y carsal.
Si son deseados niveles de grupo.
Ciertamente son pues deseados totalizar salarios por cargo dentro de
cada departamento. De esta forma los niveles de grupo en orden de
prioridades son: depsig y carcod.
Cual es el orden de clasificación y
Opciones de resumen informativo que se desea. El orden se
refiere a la clasificación de las líneas de detalle: por empnom.
Resumen se refiere a que será totalizado y en qué nivel: suma de
carsal mostrado a nivel de detalle y resumen.
Como se desea ordenar/distribuir el
informe. El esquema mas adecuado a la versión final es el Esquema
por nivel.
Cual es el estilo deseado de fuentes
y arte gráfica. : Negrita.
Cual es el título que debe ser
atribuido al informe; empsal por cargo por depto (versión original).
FIGURA 7.1 Consulta empsal por cargo por depto.
El informe generado por el asistente puede ser
visto accionado por el botón Ver en la ventana Base de datos. Una
parte de él es presentada en la figura 7.2 después de algunos ajustes
manuales realizados en su estructura que puede ser vista en la figura
7.3, estos ajustes fueron hechos para reducir su ancho y permitir mejor
visualización en las ventanas presentadas.
Como se observa, el informe posee la estructura
deseada pero presenta muchas diferencias con relación a la versión
final. Entre otras cosas observamos que los campos no están distribuidos
conforme lo deseado y posee medidas (largo) inadecuadas. Hay títulos en
exceso, resúmenes no requeridos y no aparecen las líneas de separación
que identifican los grupos en la versión final.
FIGURA 7.2 Informe empsal por cargo por depto
(versión original)
Todo eso tendrá que ser resuelto manualmente en
la ventada de diseño. Para correr menos riesgos se sugiere que el
usuario saque una copia del informe (vía Edición/copiar / pegar en la
ventana base de datos) antes de iniciar esta actividad. En resumen las
alteraciones realizadas fueron:
Mover para el encabezado del
informe el cuadro de texto de la fecha actual identificada por la
función Ahora() en el pié de página. Ese movimiento puede ser por
arrastre o vía Edición/cortar/pegar. Para apoyar la fecha a la derecha
del cuadro accionar le botón correspondiente en la barra de
herramientas. También incluir en el área del encabezado del informe un
rótulo con el texto "(versión final)".
Quitar del encabezado de página
los rótulos no deseados y alterar otros para los textos
"departamentos" y "cargo".
Mover para el encabezado depsig
el cuadro de texto depnom.
Mover par el encabezado carcod
el cuadro de texto carnom.
En la línea de detalle
redistribuir y redimensionar los cuadros de texto que restan: empnum,
empnom, carsal.
En el pié cardcod quitar los
cuadros de texto de resumen no deseados manteniendo el cuadro que
calcula la suma de carsal.
Idem en el pié depsin.
Quitar la numeración de páginas
del pié de la página y eliminar su área.
En el pié del informe quitar
el rótulo del total general y reposicionar la suma de carsal.
Redimencionar a la derecha las líneas
rectas que aparecen en el encabezado del informe y encabezado de
página. Copiar una de esas líneas para el pié depsig y para
el pié del informe volver su espesor más fino. Esas líneas queda
poco visibles en la ventana estructura porque se confunden con otros
elementos gráficos de la pantalla.
También es necesario copiar o generar
una línea recto en el pié carcod cuidando para llegar a su
tamaño a la izquierda correctamente.
Si todos los objetos mas a la derecha
en la ventana diseño fueros repocisionados, debe tener sobrado espacio
(fondo blanco) que puede ser reducido por arrastre de su relleno. Si
permanecieran objetos en esta área el arrastre no se concretaría.
Reducir el tamaño vertical de las
diversas áreas del informe de modo que las líneas impresas queden mas
juntas.
Aceptar las fuentes de los cuadros de
texto y rótulos. En el ejemplo fueron empleadas fuentes arial, de
tamaño 9 y 10, con y sin negrita. Además de eso, todos los colores
generados por el asistente fueron convertidos en negro.
FIGURA 7.3 Estructura del informe empsal por cargo por depto.
(versión original).
Realizados los ajustes fue obtenida la ventana de
diseño que corresponde al informe en su versión final. La ventana de
estructura de la versión final aparece en la figura 7.4.
FIGURA 7.4 Estructura del informe empsal por
cargo por depto (versión final).
Para crear un informe sin auxilio del asistente
se selecciona Informe y Nuevo en al ventana de base de datos. En
la ventana Nuevo informe se especifica la tabla o consulta que servirá
de base para el informe y se selecciona la opción Vista diseño. A título
de ejemplo será detallada la creación del informe de empleados por cargo
a partir de la tabla PADRÓN DE EMPLEADOS.
Después de picar OK aparece la ventana de diseño
del informe. Conviene especificar inicialmente cual será la organización
del agrupamientos y clasificación de los campos comprendidos. Para esto
se acciona el menú Ver opción Ordenar y agrupar o se
acciona el botón correspondiente en la barra de herramientas. En
respuesta aparece la ventana Ordenar y agrupar.
En esta ventana se indica que habrá agrupamiento
por código del cargo y los cargos deben ser listados en orden
Ascendente. Por otro lado, dentro de cada cargo los empleados deben ser
clasificados según su nombre (en verdad el nombre no constituirá grupo).
Para el código del cargo deseamos la inclusión de
una línea adicional al final de cada grupo (pié de grupo), pero
no deseamos la línea adicional en el inicio (encabezado de grupo).
Además de eso, el agrupamiento debe ser hecho por el código del cargo
por entero y el segundo algunos caracteres iniciales, por lo tanto
elegimos Agrupar cada Valor. Para esta opción el número de
caracteres es irrelevante y no precisa ser especificado. Como para el
nombre del empleado no deseamos agrupamiento alguno, no indicamos ni en
el encabezado ni en el pié las propiedades del grupo.
Después de cerrar esta ventana el sistema
incorpora la línea adicional de pié de código del cargo a la ventana de
estructura.
Ahora podemos detallar los campos que deseamos
disponer en la ventana. Para esto, basta exhibir la ventana de campos
y seleccionar el número y nombre del empleado y código del cargo
(vía tecla CTRL). Se arrastra la selección para la línea de detalle. Los
campos van acompañados de sus rótulos que precisan ser seleccionados,
recortados y pegados en la línea de encabezado de página. A
continuación, se debe definir la posición correcta de los cuadros, su
dimensión y tipo de fuente. También falta incluir un título y accesorios
estéticos.
FIGURA 7.5 Ventana Clasificar y agrupar para el
informe empleados por cargo.
Para evitar la repetición del código del cargo
en cada línea se debe seleccionar su cuadro de texto en la línea
detalle, mostrar su lista de propiedades e indicar si para la propiedad
Ocultar duplicados.
Para obtener la columna que numera los empleados
dentro de cada grupo se debe adicionar un campo calculado en la línea de
detalle. Habrá un cuadro de texto (quite el rótulo asociado) y digite la
expresión =1. Esto indica, en principio, que su valor será siempre uno.
Para obtener el efecto de cuenta o de acumulación basta exhibir su lista
de propiedades e indicar Sobre grupo para la propiedad Suma
parcial. Esto indica el sistema que a cada nuevo registro el valor
del campo es sumado al valor anterior antes de ser impreso.
Para obtener la acumulación o total de empleados
al final de cada grupo se adiciona un cuadro de texto calculada en la
línea de pié de cargo. En su rótulo se digita el texto "total " y en el
cuadro de texto se digita =suma(+1). Esto indica al sistema que la
expresión entre paréntesis (+1) debe ser acumulada a cada, nuevo,
registro impreso y cuando el grupo termina será impreso el total vigente
y el acumulador será puesto en cero antes de iniciar el próximo grupo.
Para numerar las páginas basta incrementar la
línea de pié de página un cuadro de texto con la expresión =[Página].
Será accionada la función interna del sistema (página) que devuelve el
número de página corriente. Ese texto aparece en la parte inferior de la
página impresa pero no fue posible mostrarlo en la ventana de informe
anteriormente presentada. Un medio más simple de incrementar la
numeración de páginas en el informe es a través del menú Insertar
opción Número de pagina. En la ventana de diálogo que aparece
enseguida, es posible elegir la opción, el tipo y el alineamiento de la
numeración. La ventana con la estructura final consta en la figura 7.6.
FIGURA 7.6 Estructura del informe empleados por
cargo.
Para insertar cambios de páginas basta
seleccionar el botón correspondiente en el cuadro de herramientas y
picar en el área de la ventana de diseño donde se desea la inserción. El
sistema inserta una marca de 5 puntos indicando la posición del cambio.
También es posible colocar cambios de página antes o después de un pié o
encabezado. En este case se debe usar la lista de propiedades de pié o
encabezado y definir la propiedad Forzar nueva página.
Es posible hacer agrupamientos basados en parte
de un valor. Por ejemplo, si el campo de agrupamiento fuera una fecha
entonces es posible indicar grupos basados en parte de la fecha.
Como ya fue visto, esto es hecho en la ventana
Ordenar y agrupar a través de la propiedad Reagrupar.
Dependiendo del tipo de campo el sistema ya lista las alternativas
posibles para el usuario. Algunas alternativas son: agrupar por la
primera letra de un campo de texto o agrupar según intervalos de
amplitud constante para un campo numérico.
El informe generado a seguir agrupa por
intervalos. Él fue creado a partir de la consulta empsal por cargo por
depto sin uso de asistente. El informe muestra porcentualmente la
participación de cada salario en el total de salarios y agrupa los
funcionarios según fajas de salarios de amplitud constante.
Inicialmente se abre la ventana Ordenar y
agrupar vía menú Ver para especificar los campos de
clasificación y agrupamiento. El nombre del empleado clasifica la salida
mientras tanto el salario agrupa los datos. Observar que fue elegido un
Pié de grupo para salario identificado por la leyenda carsal. El
reagrupamiento es por intervalo y e número de caracteres
indica la banda que será usada: de 1000 en 1000.
El informe posee varios cuadros de texto con
valores computados. Existe un totalizador de salarios por grupo y una
totalización general. A este total general en el pié del informe fue
atribuida una identificación: Total que posea a ser el nombre del cuadro
de texto. El nombre es una propiedad de controles muy útil si este
control preciara ser referenciado en fórmulas. Este es el caso pues para
poder computar la participación porcentual es necesario conocer el total
de salarios.
En el informe también se computa un campo a
través de la función iif/selmed. Ella testea el departamento del
empleado y marca con asterisco los empleados del departamento de
marketing.
|