Você está na página 1de 21

El diseador Fast Reports

El diseador Fast Reports para Hermandad


Todas las versiones de Hermandad han incluido un generador de informes. Es uno de los puntos fuertes de este programa, porque produce ilimitados informes o listados al usuario, sin tener que depender de desarrollos aadidos. Los generadores anteriores utilizaban un ncleo de Windows o de QuickReports, pero a veces producan errores imprevistos por incluir bugs no depurados por sus creadores. Con el salto al ncleo de Fast Report, damos un paso muy importante en la generacin de informes, porque no solo incluimos una herramienta altamente depurada, sino que adems proporciona una facilidad de uso y potencia inigualables. El tipo incorporado se denomina genricamente Free Reports porque se suministra con cdigo fuente de manera gratuita, por su creador A.Tzyganenko. Hemos usado dichos fuentes para rescribirlos y adecuarlos a las necesidades del programa Hermandad, consiguiendo una integracin total que beneficiar a las Cofradas y Hermandades que lo utilicen.

En este manual se asume que est usted familiarizado con diseadores de informes por lo que conoce los conceptos bsicos, como son las bandas, las fuentes de datos, los campos de datos, etc.

Contenido
1. 2. 3. 4. 5. 6. El entorno del diseador ..............................................................................................................5 Los objetos de FastReport............................................................................................................7 Insertando variables ...................................................................................................................13 Las barras de herramientas.........................................................................................................15 Utilizando funciones ..................................................................................................................18 Propiedades y mtodos de los objetos .......................................................................................19

El diseador Pgina 5 de 21

1. El entorno del diseador


Contiene paneles encajables o barras de herramientas, que pueden ser movidas a voluntad ser colocados a su necesidad. La posicin y visibilidad de los paneles queda grabada en el registro, por lo que cada vez que se abre el diseador, nos lo encontramos configurado de la ltima forma que lo utilizamos.

Barras de herramientas Men Bandas Barra de alineacin

Barra de objetos

objetos

Inspector de objetos

paginado Posicin y tamao del objeto actual Nombre del objeto actual

Usando el teclado
Teclas de flecha: mueve un selector de objeto en objeto. Ctrl + Flechas: mueve un objeto seleccionado en la direccin de la flecha pulsada. Maysculas + flechas: incrementa o disminuye el alto y ancho de un objeto. Enter y Ctrl + Enter: abre el editor de texto del objeto seleccionado. Del: borra el objeto seleccionado. Ctrl + 1..9: altera la propiedad FrameWidth del objeto seleccionado. Ctrl + Z : deshacer ultima accin. Ctrl + Y: rehace la accin cancelada. Ctrl + G: activa / desactiva la rejilla de fondo. Ctrl + B, Ctrl + I, Ctrl + U Cambia atributos de letra: negrita, itlica, subrayado Ctrl + F: enmarca el objeto seleccionado. Ctrl + X: corta al portapapeles. Ctrl + V: pega desde el portapapeles. Ctrl + C copia al portapapeles. Ctrl + A: selecciona todos los objetos de la pgina Ctrl + N: crea un nuevo informe vaco. Ctrl + O: abre un informe desde un fichero externo. Ctrl + S: salva el informe en un fichero externo. Ctrl + P: vista previa.

El diseador Pgina 6 de 21

Usando el ratn
Con botn izquierdo seleccionamos los objetos de pantalla; en la paleta de componentes visuales (barra de objetos), seleccionamos el objeto a insertar. Con botn derecho accedemos al men contexto con funciones propias del objeto que apuntamos en ese momento. Con doble click, abrimos el editor del objeto seleccionado. Si se hace sobre la zona blanca del fondo (papel) aparece el cuadro de opciones de pgina, donde se configuran mrgenes, orientacin, etc. Maysculas + clic en botn izquierdo: seleccin mltiple. Arrastrar y soltar: traza un rectngulo de seleccin. Los objetos que se toquen las lneas del rectngulo se seleccionan a la vez, al soltar el botn.

Opciones del Informe


Se abre desde el men archivo / opciones del informe, y presenta la lista de impresoras disponibles en su sistema. Puede seleccionar una impresora virtual, que acepta cualquier dimensin de papel, pero que solo sirve para pruebas en modo diseo. No se puede usar para imprimir. Es til porque permite realizar informes para impresoras que an no estn instaladas en el sistema. De esta forma se puede usar un papel A3 aunque su impresora real no lo permita. Si se marca escoger en ejecucin, la impresora se adjudica tras cargar el informe, y ser la predeterminada en su sistema Windows. La doble pasada sirve para cuando utilizamos un objeto funcin de tipo total pginas. En tal caso, esta variable requiere que todo el informe sea ejecutado una vez, para calcular el nmero total de pgina. En la segunda pasada ya tiene ese valor para poder emitir campos del tipo Pgina xx de yy. Si usas este campo y no marca la doble pasada el total de pginas no mostrar un valor correcto. Tras seleccionar una impresora, el diseador adecua el fondo a la zona imprimible de la impresora elegida.

