• No se han encontrado resultados

7 Formato y diseño de informes

7.2 Propiedades de formato

7.2.2 Trabajo con formato condicional

El formato condicional es un formato que se aplica solo bajo ciertas condiciones. Por ejemplo, en un informe puede interesarle aplicar alguno de estos formatos cuando se satisfagan ciertas condiciones:

● Si son al cobro, los saldos del cliente se imprimen en rojo.

● Si el cliente es canadiense, las fechas aparecen en formato "Día, Mes, Año". ● Si el número de línea es impar, aparece un color de fondo.

Crystal Reports facilita la aplicación de formato condicional en estas situaciones y en muchas otras.

Con formato absoluto, se puede seguir el procedimiento de “seleccionar, después aplicar”. Para dar formato condicional se sigue el mismo procedimiento, pero se va un paso más adelante y se configuran condiciones que determinan cuándo será aplicado el formato. Estas condiciones se especifican utilizando fórmulas simples. Si se configura una fórmula de formato condicional, la fórmula pasa por alto cualquier valor fijo que haya configurado en el cuadro de diálogo Formato. Por ejemplo, si se activa la propiedad Ocultar y después se configura una fórmula condicional para la propiedad Ocultar, la propiedad solamente se aplicará si se cumple la condición de la fórmula.

Crystal Reports permite configurar condicionalmente tanto propiedades de activar y desactivar como propiedades de atributo. Sin embargo, cada una de éstas requiere un tipo diferente de fórmula.

7.2.2.1

Acerca de operadores y valores condicionales

Cuando da formato a un objeto de resultado o un elemento condicionalmente, es necesario seleccionar un operador y un valor para definir la condición.

La tabla siguiente enumera los operadores disponibles:

Operador Descripción

Igual a/No igual a La condición incluye elementos que incluyen/excluyen el

valor especificado.

Inferior que/Inferior que o igual a La condición incluye elementos cuyo valor es inferior que/ inferior que o igual al valor especificado.

Mayor que/Mayor que o igual a La condición incluye elementos cuyo valor es mayor que/

Operador Descripción

En la lista/Fuera de la lista La condición incluye elementos cuyo valor se incluye/no se incluye en una lista especificada de elementos.

Comienza con/No comienza con (solo objetos no numéricos) La condición incluye elementos que incluyen/excluyen la palabra o letra especificada.

Contiene/No contiene (solo objetos no numéricos) La condición incluye elementos que incluyen/excluyen la palabra o letra especificada.

Entre/No entre La condición incluye elementos cuyo valor se encuentra

entre/no entre los valores especificados.

La siguiente tabla enumera los valores disponibles y los pasos para aplicarlos:

Opción Procedimiento

<Introducir un valor> ● Seleccione un valor de la lista o haga clic en Nuevo parámetro para abrir el cuadro de diálogo Crear parámetro y crear un nuevo parámetro.

<Elegir un valor> Seleccione un valor de la lista o haga clic en Nuevo parámetro para abrir el cuadro de diálogo Crear parámetro y crear un nuevo parámetro.

<Elegir mín/máx> En el cuadro de diálogo Valores de Entre, seleccione una de las siguientes opciones:

● Haga clic en la lista Mínimo y seleccione un parámetro mínimo de la lista o haga clic en Nuevo parámetro para crear un parámetro nuevo.

● Haga clic en la lista Máximo y seleccione un parámetro máximo de la lista o haga clic en Nuevo parámetro para crear un parámetro nuevo.

7.2.2.2

Comprensión de las propiedades condicionales de

activación o desactivación

Una propiedad condicional de “activar” o “desactivar” prueba para ver si una condición ha sido cumplida. Se activa si la condición se cumple y se desactiva si la condición no se cumple. Use fórmulas booleanas para este tipo de formato.

Ejemplo de sintaxis Crystal

7.2.2.3

Descripción de las propiedades de atributo

condicional

Una propiedad de atributo condicional comprueba qué condiciones se cumplen entre dos o más. El programa entonces aplica el formato apropiado a la condición. Por ejemplo, asuma que usted quiere los valores bajo cierta cuota impresos en rojo y todos los demás valores impresos en negro. El programa verifica cuando el valor está bajo la cuota o no. Si está bajo la cuota, aplica el atributo rojo, si no, se aplica el atributo negro.

Use una fórmula If-Then-Else para este tipo de formato condicional.

Ejemplo de sintaxis Crystal

If {CUSTOMER.LAST_YEARS_SALES} > 5000 Then crRed

Else

crBlack

