33
Informes Los informes son salidas, impresas o en pantalla, que se producen a partir de tablas (o consultas, o vistas). Que sean salidas significa que no permiten modificar los datos de las tablas . Se puede tachar o corregir un dato impreso, pero eso se hace en el papel, no en las tablas. Los informes están compuestos por bandas. Las bandas están compuestas por controles de informe.

Informes Los informes son salidas, impresas o en pantalla, que se producen a partir de tablas (o consultas, o vistas). Que sean salidas significa que no

Embed Size (px)

Citation preview

Page 1: Informes Los informes son salidas, impresas o en pantalla, que se producen a partir de tablas (o consultas, o vistas). Que sean salidas significa que no

Informes

Los informes son salidas, impresas o en pantalla, que se producen a partir de tablas (o consultas, o vistas).

Que sean salidas significa que no permiten modificar los datos de las tablas. Se puede tachar o corregir un dato impreso, pero eso se hace en el papel, no en las tablas.

Los informes están compuestos por bandas. Las bandas están compuestas por controles de informe.

Page 2: Informes Los informes son salidas, impresas o en pantalla, que se producen a partir de tablas (o consultas, o vistas). Que sean salidas significa que no

Bandas

Las bandas son fajas que atraviesan horizontalmente los informes.

Las bandas aparecen con regularidad. Por ejemplo, una vez por página, una vez por informe, una vez por registro.

Cada banda se define una sola vez, agregándole los campos de informe necesarios.

Page 3: Informes Los informes son salidas, impresas o en pantalla, que se producen a partir de tablas (o consultas, o vistas). Que sean salidas significa que no

Tipos de bandas

Hay varios tipos de bandas. Identificar los tipos a usar en un caso concreto es importante para diseñar correctamente el informe.

Las bandas de un tipo cualquiera van en parejas, con excepción de la banda Detalle, que va sola.

El que haya parejas de bandas no significa que ambas deban contener controles de informe. Pueden estar vacías. Incluso pueden tener altura 0. Todo depende de la situación a resolver.

A partir de los ejemplos siguientes, veamos cuáles son los tipos de bandas.

Page 4: Informes Los informes son salidas, impresas o en pantalla, que se producen a partir de tablas (o consultas, o vistas). Que sean salidas significa que no

Informe de ventas, al 31/05/08

Fecha Factura Importe

01/05/08 11345 325,00

01/05/08 11346 82,50

01/05/08 11347 415,70

01/05/08 11349 615,00

02/05/08 11350 110,28

02/05/08 11351 78,20

02/05/08 11355 208,00

02/05/08 11356 129,00

03/05/08 11357 308,25

Total de hoja 2.271,93

Encabezado de página

Detalle

Pie de página

Detalle

Detalle

Detalle

Detalle

Detalle

Detalle

Detalle

Detalle

Detalle

Page 5: Informes Los informes son salidas, impresas o en pantalla, que se producen a partir de tablas (o consultas, o vistas). Que sean salidas significa que no

En tiempo de ejecución, la banda Detalle se repite por cada registro que se imprime y en todas las repeticiones tiene igual formato. Por eso, se define una sola vez al diseñar el informe.

En tiempo de ejecución, la banda Encabezado de página se produce cada vez que se imprime una hoja. Todas las veces, el formato de esta banda es el mismo. Por ello, se define una sola vez al diseñar el informe.

En tiempo de ejecución, la banda Pie de página aparece cada vez que se imprime una hoja. En las distintas hojas impresas, el formato de esta banda es el mismo. Por ello, se define una sola vez al diseñar el informe.

Estas tres bandas aparecen siempre en el Diseñador de informes y no se las puede eliminar. Sí se puede anularlas, dándoles altura 0.

Page 6: Informes Los informes son salidas, impresas o en pantalla, que se producen a partir de tablas (o consultas, o vistas). Que sean salidas significa que no

El diseñador de informes se verá así:

Encabezado de página ▲

Detalle ▲

Pie de página ▲

Page 7: Informes Los informes son salidas, impresas o en pantalla, que se producen a partir de tablas (o consultas, o vistas). Que sean salidas significa que no

Si ordenamos la tabla por fecha de factura, vamos a tener primero un grupo de registros con la fecha a, luego otro grupo de registros con la fecha b, luego otro grupo de registros con la fecha c, etc.