Opciones de Pgina
Para indicar el tamao de papel en uso, la orientacin, los mrgenes y otras opciones interesantes. La marca de altura ilimitada est indicado para papel personalizado de pequeo tamao. Su accin consiste en ampliar el fondo, para lanzar el salto de pgina ms tarde, y de esa forma en impresoras de inyeccin se puede imprimir en su totalidad antes de expulsar cada hoja. La opcin fijar al rea imprimible (pestaa mrgenes) hace que desaparezcan los mrgenes y se ajuste el informe a la mxima rea imprimible. En la pestaa opciones podemos establecer columnas en el informe y el espacio entre ellas. LA opcin imprimir en pgina anterior hace salir una hoja en blanco antes del informe.

Opciones del diseador


Se localiza en el men herramientas / opciones y le permite configurar el diseador a su gusto.

subinformes

El diseador Pgina 7 de 21 Casilla de marca

2. Los objetos de FastReport

apuntador

bandas

dibujos

campos imgenes

lneas

Rectngulo

Icono

Nombre Cuadro de Texto Banda imagen subinforme Lnea Cuadro sombreado Cdigo de barras Grfico Campo de marca OLE

Descripcin ofrece un rectngulo con borde que puede albergar texto en mltiples lneas. El texto puede contener variables. Creador de bandas, lugar donde se ubicarn los campos del informe Acepta los formatos BMP, ICO, WMF, EMF y JPG. Crea un subinforme. Cuando inserte este objeto en el informe, se crea una nueva pgina de informe Trazo de lneas horizontales y verticales Crea un rectngulo con sombra que aceptar mltiples lneas de dato. til para crear ttulos Muestra datos en cdigo de barra (en desarrollo, an no disponible) Inserta dibujos geomtricos (rectngulo, elipse, tringulo). Muestra daos lgicos en forma de campo de chequeo X. Inserta un objeto OLE. (en desarrollo, an no disponible)

El objeto "Cuadro de Texto"


Se trata del ms poderoso y flexible de los objetos de Fast Reports. Bsicamente, provee un rectngulo rellenable con texto multi lnea. Adems se le puede definir el tipo de contorno, color y tamao; definir el tipo de letra, la alineacin y rotacin del texto (horizontal o vertical). Para ajustar sus atributos puede usar 2 barras de herramientas: la de texto y la de marco:

El contenido del cuadro de texto consiste en campo memo (ilimitado de texto), pero que puede incluir: texto, variables, campos de datos, o una combinacin de estos. El formato de la letra se aplicar a todo el texto contenido dentro de l. Algunos ejemplos de uso: Longitud en : [Longitud] - Esto muestra un trozo de texto fijo (Longitud en :) seguido por el valor de una variable ([Longitud]) Longitud en : [[Longitud] * 2.54] -Esto muestra parte de texto fijo (Longitud en :) seguido por el resultado de una formula usada contra una variable, ( [[variable] * valor]). Es importante escribir correctamente los corchetes adicionales cuando usamos frmulas con variables.

El diseador Pgina 8 de 21

La va ms rpida para editar un cuadro de texto es: seleccionarlo y presionar doble-clic. Se abre la siguiente ventana que nos permite la edicin:

Su barra de herramientas nos ofrece las siguientes funciones: Inserta una expresin o campo variable; Inserta un campo de datos. En H6 solo aparece en modo analista para asegurar el buen funcionamiento del programa e impedir la manipulacin incorrecta de los informes.; Operaciones del portapapeles Activa / desactiva el ajuste de lnea Activa / desactiva el editor de cdigo; Cancelar; Aceptar.

Desde el editor puede introducir texto, insertar variables, campos de datos y expresiones. Pulse en los botones "insertar campo DB" o "insertar Expresin" que le muestran los campos disponibles en cada momento.

Cada cuadro de texto tendr su propio estilo. Accediendo al inspector de objetos (presione F11) haga click en la propiedad DisplayFormat: Ver todas las opciones de formato de mscaras muy necesarias para campos numricos, de fecha, de hora y lgicos

