13.3. Personalización avanzada Cómo crear informes mediante Report Builder Un informe es un documento que nos va a mostrar una información. En un informe disponemos de varias secciones. El encabezado de página se coloca siempre en la parte superior de cada página, en caso de ocupar más de una, se repite en cada una de ellas. El pie de página se sitúa siempre en el extremo inferior de la página. En caso de que el informe ocupe varias páginas, todas dispondrán del mismo pie de página en el extremo inferior. El detalle son los datos que queremos mostrar. En el detalle solo tenemos que especificar la forma de uno solo de los registros que queremos mostrar, y automáticamente se irá repitiendo por toda la sección de la hoja, tantas veces como registros tengamos, ocupando varias hojas si fuese necesario. Además podemos tener otra sección llamada sumario, que se muestra justo después del último registro. En este caso, el detalle ocupa dos hojas y media. El sumario se muestra justo al acabar el detalle (sección rosada). El encabezado y el pie de página se repiten en cada hoja. Adicionalmente podemos definir grupos, lo que nos permite agrupar los datos por un valor de un campo, en este caso tendremos un detalle general y un detalle para cada grupo que definamos. La pantalla de Report Builder Esta es una muestra de la pantalla de Report Builder con un informe vacío. Se pueden distinguir las tres secciones: Encabezado, Detalle y Pie. En la parte superior tenemos dos pestañas: La pestaña Diseño nos sitúa en la vista de diseño, que nos permite modificar el estilo del informe, añadir o quitar campos, etc. La pestaña Preveer nos lleva a una vista preliminar del informe, donde podemos comprobar en cada momento que aspecto adoptan los cambios que vamos haciendo en el diseño del informe. Barras de Herramientas El gestor de informes Report Builder dispone de varias barras de herramientas. La primera vez que accedemos a Report Builder sólo veremos algunas en concreto, pero podemos ver el resto, u ocultar las que no necesitemos desde el menú Barras de Herramientas en el menú Ver. Componentes Estándar Esta barra nos muestra una serie de componentes que podemos añadir al formulario. Los veremos en detalle posteriormente. Como característica principal, sólo introducir que estos componentes son independientes de los datos del programa, es decir, podemos poner en ellos lo que queramos. Componentes de Datos Esta barra nos muestra una serie de componentes que podemos utilizar para trabajar con los datos del programa. Estos componentes muestran siempre el valor del campo del programa que indiquemos. Componentes Avanzados Estos componentes tienen un uso muy concreto y que veremos más adelante. Árbol de informe Árbol de informe abre una ventana emergente que nos muestra el diseño del informe de forma esquemática, en ella vemos las secciones y los controles que hemos puesto. Visión de áreas en la versión inglesa Header : Encabezado Detail : Detalle Footer : Pie de página. Árbol de Datos Muestra todos los datos del programa a los que podemos acceder. En la parte superior tenemos un cuadro con uno o varios orígenes de datos: Agrupaciones de datos de diferente procedencia. En este caso sólo hay un solo origen de datos, pero podría haber más. En algunas versiones, estos orígenes de datos recibían el nombre de Pipelines. En las nuevas versiones se muestran con nombres identificativos de los datos que contienen. En la parte inferior tenemos los campos que disponemos para cada origen, así como su tipo: String : Cadena de caracteres. Boolean: Lógico (Sí/No, Verdadero/False ) DateTime: Fecha u hora. Integer : Número Entero. Double : Número con decimales. Para introducir un nuevo campo al informe, una vez mostrada la ventana del árbol de datos, simplemente pinche encima del campo elegido y arrástrelo al informe. Si es preciso, mueva la ventana “Árbol de datos” a un lateral de la pantalla. En el campo tamaño nos indica cuantos caracteres puede tener una cadena de caracteres como máximo. En la parte inferior tenemos dos pestañas. En la pestaña Presentación podemos elegir el formato con que se nos mostrarán estos campos. Estándar Esta barra de herramientas contiene las acciones más habituales: • • • • • • • • • Crear un informe Abrir un informe existente Guardar informe Configurar Página Imprimir Vista Preliminar Cortar Copiar Pegar Es importante decir que un informe depende de forma directa de los datos que puede mostrar, si intentamos abrir un informe que está diseñado para trabajar con otros datos, diferentes con los que estamos trabajando, perderemos el diseño anterior y el informe quedará inservible para los datos antiguos. Formato Con esta barra de herramientas podemos controlar el formato de los controles que incluyamos en el informe. De la misma forma que hacemos con cualquier procesador de textos normal, como el Microsoft © Word, podemos editar y cambiar los estilos. Edición La barra de edición permite modificar el contenido de los controles (su etiqueta o el campo asociado). Dibujo La barra de herramientas de dibujo nos permite especificar el color de fondo de las figuras que utilicemos para diseñar el informe, así como el tipo y el color de la línea y su grosor. Alinear y Espaciar Muchas veces nos interesa que los controles queden alineados para que no se vean saltos, en vez de hacerlo de forma manual, podemos seleccionar varios controles con la tecla Mayúsculas pulsada y dejar que estos botones de la barra de herramientas los alineen o los espacien de la misma forma por nosotros. Tamaño Algunas veces nos interesa que varios controles tengan el mismo ancho, o el mismo alto, en ese caso, podemos seleccionar esos controles y dejar que los botones de esta barra de herramientas nos iguale el tamaño por nosotros. Podemos modificar el tamaño de los objetos con el teclado si pulsamos la tecla Mayúsculas y con esta pulsada, pulsamos a los Cursores. Empujar Permite ajustar con más precisión la posición de los controles. Podemos hacer lo mismo si mientras tenemos los controles seleccionados, pulsamos la tecla Control y los Cursores para mover los controles. Componentes Estándar Esta colección de componentes, como ya apuntamos anteriormente, tiene como principal característica el hecho de que son controles libres, es decir, podemos poner en ellos los datos que queramos. El control de Selección Este “control” no es más que un comodín para poder pasar a modo de selección. Si elegimos algún control, y no queremos ponerlo, podemos pulsar el botón de selección y volveremos a estar como al principio. Obtendremos los mismos resultados con la tecla “Escape”. El control de etiqueta Nos permite colocar un control en el que podremos especificar cualquier texto que no ocupe más de una línea. Para modificar el texto que muestra, lo tenemos que hacer desde la barra de herramientas de Edición. El Control Memo Nos permite colocar un control en el que podemos especificar un texto, pero a diferencia que el control etiqueta, en este caso podemos especificar más de una línea. Si editamos el control desde la barra de herramientas de Edición, solo podremos especificar una sola línea, pero si encima del control Memo que hemos puesto en el informe hacemos clic sobre el botón derecho aparecerá un menú emergente con la opción Lines…, que nos permite especificar las líneas que contendrá este control. El Control Texto RTF Es un control similar al Memo, pero mientras en el control Memo todo el texto tiene que tener el mismo estilo, el control Texto RTF, permite que especificar diferentes fuentes, tamaños y colores para conjuntos de letras dentro del control. Para modificar el texto del control, podemos hacer clic con el botón derecho del ratón sobre el Control que hemos creado y seleccionar la opción Editar. Aparece un editor. El componente Variable del sistema Este componente permite introducir de forma automática la fecha y la hora del ordenador en ese momento en el informe. Es decir, este control siempre mostrará la fecha o la hora del sistema en el informe cuando lo visualicemos o lo imprimamos. El Componente Variable Permite especificar un valor variable. En la barra de herramientas de edición podemos cambiar qué tipo de variable representará (caracteres, moneda, fecha, etc.…) Asimismo haciendo clic con el botón derecho podremos acceder al menú Temporización, que nos permite especificar cada cuanto esta variable se va adaptando a los nuevos valores. El componente Imagen Nos proporciona la posibilidad de incluir una imagen fija en el informe. Si hacemos clic con el botón derecho sobre el nuevo control que hemos creado podemos acceder a diferentes menús • Imagen: permite buscar y especificar qué imagen vamos a usar en el informe. La imagen tiene que estar guardada en alguno de los siguientes formatos: BMP, WMF, EMF, JGP, JPEG, GIF o ICO, que son los formatos más usuales para imágenes normales. • Mantener Relación de aspecto: Activando esta opción, aunque cambiemos el tamaño de la imagen, esta nunca se va a ver estirada, aunque solo podremos cambia el tamaño de forma proporcional al original de la imagen. • Estirar: La imagen se adapta automáticamente al tamaño del control. Si no activamos esta opción, la imagen siempre queda en su tamaño original, aunque quede cortada. • Transparente: El color de fondo de la imagen pasa a ser “transparente”, es decir, permite visualizar lo que hay debajo del control imagen, incluso los colores. El Componente Figura Permite insertar una figura, es decir, dibujar un rectángulo, una elipse o una figura geométrica. La figura que aparece por defecto es un cuadrado, pero lo podemos cambiar desde la Barra de Herramientas de edición. Podemos cambiar la figura desde la barra de herramientas de dibujo. El componente línea Nos permite dibujar una línea en el informe. Por defecto nos aparece una línea horizontal situada “arriba”, pero desde la barra de herramientas de edición, podemos cambiar el estilo de la línea, por ejemplo a vertical. El componente código de barras Este componente nos permite incluir en el informe un código de barras. El texto a mostrar en éste código lo podemos ver en la barra de herramientas. Además, podemos cambiar la configuración del código de barras si hacemos clic sobre el código de barras con el botón derecho y elegimos la opción Configurar en el menú emergente que nos aparece. El componente CheckBox Un CheckBox es un cuadro que puede aparecer marcado o no. Por defecto aparece “marcado” o “seleccionado”. Para cambiar este estado, debemos hacer clic con el botón derecho encima del control y en el menú emergente que aparece, deseleccionar la opción “checked”. Cómo añadir campos nuevos a un informe Lo más interesante de hacer un informe es poder combinar la información con los datos del programa. Estos datos los podemos colocar en donde queramos de nuestro Report, pero si los ponemos en el detalle podremos ver todos los registros que tienen que aparecer. Hay varias formas de poner los campos, la más sencilla consiste en, teniendo visible el árbol de datos, arrastrar los campos donde queramos. Para mostrar el Árbol de datos, seleccione Árbol de datos en el menú ver Barras de herramientas. Seleccionamos el dato que queremos poner y lo arrastramos hasta dentro del informe. En un principio aparecen dos componentes. El primero es una etiqueta con el nombre del campo. Como etiqueta que es, podemos cambiarle el texto que muestra. El segundo componente es una etiqueta, pero está asociada al campo que hemos elegido. Puede ser que no muestre ningún texto o el valor de uno de los registros con los que estemos trabajando. Desde la barra de herramientas de edición podemos cambiar el campo que se va a mostrar. En un principio aparecen ambos controles seleccionados, al mover un componente se moverán los dos, y no podremos utilizar la barra de herramientas de edición para cambiar las propiedades. Para poderlo hacer, debemos hacer clic donde quiera del informe para deseleccionar los componentes y luego seleccionar el componente sobre el que queremos cambiar las opciones. Otra forma de añadir controles al informe es utilizando la barra de herramientas de componentes de Datos, equivalente la barra de herramientas de componentes estándar, pero en las que en vez de especificar el texto que van a mostrar, debemos especificar el campo que van a representar en la barra de herramientas de edición. Este enlace lo debemos hacer a mano, no se hace de forma automática. Formato Podemos especificar el formato de todos los componentes mediante las barras de herramientas de las que disponemos. Pero si el componente es el campo, podemos especificar el formato de otra forma. En la barra de herramientas de árbol de datos, en la parte inferior hay dos pestañas, la de Datos, que es la que habíamos trabajado hasta ahora, y la de Presentación. Si accedemos a la Presentación, podremos ver varias opciones En la opción de crear, tenemos varias opciones: • Todas: al arrastrar el campo, crea dos componentes, la etiqueta y el campo. • Etiqueta: al arrastrar el campo, crea solo la etiqueta. • Campos: al arrastrar el campo, crea solo el control del campo, no la etiqueta. En Todas, se nos pide si el estilo va a ser Vertical o tabulado. Ejemplo de estilo vertical (imagen superior) y tabulado (imagen inferior). En etiqueta y campos, si seleccionamos la opción de “Rejilla”, al arrastrar, automáticamente rodea el campo con un cuadro, de tal forma que queda como en una rejilla. Si seleccionamos la opción “Fuente”, podremos elegir el formato de la fuente que aparecerá por defecto en todas las etiquetas y todos los campos creados desde ese momento. Crear Grupos Muchas veces los datos que tenemos que mostrar se deben agrupar por alguno de los campos, por ejemplo, nos interesaría agrupar una lista de personas por población, de tal forma que el informe adoptase la forma: Población1 Persona1 Persona2 Persona3 Población2 Persona4 Persona5 Persona6 La forma más adecuada de definir esto es mediante la opción de Grupos en el menú Informe. Seleccionamos el campo por el que queremos agrupar (podemos agrupar en varios grupos). Cada grupo va a tener su propio encabezado de grupo y su propio pié, pero no será necesario definir más de un detalle. El orden de los grupos es importante, puesto que determinan su relación jerárquica. El primer grupo va a ser el principal, por el que se van a agrupar los datos. Si queremos eliminar algún grupo, solo debemos acceder a grupos, seleccionar el grupo que deseemos eliminar y hacer clic sobre el botón eliminar. Apéndices Apéndice 1 – Problemas e incompatibilidades Report Builder debería funcionar correctamente en cualquier ordenador que tenga una impresora instalada. Es imprescindible tener una impresora definida en el equipo. Aunque no se disponga de impresora “físicamente”, se le puede instalar una impresora al sistema operativo. En algunos modelos de impresora, como la mayoría de Hewlett-Packard y algunos del fabricante Epson, es necesario que la impresora exista y esté encendida (o accesible vía red). En caso de que la impresora no esté disponible, al arrancar ReportBuilder el controlador de la impresora va a dar un error. Este error no sucede con la mayoría de las impresoras Epson, Lexmark o Canon, por ejemplo. Apéndice 2 - Unidades Se habrá fijado que en los laterales del informe hay dos reglas para ayudar a colocar de forma más precisa los objetos. Estas reglas pueden aparecer en diferentes unidades. Dependiendo de la versión del Report Builder las unidades por defecto son pulgadas. Podemos cambiar estas unidades desde el menú Unidades en Informe. Podemos seleccionar milímetros, décimas de milímetro, píxeles de pantalla y píxeles de la impresora. Un píxel es un punto, ya sea de la pantalla o de la impresora. Los píxeles que contiene una pantalla vienen dado por la resolución. Una resolución de 800x600 indica que la pantalla tiene 800 píxeles de ancho por 600 de alto. Algunas veces los píxeles de pantalla coinciden con los píxeles que se pueden mostrar en la impresora, pero otras veces no. Apéndice 3 – Previsualización La presentación preliminar del informe nos permite ver cómo va quedando el diseño de nuestro informe en la pantalla sin necesitar imprimirlo cada vez. Desde esta pantalla podemos ver una sola barra de herramientas Botón Imprimir: Muestra el cuadro de diálogo de configuración de la impresora e imprime el documento. Botón de Vista: Permite especificar 3 formas de ver el documento: • El documento completo • Adaptado al ancho de la hoja • Tamaño real. Zoom: Si los botones de vista no fuesen los más adecuados, podemos especificar un Zoom a nuestra medida. El tamaño real corresponde a un zoom del 100% Hojas: Un informe puede estar formado por varias hojas, desde estos botones podremos ir a la primera hoja, la hoja anterior, la hoja que le indiquemos, la hoja siguiente o la última hoja, respectivamente