Utilizzo della query dinamica nella creazione di report di richiamo dati

ClearQuest consente di creare query con filtri dinamici che richiedono valori di parametro al runtime. Tuttavia, quando si utilizzano query dinamiche per creare report di richiamo dati, è necessario utilizzare una soluzione alternativa per i funzionamenti degli operatori IS_BETWEEN e IS_NOT_BETWEEN.
Con query dinamiche, ogni filtro contiene le seguenti informazioni:

Ad esempio, considerare la query di esempio /Public Queries/Reports/State Query. Questa query include un filtro dinamico che consente di specificare uno o più valori di stato. Ciascun client ClearQuest fornisce un'interfaccia per richiedere i valori filtro e operatore. Nel modello di creazione di report di richiamo dati, ClearQuest Reporting Driver necessita anche di un meccanismo per richiamare queste informazioni.

Poiché i filtri dinamici richiedono due tipi di informazione, ClearQuest Reporting Driver tratta ciascun filtro come due parametri separati. Al runtime, viene specificato l'operatore del filtro e i valori. Gli esempi forniti sulla distribuzione includono una libreria BIRT che contiene un parametro operatore di esempio che è possibile utilizzare per la visualizzazione degli operatori. È possibile utilizzare il parametro di esempio direttamente o copiare i controlli per i report.

Valori operatore filtro

I valori operatore filtro validi derivano dall'interfaccia API team com.ibm.rational.wvcm.stp.cq.CqQuery.Filter.Operation. BIRT e Crystal Reports forniscono un meccanismo per esporre ciascun valore operatore come una stringa di testo. Sono definiti i seguenti valori operatore:
  • 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

Espressioni filtro speciali per la progettazione di report di richiamo dati

Gli operatori IS_BETWEEN e IS_NOT_BETWEEN presentano una difficoltà quando si utilizza il modello di report di richiamo dati poiché è richiesto un totale di tre argomenti (operatore, operatore inferiore e operatore superiore). ClearQuest Reporting Driver non supporta direttamente gli operatori IS_BETWEEN e IS_NOT_BETWEEN. Tuttavia, è possibile far funzionare questi operatori creando una query ClearQuest che utilizza due filtri raggruppati con un AND nel programma di creazione query. Al runtime, ClearQuest Reporting Driver crea quattro parametri per i due filtri, simulando gli operatori IS_BETWEEN e IS_NOT_BETWEEN.

Nei seguenti esempi, le stringhe di testo in grassetto sono i valori forniti al runtime.

Considerare la seguente espressione di filtro:

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

Gli stessi risultati possono essere raggiunti utilizzando due filtri, come mostrato nel prossimo esempio:

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

Feedback