2.8 Uso de filtros y de controles de entrada

Los dominios usan diferentes mecanismos para supervisar los datos.

  • Los dominios (y temas de dominios) se pueden filtrar seleccionando campos en el dominio y especificando valores de comparación. Los filtros se pueden configurar para que los usuarios seleccionen los datos.

  • Dentro del diseño del dominio, también es posible definir filtros basados en condiciones. Estos filtros no se muestran en el visor de informes cuando se ejecuta el informe.

Puede definir filtros en el editor ad hoc tanto si trabaja con los datos de un dominio como si lo hace con los de un tema. Estos filtros resultan útiles para mejorar el rendimiento inicial de la vista reduciendo la cantidad de datos que devuelve la vista por defecto.

Para evitar que los usuarios vean el conjunto de datos completo, también puede usar controles de entrada en una tema JRXML o filtros definidos en el diseño de dominio, que pueden permanecer ocultos para los usuarios finales. Para obtener más información, consulte la Sección 2.8.3, Disponibilidad de los controles de entrada y los filtros.

Los controles de entrada y los filtros interactúan directamente. Por ejemplo, puede crear filtros en una vista ad hoc que recibe datos de un tema JRXML que incluye controles de entrada.

El servidor actualiza el editor respecto a los filtros y los controles de entrada. Puesto que algunas combinaciones de controles de entrada y filtros no devuelven datos, es posible que esta combinación dé lugar a una vista vacía.

NOTA:si el conjunto de resultados está vacío, busque una combinación incompatible de filtros y controles de entrada, como un filtro estándar y un filtro Keep Only (Mantener solo), o bien una expresión de filtro avanzado definida incorrectamente. (Los datos deben satisfacer todos los criterios en varios filtros, en lugar de satisfacerlos en un subconjunto de dichos filtros). Para obtener más información, consulte Filtros avanzados.

JRXML es un formato de archivo XML para guardar y compartir informes, creado para ZENworks Reporting y las aplicaciones que lo utilizan, como iReport Designer y ZENworks Reporting. JRXML es un formato abierto que utiliza el estándar XML para definir de forma precisa toda la estructura y la configuración de un informe.

En algunas situaciones, los filtros pueden entrar en conflicto con los parámetros de vista, en cuyo caso debe cambiar el nombre del campo que causa el conflicto editando el archivo JRXML.

2.8.1 Uso de filtros

Puede definir filtros en las siguientes ubicaciones:

  • Data Chooser (Selector de datos) (al crear una vista a partir de un dominio).

  • El editor ad hoc (incluso aunque la vista esté basada en un tema JRXML).

Para obtener información acerca de cómo definir filtros en el selector de datos, consulte Filtrado previo de los datos.

Además, puede controlar cómo y qué filtros se aplican a uno o varios campos mediante expresiones avanzadas. Para obtener más información, consulte Filtros avanzados.

Para crear un filtro en el editor ad hoc:

  1. Haga clic con el botón derecho en un campo del panel Data Source Selection (Selección de origen de datos), y luego haga clic en Create Filter (Crear filtro).

    Se mostrará un nuevo filtro en el panel Filters (Filtros). Si el panel Filters (Filtros) estaba oculto, aparecerá al crear un nuevo filtro.

    Si los resultados están vacíos, busque una combinación incompatible de filtros y controles de entrada. Haga clic en para comparar los controles de entrada con los filtros del panel Filters (Filtros).

  2. Utilice los campos del filtro para modificar su valor.

    Dependiendo del tipo de datos seleccionado, el filtro puede ser de selección múltiple, selección sencilla o entrada de texto.

  3. Haga clic en y seleccione Minimize All Filters (Minimizar todos los filtros) o Maximize All Filters (Maximizar todos los filtros) para alternar la expansión de los elementos del filtro.

  4. Haga clic en y seleccione Remove All Filters (Eliminar todos los filtros) para eliminar los filtros.

  5. Haga clic en para ocultar los detalles del filtro.

  6. Haga clic en para ver los detalles del filtro.

  7. Haga clic en el recuadro Select All (Seleccionar todo) (si aparece en el panel Filters [Filtros]) para seleccionar todos los valores del conjunto de datos.

    El recuadro Select All (Seleccionar todo) no aparece en el panel Filters (Filtros) para cifras y fechas.

Al modificar un filtro, el servidor utiliza el nuevo valor para determinar los datos que se deben mostrar. Si solo modifica el operador de un filtro, deberá anular la selección del valor de ese filtro y luego volver a seleccionarlo para aplicar el filtro actualizado.

