BuildFilterOperator

Descripción

Crea un objeto QueryFilterNode que contiene el operador booleano especificado.

Este método crea un nodo anidado (o subnodo) en la expresión de consulta. El nodo recién creado opera al mismo nivel que los filtros en el objeto QueryFilterNode especificado en el parámetro del nodo y está sujeto a las mismas condiciones. Puede añadir filtros al nodo recién creado utilizando el método BuildFilter como lo haría para cualquier otro nodo.

Sintaxis

VBScript

node.BuildFilterOperator operador_booleano 

Perl

$node->BuildFilterOperator(operador_booleano); 
Identificador
Descripción
node
El objeto QueryFilterNode al que se va a adjuntar el nodo recién creado.
operador_booleano
Un Long cuyo valor es una de las constantes de enumeración de BoolOp.
Valor de retorno
El objeto QueryFilterNode recién creado.

Ejemplos

VBScript

' consulta de (id in idRange) AND (submitter = jjones OR clopez OR kwong)

Set qdef = sessionObj.BuildQuery("Defect")

qdef.BuildField ("id")

qdef.BuildField ("headline")

'Aquí está el operador raíz

Set filterNode1 = qdef.BuildFilterOperator(AD_BOOL_OP_AND)

Dim idRange(1) ' Establece una matriz de dos elementos 
 
idRange(0) = "SAMPL00000055"

idRange(1) = "SAMPL00000057"

filterNode1.BuildFilter "id", AD_COMP_OP_IN, idRange

'Aquí está el operador de subnodo

Set filterNode2 = filterNode1.BuildFilterOperator(AD_BOOL_OP_OR)

filterNode2.BuildFilter "submitter", AD_COMP_OP_EQ, "jjones"

filterNode2.BuildFilter "submitter", AD_COMP_OP_EQ, "clopez"

filterNode2.BuildFilter "submitter", AD_COMP_OP_EQ, "kwong" 

Perl

# consulta de (Owner = jsmith) AND (state = closed)
@owner = ("jsmith");

@state = ("closed");

$queryDef = $CQSession->BuildQuery("Defect");

@dbfields = ("ID","State","Headline");

foreach $field (@dbfields) {

      $queryDef->BuildField($field);   

      }

$FilterNode1 = $queryDef->BuildFilterOperator($CQPerlExt::CQ_BOOL_OP_AND);

$FilterNode1->BuildFilter("Owner", $CQPerlExt::CQ_COMP_OP_EQ, \@owner);

$FilterNode1->BuildFilter("State", $CQPerlExt::CQ_COMP_OP_NOT_IN, \@state);



$resultSet = $CQsession->BuildResultSet($queryDef);

$resultSet->Execute;

$num_columns = $resultSet->GetNumberOfColumns; 


Comentarios