Esto nos permite definir grupos de datos por el campo Fecha. Se supone que la tabla tiene un índice por fecha, que debe activarse en el entorno de datos del informe.

En tiempo de diseño aparecerán dos bandas, Encabezado de grupo 1 y Pie de grupo 1, que rodean a la banda Detalle.

Page 8: Informes Los informes son salidas, impresas o en pantalla, que se producen a partir de tablas (o consultas, o vistas). Que sean salidas significa que no

El diseñador de informes se verá así:

Encabezado de página ▲

Detalle ▲

Pie de grupo 1: Fecha ▲

Encabezado de grupo 1: Fecha ▲

Pie de página ▲

Page 9: Informes Los informes son salidas, impresas o en pantalla, que se producen a partir de tablas (o consultas, o vistas). Que sean salidas significa que no

Informe de ventas, al 31/05/08

Fecha Factura Importe

01/05/08

11345 325,00

11346 82,50

11347 415,70

11349 615,00

Subtotal 1.438,20

02/05/08

11350 110,28

11351 78,20

11355 208,00

11356 129,00

Subtotal 525,48

03/05/08

En tiempo de ejecución, se producirá el siguiente informe:

Page 10: Informes Los informes son salidas, impresas o en pantalla, que se producen a partir de tablas (o consultas, o vistas). Que sean salidas significa que no

En el ejemplo anterior, observe que la fecha ocupa una línea entera.

Si se listara un año entero, o dos, o tres, etc., habría muchos grupos. Esto ocasionaría excesivo gasto de papel con las líneas de fecha.

Para evitar ese desperdicio, el listado podría ser como sigue:

Informe de ventas, al 31/05/08

Fecha Factura Importe

01/05/08 11345 325,00

11346 82,50

11347 415,70

11349 615,00

Subtotal 1.438,20

02/05/08 11350 110,28

11351 78,20

11355 208,00

11356 129,00

Subtotal 525,48

03/05/08 11357 308,25

Page 11: Informes Los informes son salidas, impresas o en pantalla, que se producen a partir de tablas (o consultas, o vistas). Que sean salidas significa que no

En el informe mejorado último, no se usa la banda Encabezado de grupo 1, que no tiene controles y tiene altura 0.

La fecha se coloca en la banda Detalle, pero haciendo que no se repita en la segunda, tercera, etc., líneas de cada grupo.

Lo anterior se consigue evitando la impresión de valores consecutivos repetidos. Es decir, se usa una impresión condicional.

Page 12: Informes Los informes son salidas, impresas o en pantalla, que se producen a partir de tablas (o consultas, o vistas). Que sean salidas significa que no

Si la tabla estuviera ordenada por cliente y fecha, podríamos usar un grupo para el cliente y un subgrupo para la fecha.

VFP permite usar varios subgrupos. Para no llamarlos grupo, subgrupo, sub subgrupo, sub sub subgrupo, etc., llama grupo 1 a la jerarquía mayor, grupo 2 a la jerarquía siguiente, grupo 3 a la que sigue, etc.

Esto supone que la tabla tiene un índice por múltiples campos. Un índice por los campos Cliente y Fecha ordena los registros formando grupos por cliente y dentro de cada grupo ordena los registros por fecha. Por ejemplo:

Cliente Fecha Factura Importe Etc.

1 01/05/08

1 01/05/08

1 05/05/08

2 07/05/08

2 22/05/08

2 22/05/08

2 22/05/08

Page 13: Informes Los informes son salidas, impresas o en pantalla, que se producen a partir de tablas (o consultas, o vistas). Que sean salidas significa que no

El diseñador de informes se verá así:

Encabezado de página ▲

Encabezado de grupo 1: cliente ▲

Encabezado de grupo 2: fecha ▲

Detalle ▲

Pie de grupo 2: fecha ▲

Pie de grupo 1: cliente ▲

Pie de página ▲

Page 14: Informes Los informes son salidas, impresas o en pantalla, que se producen a partir de tablas (o consultas, o vistas). Que sean salidas significa que no

El esquema anterior pone en evidencia que el Grupo 2 tiene menor alcance que el Grupo 1, por lo que los encabezados son de Grupo 1 y luego de Grupo 2. Pero los pies se invierten: primero el pie de grupo 2 y luego el de grupo 1, porque el grupo 2 puede darse varias veces por cada grupo 1.