Para los filtros con varios valores, no es necesario volver a seleccionarlos todos. Después de cambiar el operador, utilice Ctrl + clic para anular la selección de uno de los valores y luego Ctrl + clic para volver a seleccionar ese valor.

Fechas relativas

Puede filtrar información de la vista según un intervalo de fechas relativas a la fecha actual del sistema. Puede utilizar filtros basados en fechas y especificar una expresión de texto que describa la fecha o el intervalo de fechas que desee utilizar con el formato <palabra clave>+/-<número>.

  • Palabra clave indica el intervalo de tiempo que desea utilizar. Las opciones son: DAY (DÍA), WEEK (SEMANA), QUARTER (TRIMESTRE), SEMI (SEMESTRE) y YEAR (AÑO).

  • + o - indican si el intervalo de tiempo debe ser antes o después de la fecha seleccionada.

  • Número indica el número de repeticiones del intervalo que desea incluir en el filtro.

Para crear un filtro de fechas relativas:

  1. Siga las instrucciones que encontrará en la Sección 2.8.1, Uso de filtros.

  2. En el primer recuadro de texto del filtro, especifique una expresión que describa la fecha o el intervalo de fechas relativas.

  3. En el segundo recuadro de texto, especifique la fecha en la que desee basar el filtro.

Para crear un filtro complejo:

  1. Haga clic con el botón derecho en un miembro de grupo de una vista de referencias cruzadas, y seleccione Keep Only (Mantener solo) o Exclude (Excluir).

    Al crear un filtro respecto a un grupo interno, el filtro que aparece puede crearse como filtro complejo.

    Los filtros complejos no se pueden editar, pero sí eliminar. Los filtros complejos también aparecen en el editor ad hoc si se ha creado y bloqueado un filtro de asistente del selector de datos.

Filtros avanzados

Al crear varios filtros, están conectados por defecto mediante un operador Y implícito. Es decir, los datos mostrados en su tabla, gráfico o vista de referencias cruzadas son lo que queda después de aplicar todos los filtros.

No obstante, con la funcionalidad de filtros avanzados, puede controlar los datos mostrados aplicando una expresión avanzada que incluya operadores Y, O y NO más complejos y anidados, así como aplicar varios filtros a un único campo.

Los filtros avanzados son útiles en situaciones como las siguientes:

  • Cuando el uso del operador Y no es suficiente. Por ejemplo, supongamos que una empresa internacional quiere ver los datos de las tiendas de la costa del Pacífico. Pueden crear una expresión avanzada con los siguientes criterios:

    • El país es EE. UU.

      Y

    • El estado es California O Washington O Oregon O Hawái O Alaska.

      O bien

    • El país es Japón O Indonesia

      El uso del operador Y para todos estos criterios devuelve una vista vacía, porque ninguna tienda está situada en todas esas zonas.

  • Si necesita eliminar algunos resultados en un campo. Por ejemplo, si su empresa de distribución de bebida y alimentos desea ver las ventas de todas las bebidas excepto los productos más caros, puede incluir el siguiente criterio en una expresión avanzada:

    • El grupo de productos es Bebidas.

      NOT

    • Precio mayor de 39,99.

      El filtro mostrará todos los elementos del grupo de productos Bebidas, pero excluirá aquellos que tengan un precio superior a 39,99.

Estos son solo dos casos en los que los filtros avanzados pueden completar los resultados y ofrecer resultados más precisos en una vista. Existen muchas otras situaciones en las que se pueden aplicar.

Estas son algunas otras tareas de filtros avanzados:

  • Creación de una expresión avanzada

  • Edición de una expresión avanzada

  • Eliminación de una expresión avanzada

  • Aplicación de varios filtros a un solo campo

    NOTA:los filtros avanzados se aplican a las vistas, pero los detalles de filtro no se muestran en las vistas previas ni en los informes generados a partir de esa vista.