Al crear fórmulas para propiedades de atributo condicional, Crystal Reports muestra una selección de atributos en el área de comentarios de la fórmula en la vista Fórmulas. Puede usar cualquiera de estos atributos en una fórmula. Por ejemplo, si está definiendo un color de fondo condicional, la selección contiene atributos para cada color que puede usar. Si está definiendo bordes condicionalmente, la selección contiene atributos como crSingleLine, crDoubleLine, crDashedLine, crDottedLine y crNoLine.

Nota

Incluya siempre la palabra clave Else en las fórmulas condicionales; de lo contrario, puede que los valores que no cumplan la condición If no conserven su formato original. Para conservar el formato original de los valores que no cumplan la condición If, utilice la función DefaultAttribute. La función DefaultAttribute devuelve el valor de la propiedad de formato establecida en el cuadro de diálogo Propiedades.

Ejemplo de sintaxis Crystal

If {CUSTOMER.LAST_YEARS_SALES} > 5000 Then crRed

Else

DefaultAttribute

Usted puede ir más adelante con este tipo de propiedad. Puede especificar una lista de condiciones y una propiedad por cada una de ellas; usted no está limitado a dos o tres condiciones. Por ejemplo, si tiene un objeto numérico en su informe que contiene cifras de ventas de países alrededor del mundo, puede especificar el número de atributos que desea aplicar a cada país. En este caso, sus condiciones van a especificar que si es del País A, aplicar el atributo del País A; País B, aplicar atributo del País B; País C, aplicar atributo del País C, y así sucesivamente.

Ejemplo de sintaxis Crystal

If {CUSTOMER.Country} = "Canada" Then crRed

Else If {CUSTOMER.Country} = "England" Then crBlack

Else If {CUSTOMER.Country} = "Australia" Then crGreen

Else

crBlue

Use una fórmula de condición If-Then-Else múltiple para esta clase de formato condicional.

7.2.2.4 Cambiar fuentes de forma condicional

Para objetos de memorándum o de cadena que estén basados en condiciones, como un valor paramétrico, se pueden cambiar condicionalmente la fuente, el estilo de fuente, el tamaño y el color.

7.2.2.4.1

Para cambiar las fuentes de forma condicional

1. Haga clic con el botón derecho en el elemento al que desea dar formato y haga clic en Formato condicional. Aparece el cuadro de diálogo Dar formato.

2. En el cuadro de diálogo Dar formato, haga clic en Agregar condición. 3. En el panel Condición, seleccione un objeto de resultado en la lista objeto. 4. Seleccione un operador para el objeto de resultado en la lista operador. 5. Seleccione un valor en la lista valor.

6. En el panel Configuración de formato, seleccione una o varias propiedades de fuente que se aplicarán cuando se cumpla una condición.

7. Agregue valores para cada propiedad de fuente. 8. Haga clic en Aceptar para aplicar las condiciones.

7.2.2.5

Cambio de los márgenes de forma condicional

Márgenes basados en número de página

La siguiente fórmula comprueba si un número de página es par o impar y establece los márgenes en

consecuencia: si la página es un número par, el margen se establece en una pulgada; si la página es un número impar, el margen se establece en dos pulgadas.

If Remainder(pagenumber,2) = 0 then 1440 else 2880

Márgenes basados en la orientación de la página

La siguiente fórmula comprueba la orientación de la página y establece los márgenes en consecuencia: si la orientación es vertical, el margen se establece en una pulgada; si la orientación es horizontal, el margen se establece en dos pulgadas.

If CurrentPageOrientation = crPortrait then 1440 else 2880

Nota

La posición de margen se mide en twips (una pulgada contiene 1440 twips).

7.2.2.5.1

Para cambiar los márgenes de forma condicional

1. Haga clic en Archivo Configurar página . Aparece el cuadro de diálogo Configurar página.

2. Haga clic en el botón Fórmula condicional situado junto al margen que desea cambiar. 3. En el Taller de fórmulas, introduzca la fórmula de margen condicional.

4. Haga clic en Guardar y cerrar para volver al cuadro de diálogo Configuración de página. 5. Haga clic en OK (Aceptar).

7.2.2.6 Crear pies de página después de la primera página

Puede elegir imprimir un pie de página en todas las páginas excepto la primera. Esto lo puede hacer si da formato a la sección Pie de página condicionalmente, usando una propiedad de activar o desactivar.

7.2.2.6.1

Para crear pies de página después de la primera

página

1. Coloque el objeto que desea mostrar como un pie de página en la sección Pie de página de informe. 2. Haga clic con el botón derecho en la sección Pie de página y haga clic en Dar formato a sección.