Por cada categora de formato, puede elegir por los formatos que se ofrecen, o personalizarlos, (por ejemplo, #,##0.000 para un valor numrico). Para valores lgicos use No;Si ; y en los formatos de fecha con mes en letra, depende totalmente del idioma de su mquina.

Si una variable no puede ser formateada presentar su valor en texto plano. Si un cuadro de texto contiene una combinacin de campos y desea formatear cada uno de una forma distinta, se permite sobrescribir el formato por defecto, aadiendo el carcter # seguido del estilo de la mscara; de la siguiente forma:

El diseador Pgina 9 de 21

[Variable #formato], donde formato es uno de los siguientes: x.x Nx.x Nyyyyy formatos numricos; -siendo en x.x la longitud del nmero/nmero de dgitos en parte decimal; -en yyyyy una cadena del tipo #,##0.00 -si en x.x yyyyy se incluye un punto, coma o guin, (., ,, -), tal carcter ser usado como separador de la parte decimal. Dxxxxx, Txxxxx - fecha y hora. Siendo xxxxx una cadena de tipo dd.mm.yy. Bxxxxx;yyyyy Formatos lgicos. Si el valor es FALSO, la cadenaxxxxx ser la que aparezca, en caso contrario aparecer la cadena yyyyy.

He aqu algunos ejemplos usando el carcter #: [Cuota anual #9.2] [Cuota anual #9-2] [Cuota anual #N#,##0.00] muestra Cuota anual en formato numrico [Fecha de alta #Ddd-mm-yyyy] muestra la fecha de alta en formato dia-mes-ao [Fecha de alta #Ddd-mmm-yyyy] muestra la fecha de alta en formato dia-3 letras del mes-ao [Junta gobierno #BNo;Si] Campo Lgico: muestra Si cuando el hermano pertenece a la Junta de Gobierno, y no en caso contrario [Junta gobierno #B;Si] Campo Lgico: muestra Si cuando el hermano pertenece a la Junta de Gobierno, y NADA en caso contrario Formato condicional Cuando quiera que ciertos datos presenten una forma caracterstica, o que destaquen por un determinado valor, puede usar este tipo de ; el cual produce un formato al que se accede pulsando el botn cambio de letra, su color o su fondo, basndose en una condicin especial. Pulse el botn y le aparecer el cuadro de dilogo de la derecha. Lo usamos sobre la variable [deuda actual] de manera que cuando un hermano tiene un valor superior al 10, presentar el dato en Negrita, cursiva y color rojo. En otro caso aparecer con el formato original

Otras propiedades del Cuadro de Texto Al pulsar botn derecho sobre un objeto cuadro de texto disponemos de ms opciones: Ajustado: Hace que el objeto presente una altura variable presentando la informacin en mltiples lneas. Para que funcione, es obligatorio activar la propiedad ajustado de su banda madre . Corte automtico de palabras: Acta con el anterior; usando los espacios para separar las lneas. Tamao automtico: antes de imprimir, el objeto calcula su ancho mximo. Solo texto: En este caso no se procesa la variable del interior. Muestra lo que contenga literalmente. Suprimir valores repetidos: No imprime nada si contiene el mismo valor de la lnea anterior Adems tenemos propiedades adicionales en el inspector de objetos: CharSpacing espacio extra entre caracteres. GapX, GapY: pxeles de separacin extra en las esquinas izquierda y arriba LineSpacing espacio extra entre lneas del texto. Para conocer a fondo el funcionamiento de estas propiedades, prubelas una a una y vera como alteran el informe desde la vista previa inmediata.

El diseador Pgina 10 de 21

El objeto "Banda"
Al igual que en otros diseadores de informes, Fast Reports se basa completamente en la insercin de mltiples bandas para presentar la informacin. NOTA: Las bandas no tienen que aparecer en un orden concreto, puesto que cada una har su misin en donde procedan, no obstante conviene colocarlas de forma adecuada para facilitar la lectura posterior. Lista de bandas Nombre Ttulo del informe Sumario del informe Cabecera de pgina Pie de pgina Cabecera maestra Datos maestros Pie maestro Cabecera de detalle Datos de detalle Pie de detalle Cabecera subdetalle Datos subdetalle Pie subdetalle Superpuesto Cabecera columna Pie de columna Cabecera de grupo Pie de grupo Informe cruzado: Cabecera / datos / pie Hija donde y para que se usa Solo se imprime al principio del informe Solo se imprime al final del informe Se imprime al principio de cada pgina Se imprime al final de cada pgina Se imprime al principio de cada primer nivel de datos Datos en el 1er. Nivel repetido por cada registro Al final de cada primer nivel de datos Se imprime al principio de cada segundo nivel de datos Datos en el 2 Nivel repetido por cada registro Al final de cada segundo nivel de datos Se imprime al principio de cada tercer nivel de datos Datos en el 3er. Nivel repetido por cada registro Al final de cada tercer nivel de datos Se imprime en cada pgina a modo de capa trasera (marca al agua) Se imprime al principio de una columna Se imprime al final de una columna Ttulo de grupo impreso al principio del grupo Se imprime despus de los datos de un grupo Estas bandas se usan en informe cruzado (cross-tab) con un nmero variable de columnas en la pgina. Puede ser aadida a otra banda de cualquier tipo excepto las cruzadas y pie de pgina. Se coloca siempre despus de su banda padre.

Segn la banda donde estemos, el diseador mostrar el editor apropiado

Normalmente las bandas que muestran datos requieren conexin a una fuente de datos. No obstante, en la integracin a Hermandad no ser necesario, ya que es H6 quien lo hace de manera invisible al usuario cuando se ejecute el informe. An as, para usar la vista previa inmediata desde el diseador se puede seleccionar como origen de datos el conjunto DATOS. Vea la pantalla del origen de datos que se abre presionando doble-clic sobre una banda que requiera datos. Si selecciona el conjunto de datos virtual, debe especificar un nmero de registros. Esto solo debe hacerlo para pruebas inmediatas, ya que lo que se muestra es el primer registro multiplicado tantas veces como nmero de registros haya indicado. Y por tanto, no se presenta informacin real de las tablas de H6. No deje activada tal opcin porque despus, el informe no le mostrar lo que desea. Se limita a una presentacin virtual para pruebas.

El diseador Pgina 11 de 21

Si selecciona una banda de grupo, se le pedir una condicin, que ser el valor que se use para agrupar el informe. Puede usar una de las variables de H6 o cualquier funcin basada en las variables (campos) que se le ofrecen.

Al pulsar con el botn derecho del ratn en una banda, aparecen nuevas opciones, que son: Ajustado: Cambia el alto de la banda en funcin al contenido de sus cuadros de texto, siempre que alguno de ellos contenga mltiples lneas y sus propiedades ajustado y corte automtico de palabras estn activadas La fila completa de la banda adopta la nueva altura. Partido: Si est activado, y la altura de la ltima fila de datos supera el espacio restante, el informe se parte, continuando en la siguiente pgina. En caso contrario, se deja el espacio restante vaco y la fila de datos se imprime en la pgina siguiente. Forzar nueva pgina: Fuerza a saltar a la pgina siguiente para cada fila de datos. Muy til cuando queremos sacar un solo registro por hoja. En la primera pgina: Solo para bandas de cabecera y pi de pgina. Si se desmarca, el contenido de la banda no se muestra en primera pgina. En la ltima pgina: Solo para bandas de pi de pgina. Si se desmarca, el contenido de la banda no se muestra en ltima pgina. Mostrar en todas las pginas: Solo para bandas de Cabeceras de los tipos: maestra, de detalle, subdetalle, grupo e informes cruzados. Si se marca aparecen en todas las pginas. Si se desmarca solo aparecen en la primera pgina.

El objeto Imagen
Sirve para insertar grficos. Soporta los formatos BMP/WMF/ICO. JPG y GIF. Incluye un editor que permite cargar y borrar la imagen, o seleccionar una imagen desde un campo MEMO de Base de datos. Para insertar una imagen desde un fichero, localcelo y pulse doble clic sobre l. La insercin de una imagen desde un campo memo se hace automticamente, simplemente referenciando la variable del campo memo (si est en el conjunto de variables disponibles). En H6 no se precisa hacer esto.

El men de contexto del objeto proporciona las siguientes propiedades: Ajustado La imagen se estrecha en el rectngulo. Mantener relacin de aspecto: Si ajustado est marcado, hace que se mantengan las proporciones de alto y ancho. Centrar: Centra la imagen en el recuadro.

El diseador Pgina 12 de 21

El objeto Sub-Informe
Se usa para insertar un informe adicional en un punto particular del listado Cuando se genera el informe, el subinforme se coloca en pginas separadas del informe principal. Un ejemplo de esto sera si queremos aadir grficos adicionales a continuacin de los datos normales del listado. Al insertar este objeto, se aade una pgina adicional; y en el lugar insertado aparece un indicador del nuevo objeto. El SubInforme se mostrar a continuacin del informe principal. Si incluimos mas de un sub-informe, se mostrarn uno a continuacin del otro en bandas separadas. Hay ciertos lmites en el uso de este objeto: No puede ser usado en informes por columnas Las bandas Titulo, Sumario, Cabecera y pie de pgina pueden utilizarse en los sub-reports, pero no se podrn asociar al informe principal. No admiten bandas partidas ni grupos.

El objeto Lnea
Se utiliza para insertar lneas horizontales o verticales. Pueden incluirse en bandas separadas y su estilo y color se configura desde la barra de herramienta Marco. Para dibujar una lnea, pulse el botn del objeto, mueva el ratn sobre la pgina activa mostrndose un cursor en forma de lpiz. Trace las lneas libremente con el tpico arrastrar y soltar.

El objeto CheckBox (marca)


Se usa para mostrar grficamente valores booleanos (lgicos). El resultado aparece directamente cuando en su interior referenciamos una variable de campo booleano; en cualquier otro caso hay que utilizar mtodos especiales para obtener la casilla marcada o vaca.

El objeto Grfico
Inserta figuras geomtricas de los tipos rectngulo, rectngulo redondeado, elipse y tringulo.

El objeto Cdigo de Barras


Su nombre dice para que sirve. Admitir los siguientes formatos:

2 of 5 interleaved Code39 Code39 Extended Code128A-C Code93 Code93 Extended MSI PostNet Codebar EAN8 EAN13 EAN128A-C UPC A, E0, E1, Supp2, Supp5

Este objeto, actualmente est en desarrollo y aparecer en posteriores revisiones de Hermandad.

El diseador Pgina 13 de 21

El inspector de objetos
Con el cual, manipulamos las propiedades de los objetos. Cada objeto, segn su tipo, dispone de un amplio conjunto de propiedades que nos permiten ajustar su comportamiento a nuestro gusto. El nombre de las propiedades se puede ver traducido a castellano, entrando en Herramientas / opciones y cambiando la casilla nombre de propiedades traducidas. Altere las propiedades y aprenda a cambiar su comportamiento. Es la mejor manera de aprender a aplicarlas.

3. Insertando variables Variables de datos [campos preparados para H6]

El diccionario de Datos
La integracin de Fast Reports con Hermandad prepara un juego de variables que ya estn enlazadas a sus correspondientes campos de la Base de datos. Con ello facilitamos el uso de objetos de datos al usuario, denominando los campos con nombres mas comprensibles que los nombres tcnicos originales. El juego de variables en su conjunto forma el diccionario de datos, que aunque se muestra en la siguiente pantalla, no est accesible al usuario normal: En el paso previo del diseo de informes, nos encargamos de elegir los campos que compondrn el listado (vea el manual de H6); esto hace que H6 genere automticamente una variable para cada campo elegido. Esas sern las que forma en el conjunto de variables disponibles. Si detecta que necesita algn campo ms, debe salir del diseador, aadir el campo, y al retornar al diseador, aparecer una variable que lo identifica. A las variables disponibles se accede cada vez que intentemos cargar en el editor de texto un dato . Vea la siguiente imagen donde aparecen los tres pasos para llegar a ellas: desde el editor de texto, pasando al constructor de expresiones y , en l, presionando en variables se nos muestra el conjunto de ellas.

El diseador Pgina 14 de 21

En el diseador del recibo de procesin, al incluirse un considerable nmero de campos, las variables a parecen agrupadas, de manera que resulte ms cmodo localizarlas.

Variables de sistema
Consiste en un juego de campos calculados, que son los siguientes: Pagina#: ofrece el nmero de la pgina actual. Es igual que la Funcin Page# funcin (ver descripcin en Funciones internas). Fecha#: muestra la fecha de creacin del informe . (equivale ala funcin Date) Hora#: hora en que se crea el informe (equivale a la funcin Time). Linea#, Linea global#, columna#, LineaActual#, Total paginas: ver descripcin en funciones internas. Una expresin puede contener una texto, variables y funciones (mezcladas).

Funciones
Para ver el asistente de funciones presione el botn . Contiene la lista de todas las funciones agrupadas, y ejemplos de cmo aplicarlas.

El diseador Pgina 15 de 21

4. Las barras de herramientas


La barra estndar

Icono

Nombre Nuevo Abrir Salvar Vista Previa Cortar Copiar Pegar Deshacer Rehacer Poner al frente Enviar detrs Selecciona todo Nueva pgina Borra pgina Opciones de pgina Muestra rejilla Alinear a rejilla Ajustar a rejilla

Descripcin Crea nuevo informe vaco Abre un informe existente desde un fichero de extensin FRF Graba el informe en formato y extensin FRF Muestra el informe tal cual saldr impreso Corta objeto y lo deposita en portapapeles Copia objeto y lo deposita en portapapeles Pega objeto desde el portapapeles Deshace ltimos cambios Rehace la ltima operacin Muestra por delante los objetos seleccionados Enva detrs los objetos seleccionados Selecciona todos los objetos de la pgina Crea una nueva pgina Borra pgina actual Muestra el cuadro de opciones de pgina Muestra rejilla Alinear a rejilla los objetos cuando los movemos Ajusta a rejilla los objetos cuando les cambiamos el tamao Muestra ayuda sensible al contexto Cierra el diseador

Close

ayuda Cerrar

La barra de Texto

No requiere ms explicacin, al contener todos los procesos normales de cualquier editor

La barra de "Marco" Proporciona el enmarcado de los objetos.

La barra de "Alineacin"

Proporciona todos los tipos posibles de alineacin de objetos. Bastar seleccionar varios objetos y pulsar sobre el botn que nos proporcione la alineacin requerida.

El diseador Pgina 16 de 21

Rutinas y objetos Cada objeto puede incorporar uno o ms bloques de cdigo. El editor de rutinas aparece en el editor de texto, en una zona inferior identificada por las letras BEGIN y END, entre las cuales habr que escribir la rutina (conocido como script). Si no aparece, presione sobre el botn en la parte superior de la ventana. El script se ejecuta siempre antes de imprimir el objeto, y suele estar accesible en la propiedad OnBeforePrint que es un evento localizable en la lista del Inspector de objetos.

Ejemplo de script

No todos los objetos admiten scripts. Pero los que lo permiten siempre tendrn el evento OnBeforePrint disponible, ya sean bandas o el propio informe. Escribiendo cdigo En los scripts, puede usar propiedades y mtodos relativos a los objetos del informe. Adems se pueden usar constantes y crear variables propias. Usando variables No hay que especificar el tipo, porque todas se declaran como variant (de cualquier tipo). Pueden tener cualquier nombre, siempre que no se llamen igual que los objetos. Ve el siguiente ejemplos: begin a := [Page#]; end
hemos creado la variable a y la hacemos equivalente al nmero de pgina ahora podemos usarla en cualquier objeto del informe colocndola entre corchetes Si usamos esto [a+ 1] equivale al nmero de pgina actual mas uno.

Referenciando campos Los campos aparecen internamente como variables predefinidas. Por tanto en los escripts podemos usar cosas como Visible:= [deuda actual] > 10 Que provoca que el objeto solo muestre su contenido cuando se cumple la condicin establecida Constantes Consiste en definir variables con un valor fijo y que despus podrn aparecer en cualquier objeto del informe entre corchetes. Por ejemplo: begin a := 0; b := 'abcd'; c := True; d := 'eso es todo!'; end; Recuerde usar la comilla simple cuando el valor sea una cadena de texto

El diseador Pgina 17 de 21

Referenciando objetos Cada objeto tiene un nombre (propiedad NAME). En los escrips se puede manipular las propiedades de esos objetos llamndolos por su nombre. Debe usar la notacin por punto para ello, por ejemplo: Memo1.Text.. Si estamos en el mismo campo a modificar, solo habr que indicar la propiedad. Todas las propiedades aparecen en el inspector de objetos. Ejemplos: begin Memo1.Font.Name := 'Courier New'; Memo1.Font.Size := 10; Memo1.Font.Color := clRed; Memo1.Font.Style := fsBold + fsItalic end; con ello cambiamos todo el formato de letra del objeto Memo1 Observando este ejemplo, vemos ciertos valores constantes de sistema. Eso indica que se pueden usar, y son: colores: clWhite, clBlack etc. todos los colores estndares y de sistema Estilos para letras: fsBold, fsItalic, fsUnderline; Recuadros (frames): frftNone, frftRight, frftBottom, frftLeft, frftTop; Alineacin de texto: frtaLeft, frtaRight, frtaCenter, frtaVertical, frtaMiddle, frtaDown; Alineacin de banda: baNone, baLeft, baRight, baCenter, baWidth, baBottom.

Adems podemos cambiar el valor de un campo: if Memo1.Lines[1] = 'a' then Memo1.Lines[1] := 'b' en el ejemplo se cambia solo el contenido de la primer lnea. Para cambiar todo debemos hacer esto: if Memo1.Lines[1] = 'a' then Memo1.memo := 'b'

Normalmente, los scripts se usan para alterar el comportamiento de los objetos, como el tamao, color, contenido, etc. Un ejemplo de esto lo vemos en el siguiente escript, donde aparece una rutina que ampla el uso del formato condicional utilizando el intrprete:

begin
if [Deuda actual] < 10 then fillcolor:= cltransparent else if [Deuda actual] < 20 then fillcolor:=clgreen else fillcolor:=clred end; con el que usamos tres tipos de color para el valor: si la deuda es menor de 10 no vara, pero si es mayor usamos el verde cuando no pasa de 20 y el rojo cuando es superior.

El diseador Pgina 18 de 21

5. Utilizando funciones
-Agregadas Normalmente se usan en el sumario, y en los pies de pgina y grupo Sum(<expresion> [, band] [,1]). Calcula la suma de los valores pasados en <expresion> para la banda dada. Si no colocamos nombre de la banda, se realiza la suma de todos los valores del informe. El nmero 1 del tercer parmetro hace que se cuenten tambin los objetos invisibles //no olvide poner toda la expresin entre corchetes

Ejemplo: [Sum([deuda actual], Band1)]

Avg, Min, Max. Su sintaxis es anloga a la funcin SUMA. Avg calcula la media aritmtica; Min y Max retornan el valor mnimo y maximo respectivamente. Count(<band>). Ofrece la cuenta de filas de datos presentadas en una banda.

- de cadena Str(<value>). Convierte un nmero a su valor en formato cadena de texto Copy(<string>, <from>, <count>). Retorna una subcadena de <string> con longitud de <count> caracteres, comenzando en la posicin <from>. If(<expression>, <string1>, <string2>). Retorna la cadena <string1>, si la expresin es verdadera, en otro caso retorna <string2>. FormatFloat(<formatstr>, <value>). Convierte a numrico el valor significativo de <value>, usando como mscara <formatstr>. FormatDateTime(<formatstr>, <value>). Convierte a fecha / hora el valor de una cadena, usando la mscara de <formatstr>. StrToDate(<value>). Convierte la cadena <value> a fecha. StrToTime(<value>). Convierte la cadena <value> a hora. UpperCase(<value>). Convierte la cadena <value> a maysculas. LowerCase(<value>). Convierte la cadena <value> a minsculas. NameCase(<value>). Convierte el primer carcter de la cadena <value> a maysculas y el resto lo deja en minsculas. Length(<string>). Retorna la longitud de la cadena <string>. Trim(<string>). Elimina los espacios al principio y al final de <string>,devolviendo lo que queda . Pos(<substring>, <string>). Retorna la posicin de <substring> cuando coincide en la cadena <string>.

-Aritmticas Int(<value>). Retorna la parte numrica y entera de <value>. Frac(<value>). Retorna la parte fraccional de <value>. Round(<value>). Retorna el nmero redondeado. value1 Mod value2. Retorna el resto resultante de dividir <value1> by <value2>. MinNum(<value1>, <value2>). Retorna el menor de dos valores. MaxNum(<value1>, <value2>). Retorna el mayor de dos valores.

-Otras funciones Input(<caption> [,<default>]). Muestra una ventana de dilogo cuya cabecera ser <caption> y una caja de edicin. Si se aade el parmetro default, este aparece en la caja de edicin por defecto. Despus, cuando el usuario presiona OK, retorna la cadena introducida. Date. Devuelve la fecha actual. Time. Devuelve la hora actual. Line#. Devuelve el nmero de la lnea actual. LineThrough#. Devuelve el nmero de la lnea actual contando desde el principio del informe todas sus lneas. Column#. Devuelve el nmero de columna actual. Page#. Devuelve el nmero de la pgina actual.

El diseador Pgina 19 de 21

TotalPages. Devuelve el nmero total de pginas. Para usarla hay que poner el informe como de doble pasada. DayOf(<date>). Retorna el da (1..31) de la fecha usada como parmetro. MonthOf(<date>). Retorna el mes de la fecha usada como parmetro. YearOf(<date>). Retorna el ao de la fecha usada como parmetro. MessageBox(<text>, <caption>, <buttons_and_icons>). Muestra un cuadro de dilogo de tipo mensaje con el texto text, la cabecera caption y botones. Devuelve el valor que corresponda al botn pulsado (mrOk, mrCancel, mrYes, mrNo). Use los siguientes valores para el parmetro <buttons_and_icons>: Botones Mb_Ok mb_OkCancel mb_YesNo mb_YesNoCancel Iconos mb_IconError mb_IconQuestion mb_IconInformation mb_IconWarning

Procedimientos y funciones permitidas en el montaje de un informe CurY. Retorna la posicin Y actual donde la prxima banda se imprimir Se le puede asignar un valor a CurY para colocarla en otra posicin. Para convertir pxeles a milmetros y viceversa, use la equivalencia : 18 pxeles = 5mm. FreeSpace. Retorna el espacio que le queda a la pgina en pxeles. FinalPass. Retorna TRUE (verdadero), si un informe es de doble pasada y est ejecutando la ltima pasada. PageHeight. Retorna la altura de la pgina en pxeles menos la altura de la banda pie de pgina. PageWidth. Retorna el ancho de la pgina en pxeles. StopReport. Paraliza el montaje del informe. NewPage. Comienza una nueva pgina. NewColumn. Comienza una nueva columna en un informe de mltiple columnas ShowBand(<band>). Muestra la banda denominada <band>. Para facilitar el uso en escripts, detallamos a continuacin todas las propiedades y mtodos

6. Propiedades y mtodos de los objetos


Propiedades y mtodos globales Propiedad Tipo Descripcin Alineacin de objetos en su banda BandAlign Entero Valores posibles: baNone, baLeft, baRight, baCenter, baWidth, baBottom. Enabled Booleano Si TRUE, habilitado: un objeto respondera a eventos. Valores: True o False. FillColor Entero Color del fondo. Se permiten constantes de color de Windows clXXX. FrameColor Entero Color del recuadro de un objeto. Estilo del borde. Valores posibles: psSolid, psDash, psDot, psDashDot, FrameStyle Entero psDashDotDot, psDouble. FrameTyp Entero Tipo de borde un conjunto de constantes frftTop, frftBottom, frftLeft, frftRight. FrameWidth Decimal Ancho del recuadro. Height Entero Altura del objeto seleccionado. Left Entero Coordenada horizontal izquierda relativa al formulario en pxeles. Texto del objeto. Esta propiedad puede estar accesible por su ndice, por Memo Cadena ejemplo: Memo[1]. Memo.Count Entero Retorna el nmero de lneas en un memo (texto del campo). Name Cadena Nombre del objeto. Stretched Booleano Si TRUE, el objeto presenta sus dimensiones naturales. Top Entero Coordenada superior izquierda relativa a su objeto padre. Indica cuando el objeto debe aparecer en pantalla u ocultarse. Visible Booleano Valores posibles: True o False. Width Entero Ancho del objeto.

El diseador Pgina 20 de 21

Mtodos Mtodo Hide Memo.Add Memo.Clear Memo.Delete Show

Parmetros Cadena Entero -

Descripcin Oculta el objeto poniendo su propiedad visible a False. Aade una nueva lnea al contenido del campo. Borra todo el texto del campo. Elimina la lnea especificada por el nmero dado como parmetro. Muestra un objeto, poniendo su propiedad visible a True.

Objetos estndares Propiedad Alignment AutoWidth CharSpacing Font.Name Font.Size Font.Style Font.Color GapX GapY HideZeros LineSpacing Suppress TextOnly WordBreak WordWrap

Tipo Entero Booleano Entero Cadena Entero Entero Entero Entero Entero Booleano Entero Booleano Booleano Booleano Booleano

Descripcin Alineacin del texto en el objeto Valores posibles: frtaLeft, frtaRight, frtaCenter, frtaVertical, frtaMiddle, frtaDown. Hace que el objeto se ensanche automticamente a la necesidad dela totalidad de texto que contiene. Espacio entre caracteres. Nombre del tipo de letra utilizado Tamao de letra en pxeles. Estilo: negrita, cursiva, subrayado. Valores posibles:fsBold, fsItalic, fsUnderline. Color de la letra. Distancia horizontal entre el borde y el texto que contiene. Distancia vertical entre el borde y el texto que contiene. Si contiene un valor CERO se ignora. Valores posibles: True; False. Espacio entre las lneas del texto. Oculta el dato si se repite respecto del anterior registro. Valores posibles:: True; False. Hace que no se procese o interprete el contenido, mostrando solo el literal. Valores posibles: True; False. Cuando una palabra sobrepasa el margen derecho permite que se troceen las ltimas slabas. Valores posibles: True; False Cuando una palabra sobrepasa el margen derecho permite que se trocee en 2 mas lneas. Valores posibles: True; False

Objeto "Banda" Propiedad Breaked ChildBand ColumnGap Columns ColumnWidth Condition DataSource EOF FormNewPage Master OnFirstPage OnLastPage PrintChildIfInvisible PrintIfSubsetEmpty RepeatHeader

Tipo Booleano Cadena Entero Entero Entero Cadena Cadena Booleano Booleano Cadena Booleano Booleano Booleano Booleano Booleano

Descripcin Ruptura de bandas. Valores posibles: True; False. La banda enlaza datos a otra banda hija Distancia horizontal entre columnas Nmero de columnas en la banda Ancho de las columnas. Condiciones para grupos. Aplicada a bandas cabecera de grupo. Conjunto de datos a mostrar. Indica si se ha llegado al fin de los datos. Valores: True; False. Fuerza la salida de una nueva pgina tras imprimir la banda. Valores posibles: True; False. Especifica la banda usada cuando se agrupan datos. Se imprime en la primera pgina. Valores posibles: True; False. Se imprime en la ltima pgina. Valores posibles: True; False. Especifica si se imprime una banda hija cuando su banda padre es invisible. Valores posibles:True; False. Especifica si se imprime una banda cuando su banda hija est vaca. Valores posibles: True; False. Especifica cuando se repite una banda en cada pgina Valores posibles: True; False.

El diseador Pgina 21 de 21

Mtodos First Next Prior -

Parmetros

Descripcin Establece el datasource de una banda en el primer registro. Establece el datasource de una banda en el siguiente registro. Establece el datasource de una banda en el anterior registro.

Objeto "Imagen" Propiedad BlobType Center DataField KeepAspect

Tipo Entero Booleano Cadena Booleano

Descripcin Especifica el tipo de imagen contenida en un campo blob (memo). Valores posibles: btBMP, btJPG, btICO, btWMF. Especifica cuando ha de centrar la imagen en el objeto. Valores posibles:True; False. Especifica el campo de la tabla que contiene la imagen. Para mantener las proporciones relativas de la imagen, al ser estirada. Valores posibles: true; False.

Objeto "CheckBox" Propiedad CheckColor CheckStyle DataField

Tipo Entero Entero Cadena

Descripcin Color de la marca cruzada cuando est chequeado Estilo de la marca. Valores posibles: csCross, csCheck. Nombre del campo que contiene el dato

Objeto "Rectngulo sombreado" Es un objeto descendente del cuadro de texto, por lo que tiene todas sus propiedades, y adems, como propias, las siguientes: Propiedad BeginColor EndColor Gradient RoundRect RoundSize ShadowColor ShadowWidth Style Tipo Entero Entero Booleano Booleano Entero Entero Entero Entero Descripcin Color inicial utilizando sistema gradual (gradiente) Color final utilizando sistema gradual (gradiente) Uso del sistema gradual. Valores posibles: True; False. Esquinas redondeadas. Valores posibles:: True; False. Si las esquinas estn redondeadas, esta propiedad indica el grado de redondeo. Color de la sombra. Ancho de la sombra. Si se usa efecto gradual, esta propiedad especifica el estilo de gradiente. Valores posibles: gsVertical, gsHorizontal, gsElliptic, gsRectangle, gsHorizCenter, gsVertCenter.

Objeto "Dibujo" Propiedad Shape

Tipo Entero

Descripcin Determina el tipo de dibujo del objeto. Valores posibles: skRectangle, skRoundRectangle, skEllipse, skTriangle, skDiagonal1, skDiagonal2.

Você também pode gostar