Para crear y aplicar un filtro avanzado:

  1. Cree dos o más filtros para sus datos, tal como se describe en la Sección 2.8.1, Uso de filtros. Puedes ser filtros estándar basados en campos o filtros de tipo Keep Only (Mantener solo) y Exclude (Excluir).

    Al crear los filtros para usarlos en una expresión avanzada, los datos de la vista desaparecerán, ya que la mayoría de los datos no cumplirán todos los criterios del filtro. Al crear la expresión avanzada y modificar algunos de los operadores Y, O y NO, los datos aparecerán de nuevo.

  2. En la parte superior del panel Filters (Filtros), haga clic en , y luego seleccione Show Expression (Mostrar expresión) para que se muestre el panel Filter Expression, for (Filtrar expresión para). El panel Filter Expression, for (Filtrar expresión para) está vacío por defecto.

  3. En el panel Filter Expression, for (Filtrar expresión para), haga clic en Edit (Editar).

  4. En el panel Edit Advanced Filters (Editar filtros avanzados), utilice la ventana de vista previa de filtros para buscar los filtros.

    Las designaciones de letras de los filtros distinguen entre mayúsculas y minúsculas y deben estar en mayúsculas.

  5. Introduzca una expresión de filtro empleando las designaciones de letras, incluidos los siguientes operadores:

    • Y limita los resultados e incluye solo los campos que cumplan los criterios de ambos filtros, el de antes y el de después del operador.

    • O amplía los resultados e incluye los campos que cumplan los criterios de cualquiera de los filtros, el de antes o el de después del operador.

    • NO excluye los resultados que cumplan los criterios.

    • Los paréntesis combinan varios filtros en un solo elemento para la expresión.

  6. Para comprobar la expresión, haga clic en el botón Validate (Validar).

    Si la expresión se valida correctamente con los filtros disponibles, se mostrará el mensaje Success (Correcto). Si la expresión no es correcta, se mostrará el mensaje Invalid (No válido) y los detalles sobre los motivos.

  7. Si la expresión se valida correctamente, haga clic en Submit (Enviar).

    La vista se actualizará y se mostrará en los criterios de filtros recién aplicados.

Después de crear un filtro avanzado, puede añadir otro o eliminar la expresión existente.

NOTA:si desea suprimir el filtro sencillo de un filtro avanzado, primero deberá suprimirlo de la expresión del filtro avanzado. Al suprimir el filtro, se suprime la expresión del filtro avanzado.

Para añadir un filtro nuevo a una expresión avanzada existente:

  1. Cree un nuevo filtro en el panel Filter (Filtro).

  2. En el panel Filter Expression, for (Filtrar expresión para), haga clic en Edit (Editar).

  3. En el panel Edit Advanced Filters (Editar filtros avanzados), añada el filtro nuevo a la expresión.

    Cualquier filtro no utilizado de la ventana de vista previa de filtro se mostrará atenuado.

  4. Haga clic en Validate (Validar) para comprobar la integridad de la nueva expresión.

  5. Si la expresión es válida, haga clic en Submit (Enviar).

Para eliminar un filtro de una expresión avanzada:

  1. En el panel Filter Expression, for (Filtrar expresión para), haga clic en Edit (Editar).

  2. En el recuadro de diálogo Edit Advanced Filters (Editar filtros avanzados), elimine el filtro de la expresión y luego actualícela según sea necesario.

  3. Haga clic en Validate (Validar) para comprobar la integridad de la nueva expresión.

  4. Si la expresión es válida, haga clic en Submit (Enviar).

Al trabajar con expresiones avanzadas, puede suprimir una expresión existente y crear una nueva.

Para eliminar una expresión avanzada de una vista:

  1. En el panel Filter Expression, for (Filtrar expresión para), haga clic en Edit (Editar).

  2. Borre la expresión del recuadro Filter Expression (Filtrar expresión).

  3. Haga clic en Enviar.

Al ajustar de forma precisa la expresión avanzada, puede suprimir los filtros no utilizados del panel Filters (Filtros).

  • Si desea eliminar el filtro del filtro avanzado, sitúe el ratón sobre en la barra de título del filtro y haga clic en Remove Filter (Eliminar filtro).

  • Si desea eliminar todos los filtros existentes, incluida la expresión avanzada, sitúe el ratón en , en el panel Filters (Filtros) y haga clic en Remove All Filters (Eliminar todos los filtros).

2.8.2 Uso de controles de entrada

En el editor ad hoc, puede ver los controles de entrada definidos en el tema como visibles para los usuarios. Puede aceptar los valores por defecto de los controles o introducir otros. El editor ad hoc indica que la vista tiene controles de entrada mostrando el icono como activo en la barra de herramientas. Haga clic en el icono para seleccionar nuevos valores o guardarlos como nuevos valores por defecto para la vista.