Aparecerá el cuadro de diálogo Formato. 3. Seleccione Ocultar

4. Haga clic en el botón Taller de fórmulas situado junto a la opción Ocultar. Aparece el Taller de fórmulas y se muestra el nombre de la nueva fórmula. 5. Introduzca la fórmula siguiente en el Taller de fórmulas:

Ejemplo de sintaxis Crystal: PageNumber = 1

Esta fórmula suprime el pie de página en la primera página, pero no en ninguna otra página. 6. Haga clic en Guardar y cerrar.

7. Haga clic en el modo Página para ver el cambio del informe.

Nota

Si tiene un pie de página de varias líneas y ha insertado las líneas en diferentes secciones Pie de página, tendrá que suprimir condicionalmente cada una de esas secciones utilizando la fórmula de arriba.

Nota

Para crear un encabezado de página que aparezca en todas las páginas excepto la primera, coloque la información del encabezado en la sección Encabezado de Página y después suprima condicionalmente esa sección utilizando la misma fórmula que usó para suprimir la sección Pie de página.

Enlaces relacionados

Fórmulas [página 273]

7.2.2.7

Cambiar la posición X de forma condicional

Puede cambiar la posición X (es decir, la posición horizontal a partir del margen izquierdo) de un objeto basándose en una condición. Esta acción resulta útil cuando desea que los elementos aparezcan en columnas diferentes cuando su valor cumple una determinada condición; por ejemplo, puede hacer que los pedidos enviados a tiempo aparezcan en la primera columna y los pedidos enviados con retraso en la segunda.

Nota

7.2.2.8

Cambiar el ancho de elementos de forma condicional

También puede cambiar el ancho de un elemento basándose en una condición.

Nota

No puede cambiar el ancho de elementos de línea o cuadro de forma condicional.

7.2.2.8.1

Para cambiar el ancho de un elemento de forma

condicional

1. Haga clic con el botón derecho en el elemento cuyo ancho quiere cambiar de forma condicional y haga clic en

Dar formato a <<elemento>>.

Aparecerá el cuadro de diálogo Formato. 2. Expanda el nodo General.

3. Haga clic en el botón Fórmula condicional situado junto al elemento de ancho. Aparecerá el Taller de fórmulas.

4. En el Taller de fórmulas, introduzca el texto de la fórmula de ancho condicional. 5. Haga clic en Guardar y cerrar.

6. Cierre el cuadro de diálogo Formato para guardar los ajustes de ancho.

Crystal Reports cambia el ancho de los elementos que cumplen la condición dada y muestra los que no la cumplen en el tamaño original.

7.2.2.9 Crear una imagen condicional

Puede agregar condiciones a una o varias imágenes del informe usando el cuadro de diálogo Asistente de imagen condicional. Las imágenes condicionales se insertan en el informe en un único objeto de imagen. Para cada imagen que agregue al Asistente de imagen condicional, introducirá una condición que determinará el modo en que la imagen se aplica al informe.

7.2.2.9.1

Para agregar una imagen condicional

Antes de crear una imagen condicional, debe insertar una imagen en el informe. Para cada imagen que se agregue es necesario seleccionar un operador y un valor para aplicar una condición a la imagen. El tipo de operador (por ejemplo, igual, no igual, entre, no entre, etc.) afecta al valor y los tipos de selección disponibles para la imagen. 1. Haga clic con el botón derecho en el elemento de imagen en el informe y haga clic en Asistente de imagen

condicional.

Aparece el cuadro de diálogo Asistente de imagen condicional. 2. Haga clic en Agregar imágenes.

Aparecerá el cuadro de diálogo Abrir.

3. Seleccione los archivos de imagen que desea agregar al informe y haga clic en Abrir.

Aparece el cuadro de diálogo Asistente de imagen condicional con una lista de los archivos de imagen seleccionados.

4. En la lista Elija un objeto, seleccione un objeto de resultado para cada imagen.

Consejo

También puede escribir el título del objeto de resultado en el cuadro de texto. A medida que escribe el título del objeto de resultado, la lista filtra automáticamente los objetos de resultados enumerados.

5. En el cuadro Operadores, seleccione uno de los siguientes operadores para la imagen.

En función del operador que seleccione, el cuadro Valor muestra Introducir un valor, Elegir valores o Elegir valores mín/máx.

6. En el cuadro Valor, establezca un valor para la condición.

7. Repita estos pasos para agregar condiciones a cada imagen. Cuando haya terminado de aplicar condiciones a cada imagen, haga clic en Aceptar.

Las condiciones se aplican a la imagen o imágenes.