Generalizando a cualquier cantidad de grupos, la disposición será:

Encabezado de grupo 1

Encabezado de grupo 2

Encabezado de grupo n

Detalle

Pie de grupo n

Pie de grupo 2

Pie de grupo 1

Page 15: Informes Los informes son salidas, impresas o en pantalla, que se producen a partir de tablas (o consultas, o vistas). Que sean salidas significa que no

Sea que un informe, una vez impreso, se ve así:

Listado alfabético de clientes

Cliente Código

Agüero, Alberto 1

Alvarado, Pedro 15

Arce, Julio 27

Báez, Luis 18

Becerra, Eusebio 21

Boca, Andrés 35

Bustos, Adriana 48

Cantó, Teresa 67

Carreras, José 12

Coria, Jesús 39

Page 16: Informes Los informes son salidas, impresas o en pantalla, que se producen a partir de tablas (o consultas, o vistas). Que sean salidas significa que no

Los datos del listado ocupan muy poco espacio horizontalmente. Queda una gran porción de hoja a la derecha. Esto es un desperdicio de papel.

VFP permite usar la parte derecha definiendo 2, 3 ó más columnas de informe. Una columna de informe es una página virtual dentro de la hoja física.

Para definir la cantidad de columnas, se usa Archivo - Preparar página, que también permite definir un espacio de separación entre columnas. Cuando se definen más de 1 columna, se agregan las bandas Encabezado de columna y Pie de columna.

No confunda columna de informe con las columnas de datos que se ven una vez impreso el informe.

Archivo – Preparar página también sirve para definir el tamaño y la orientación del papel.

Page 17: Informes Los informes son salidas, impresas o en pantalla, que se producen a partir de tablas (o consultas, o vistas). Que sean salidas significa que no

Un informe con grupo 1 a 2 columnas, en el Diseñador de informes se verá así:

Encabezado de página ▲

Encabezado de columna ▲

Encabezado de grupo 1 ▲

Detalle ▲

Pie de grupo 1 ▲

Pie de columna ▲

Pie de página ▲

Page 18: Informes Los informes son salidas, impresas o en pantalla, que se producen a partir de tablas (o consultas, o vistas). Que sean salidas significa que no

Observe que el ancho de las bandas Encabezado de grupo 1, Detalle y Pie de grupo 1 se han reducido al ancho que tienen las bandas Encabezado de columna y Pie de columna.

Es lógico, porque esas tres bandas van a entrar en cada columna de informe. Quedan exceptuadas Encabezado de página y pie de página, que, por referirse a la hoja física, no se reducen al ancho de cada columna.

Si la separación entre columnas es 0, el ancho de cada una va a ser igual a la mitad, tercera parte, cuarta parte, etc. del ancho total del informe, según se definan 2, 3, 4, etc. columnas.

Si la separación entre columnas se define como x, en n columnas habrá n -1 separaciones. El ancho de cada columna será

[ancho total – (n – 1) separación] / cantidad de columnas.

Page 19: Informes Los informes son salidas, impresas o en pantalla, que se producen a partir de tablas (o consultas, o vistas). Que sean salidas significa que no

Hay dos bandas más, que van en los extremos del informe: Título y Resumen.

Ambas se activan con Informe - Título / Resumen. Aunque conceptualmente forman pareja, se pueden activar ambas, una sola o ninguna.

La banda Título se imprime al comienzo del informe. Sirve para mostrar el nombre de la institución, el nombre del impreso, el logo, etc. Puede ir en la primera hoja a imprimir, por separado, o en la primera hoja del informe propiamente dicho.

La banda Resumen se imprime al final del informe. Sirve, por ejemplo, para dar totales generales. Puede ir en la última hoja a imprimir, por separado, o en la última hoja del informe propiamente dicho.

En el Diseñador de informes, la banda Título aparece arriba de todo, antes de la banda Encabezado de página. La banda Resumen aparece debajo de todo, después de la banda Pie de página.

Page 20: Informes Los informes son salidas, impresas o en pantalla, que se producen a partir de tablas (o consultas, o vistas). Que sean salidas significa que no

Controles de informe

Dentro de las bandas se agregan controles de informe.

Los controles de informe son Etiqueta, Campo, Línea, Rectángulo, Rectángulo redondeado e Imagen. El cuadro siguiente los compara en propósito con los controles de formularios.