Para añadir un control de entrada a la vista con un filtro:

  1. Cree un nuevo filtro o use uno existente del panel Filters (Filtros).

  2. En Filters (Filtros), haga clic en junto al filtro nuevo y seleccione Show Operator (Mostrar operador).

  3. Seleccione un operador en el recuadro desplegable y especifique el valor en el recuadro de texto.

    El filtro se mostrará como control de entrada cuando se utilice la vista para ejecutar el informe.

  4. Sitúe el cursor en y seleccione Save Ad Hoc View as... (Guardar vista ad hoc como).

  5. Indique un nombre para la vista, seleccione una ubicación y haga clic en Save (Guardar).

  6. En la barra de herramientas, haga clic en .

    Solo se mostrarán los controles de entrada definidos en el tema. Si no hay ningún control de entrada definido en el tema, el botón se mostrará atenuado.

Para editar los valores para los controles de entrada de una vista:

  1. En la barra de herramientas, haga clic en .

    Se mostrará una ventana con los controles de entrada definidos en el tema.

  2. Seleccione nuevos valores.

  3. Para modificar los valores por defecto de los controles de entrada, seleccione el recuadro etiquetado como Set these values as defaults when saving your view (Definir como valores por defecto al guardar la vista).

    Los valores seleccionados se convertirán en los valores por defecto cuando guarde la vista.

  4. Haga clic en Aceptar.

    La vista ad hoc mostrará los datos actualizados.

2.8.3 Disponibilidad de los controles de entrada y los filtros

Los controles de entrada y los filtros se muestran en el editor y al ejecutar un informe.

  • Los controles de entrada se pueden definir como visibles o invisibles al editar una vista:

    • Los controles de entrada definidos como Always prompt (Preguntar siempre) se muestran en el editor y siempre aparecen antes de ejecutar el informe.

    • Los controles de entrada no definidos como Always prompt (Preguntar siempre) están ocultos en el editor y aparecen cuando se ejecuta el informe.

  • Los filtros creados en el asistente del selector de datos pueden estar bloqueados o desbloqueados:

    • Los filtros desbloqueados muestran detalles de filtro en el editor y están disponibles desde el botón Options (Opciones) cuando el informe se está ejecutando.

    • Los filtros bloqueados muestran los controles de entrada en el editor al hacer clic en el icono . Sin embargo, no están disponibles desde el botón Options (Opciones) cuando el informe se está ejecutando. Puede eliminar el filtro del editor, permitiendo que vean todos los datos sin filtrar cuando el informe se está ejecutando.

  • Los filtros definidos en el editor siempre están disponibles en el panel Filters (Filtros) del editor y desde el botón Options (Opciones) cuando se ejecuta el informe.

Al configurar los controles de entrada de una vista grande que tarda mucho tiempo en ejecutarse, valore la posibilidad de definir la vista con el valor Always prompt (Preguntar siempre). Antes de ejecutar un informe, el visor de informes le pedirá que indique las opciones de entrada, lo que evitará que el informe se ejecute con las opciones por defecto.

Los filtros que están desbloqueados están disponibles. Si los controles de entrada o los filtros no se muestran en el visor de informes, haga clic en el botón Options (Opciones) para verlos.

Para definir un control de entrada de modo que solicite interacción:

  1. Busque un tema en el repositorio y haga clic en Edit (Editar).

  2. En el panel Controls & Resources (Controles y recursos), bajo Input Control Options (Opciones de control de entrada), haga clic en Always prompt (Preguntar siempre).

Para determinar si un control de entrada debe ser visible:

  1. Busque un tema en el repositorio, como Parameterized Report Topic (Tema de informe parametrizado), y haga clic en Edit (Editar).

  2. En el panel Controls & Resources (Controles y recursos), haga clic en el nombre de un control de entrada.

  3. En el panel Locate Input Control (Control de entrada de configuración regional), haga clic en Next (Siguiente).

    En la parte inferior del panel Create Input Control (Crear control de entrada), si el recuadro Visible está seleccionado, el control de entrada se mostrará en el informe cuando se ejecute.

    Si no especifica un valor por defecto para el control de entrada, los usuarios tendrán que seleccionar un valor cuando creen una vista basada en el tema.

Para bloquear un filtro:

  1. En el selector de datos, después de seleccionar los campos, haga clic en Pre-filters (Filtros previos).

  2. Haga doble clic en un campo en el panel Fields (Campos).

  3. En el panel Filters (Filtros), defina un filtro.

    Para obtener más información, consulte Filtrado previo de los datos.

  4. Seleccione el recuadro Locked (Bloqueado) y haga clic en OK (Aceptar).

  5. Haga clic en Table (Tabla) para abrir el editor ad hoc.

    En el panel Filters (Filtros), se mostrarán el nombre del filtro y una nota sobre el bloqueo bajo el encabezado Locked (Bloqueado).