Utilización de consultas dinámicas en la creación de informes de obtención de datos

ClearQuest permite construir consultas con filtros dinámicos que solicitan valores de parámetros durante el tiempo de ejecución. Sin embargo, cuando utilice consultas dinámicas para crear informes de obtención de datos, deberá utilizar un método alternativo para conseguir los comportamientos de los operadores IS_BETWEEN y IS_NOT_BETWEEN.
Con las consultas dinámicas, cada filtro contiene la siguiente información:

Por ejemplo, considere la consulta de ejemplo /Public Queries/Reports/State Query. Esta consulta incluye un filtro dinámico que permite especificar uno o más valores de estado. Cada cliente ClearQuest proporciona una interfaz para solicitar el operador y los valores de filtro. En el modelo de informes de obtención de datos, el controlador de informes de ClearQuest también necesita un mecanismo para recuperar esta información.

Debido a que los filtros dinámicos le solicitan dos elementos de información, el controlador de informes de ClearQuest trata cada filtro como dos parámetros distintos. Durante el tiempo de ejecución, debe especificar el operador de filtro y los valores. Los ejemplos proporcionados con la distribución incluyen una biblioteca de BIRT que contiene un parámetro de operador de ejemplo que puede utilizar para visualizar operadores. Puede utilizar el parámetro de ejemplo directamente o copiar los controles para sus propios informes.

Valores del operador de filtro

Los valores de operador de filtro válidos se obtienen de la interfaz de la API Team com.ibm.rational.wvcm.stp.cq.CqQuery.Filter.Operation. Tanto BIRT como Crystal Reports proporcionan un mecanismo para exponer cada valor de operador como una serie de texto. Se definen los siguientes valores de operador:
  • HAS_NO_SUBSTRING
  • HAS_SUBSTRING
  • IS_EQUAL
  • IS_GREATER_THAN
  • IS_GREATER_THAN_OR_EQUAL
  • IS_IN_SET
  • IS_LESS_THAN
  • IS_LESS_THAN_OR_EQUAL
  • IS_NOT_EQUAL
  • IS_NOT_IN_SET
  • IS_NOT_NULL
  • IS_NULL

Expresiones de filtro especiales para diseño de informes de obtención de datos

Los operadores IS_BETWEEN y IS_NOT_BETWEEN presentan un reto cuando se utiliza el modelo de obtención de datos porque es necesario un total de tres argumentos (operador, operando bajo y operando alto). El controlador de informes ClearQuest no da soporte directamente a los operadores IS_BETWEEN y IS_NOT_BETWEEN. Sin embargo, puede conseguir el comportamiento de estos operadores mediante la creación de una consulta de ClearQuest que utilice dos filtros agrupados con un AND en el constructor de consultas. Durante el tiempo de ejecución, el controlador de informes de ClearQuest crea cuatro parámetros para los dos filtros, simulando los operadores IS_BETWEEN y IS_NOT_BETWEEN.

En los ejemplos siguientes, las series de texto en negrita son los valores que se proporcionan durante el tiempo de ejecución.

Considere la siguiente expresión de filtro:

DateField
IS_BETWEEN
12-12-2005
AND
12-12-2007

Se pueden conseguir los mismos resultados utilizando dos filtros, tal como se muestra en el ejemplo siguiente:

DateField
IS_GREATER_THAN_OR_EQUAL
12-12-2005
AND
IS_LESS_THAN_OR_EQUAL
12-12-2007

Comentarios