Cada tipo de control tiene propiedades. A diferencia de la ventana Propiedades de formularios y entornos de datos, estas propiedades se configuran a través de cuadros de diálogos específicos para cada tipo.

Informes Formularios

Etiqueta Label

Campo TextBox

Línea Line

Rectángulos Shape

Imagen Picture

Page 21: Informes Los informes son salidas, impresas o en pantalla, que se producen a partir de tablas (o consultas, o vistas). Que sean salidas significa que no

El ancho con que se diseña un control es fijo.

Esto tiene impacto especialmente en el control Campo. En principio, si el contenido a mostrar es mayor al ancho, el contenido se trunca. Por ejemplo:

Contenido a mostrar: Belgrano, Manuel Joaquín del Corazón de Jesús.

Tamaño del campo:

Campo impreso: Belgrano, Manuel

La propiedad Ajustar al contenido del texto de este control produce la impresión de la siguiente forma.

Belgrano, ManuelJoaquín del Corazónde Jesús

Análisis de algunas propiedades

Page 22: Informes Los informes son salidas, impresas o en pantalla, que se producen a partir de tablas (o consultas, o vistas). Que sean salidas significa que no

La solución anterior, sin embargo, puede traer problemas. Sea que en una banda haya varios campos, algunos de los cuales están uno bajo el otro:

A

B

Si el campo A tiene activada la propiedad Ajustar al contenido del texto y el campo B tiene una posición fija dentro de la banda, al Imprimirse el campo A en varias líneas se superpondrá al campo B:

Este es el contenido delcampo A, que se escribe en varias líneas.Este es el campo B

Page 23: Informes Los informes son salidas, impresas o en pantalla, que se producen a partir de tablas (o consultas, o vistas). Que sean salidas significa que no

Para solucionar el inconveniente, al campo B se le da una posición variable, activando la propiedad Flotante o la propiedad Borde inferior de la banda.

Flotante hace que, una vez escrito el campo A, el campo B comenzará a escribirse respetando la separación vertical con que se han diseñado ambos campos.

Borde inferior de la banda hace que, al aumentar la altura de la banda por el crecimiento vertical de A, el control B irá descendiendo, porque su posición es relativa al borde inferior de la banda.

Con cualquiera de estas propiedades activa, la banda se imprimirá:

Este es el contenido delcampo A, que se escribe en varias líneas.

Contenido de B.

Page 24: Informes Los informes son salidas, impresas o en pantalla, que se producen a partir de tablas (o consultas, o vistas). Que sean salidas significa que no

Nótese que la propiedad Borde inferior de la banda funciona aun cuando el control A no está encima del control B:

A

B

Page 25: Informes Los informes son salidas, impresas o en pantalla, que se producen a partir de tablas (o consultas, o vistas). Que sean salidas significa que no

A veces, el valor de un campo se repite varias veces en forma inmediata.

Informe de ventas, al 31/05/08

Fecha Factura Importe

01/05/08 11345 325,00

01/05/08 11346 82,50

01/05/08 11347 415,70

01/05/08 11349 615,00

02/05/08 11350 110,28

02/05/08 11351 78,20

02/05/08 11355 208,00

02/05/08 11356 129,00

02/05/08 11357 308,25

Page 26: Informes Los informes son salidas, impresas o en pantalla, que se producen a partir de tablas (o consultas, o vistas). Que sean salidas significa que no

El informe puede resultar más claro de entender si se presenta así:

Informe de ventas, al 31/05/08

Fecha Factura Importe

01/05/08 11345 325,00

11346 82,50

11347 415,70

11349 615,00

02/05/08 11350 110,28

11351 78,20

11355 208,00

11356 129,00

11357 308,25

Page 27: Informes Los informes son salidas, impresas o en pantalla, que se producen a partir de tablas (o consultas, o vistas). Que sean salidas significa que no

Para lograr lo anterior, se recurre al diálogo Imprimir condiciones. Primero se indica que No se quiere Imprimir valores repetidos. Si se quieren excepciones a esta regla, se contemplan tres situaciones.

En primera banda completa de nueva página / columna. Es para el caso que una banda Detalle necesite una línea de impresión. Si un valor repetido abarca más de una hoja, se repite nuevamente al comienzo de cada una de ellas. Esto evita tener que volver hojas hacia atrás buscando cuál es el valor que corresponde, cuando no se usa esta opción.

Page 28: Informes Los informes son salidas, impresas o en pantalla, que se producen a partir de tablas (o consultas, o vistas). Que sean salidas significa que no

Informe de ventas, al 31/05/08

Fecha Factura Importe

01/05/08 11345 325,00

11346 82,50

11347 415,70

11349 615,00

02/05/08 11350 110,28

11351 78,20

11355 208,00

11356 129,00

11357 308,25

Hoja 1

Informe de ventas, al 31/05/08

Fecha Factura Importe

02/05/08 11358 480,00

11359 95,00

11360 708,15

11361 223,00

03/05/08 11362 218,80

11364 62,40

11365 316,00

11366 188,00

11367 527,00

Hoja 2

En la hoja 2, para saber cuál es la primera fecha, no es necesario volver a la hoja 1, porque está impresa.

Page 29: Informes Los informes son salidas, impresas o en pantalla, que se producen a partir de tablas (o consultas, o vistas). Que sean salidas significa que no

Cuando detalle pase a nueva página / columna. En ocasiones, dentro de una banda, se colocan objetos a distintas alturas. Por ejemplo:

Sea que el campo código del cliente, que aparece en la primera línea, tiene No en Imprimir valores repetidos.

Sea que un cliente se repite varias veces. Al imprimir esa banda al final de la hoja, sólo hay espacio para las dos primeras líneas.

Como la impresión de la banda está incompleta, VFP la imprime en la hoja siguiente:

Importe

Factura Fecha

Page 30: Informes Los informes son salidas, impresas o en pantalla, que se producen a partir de tablas (o consultas, o vistas). Que sean salidas significa que no

Listado de clientes y sus compras

267

Factura 15268 Fecha 25/02/08

Importe $425,00

267

Factura 16818 Fecha 14/03/08

Importe

267

Factura 16924 Fecha 21/03/08

Importe $1215,00

267

Factura 17005 Fecha 29/03/08

Importe $1.205,00

267

Factura 17115 Fecha 05/04/08

Hoja 1

Listado de clientes y sus compras

267

Importe $2150,00

267

Factura 17223 Fecha 21/04/08

Importe

267

Factura 17307 Fecha 25/04/08

Importe $3270,00

267

Factura 17412 Fecha 02/05/08

Importe $628,00

267

Factura 17671 Fecha 15/05/08

Importe $189,00

Hoja 2

Page 31: Informes Los informes son salidas, impresas o en pantalla, que se producen a partir de tablas (o consultas, o vistas). Que sean salidas significa que no

En el ejemplo anterior, el número de cliente, 267, se ve en rojo cuando no se imprime, en razón que se repite.

Esto deja líneas en blanco en el informe, provocando desperdicio de papel.

Para evitar el desperdicio, se puede activar la propiedad Quitar líneas en blanco.

Esta propiedad no imprime líneas que estén totalmente en blanco, como en el ejemplo.

Si en la misma línea hubiera varios objetos, todos deberían tener activada esta propiedad y deberían estar simultáneamente en blanco para que la propiedad surta efecto.

Page 32: Informes Los informes son salidas, impresas o en pantalla, que se producen a partir de tablas (o consultas, o vistas). Que sean salidas significa que no

Cuando cambie este grupo. Sea el siguiente impreso:

Ventas por cliente y fecha

Cliente Nombre Fecha Importe

125 González, Juan Alberto

10/07/08 3.245,00

12/08/08 1.217,00

Total 4.462,00

126 García, Pedro Vicente

1.243,00

21/07/08 2.302,00

02/08/08 1.342,00

Total 4.887,00

……..

Page 33: Informes Los informes son salidas, impresas o en pantalla, que se producen a partir de tablas (o consultas, o vistas). Que sean salidas significa que no

El informe anterior está agrupado por cliente. El campo Fecha tiene inactiva la propiedad Imprimir valores repetidos.

Esto provoca que la primera compra del cliente 126 salga sin fecha, porque es la misma fecha que la última línea del cliente 125.

Pero la falta de fecha provoca desconcierto, porque una cosa son las compras del cliente 125 y otra cosa las compras del cliente 126.

Para evitar ese efecto “desagradable”, se activa la propiedad Cuando cambie este grupo. La propiedad necesita que se indique cuál es el grupo en cuestión, para lo que ofrece una lista de los grupos existentes a ese momento, de los que se debe elegir uno.