Crea un Oggetto QueryFilterNode nidificato che contiene l'operatore booleano specificato.
Questo metodo crea un nodo nidificato (o nodo secondario) nell'espressione della query. Il nodo appena creato funziona nello stesso livello dei filtri nell'oggetto QueryFilterNode specificato nel parametro del nodo ed è soggetto alle stesse condizioni. È possibile aggiungere filtri al nodo appena creato utilizzando il metodo BuildFilter come per gli altri nodi.
VBScript
node.BuildFilterOperator bool_operator
Perl
$node->BuildFilterOperator(bool_operator);
VBScript
' query for (id in idRange) AND (submitter = jjones OR clopez OR kwong)
Set qdef = sessionObj.BuildQuery("Defect")
qdef.BuildField ("id")
qdef.BuildField ("headline")
'Here is the root operator
Set filterNode1 = qdef.BuildFilterOperator(AD_BOOL_OP_AND)
Dim idRange(1) ' This sets up an array of two elements
idRange(0) = "SAMPL00000055"
idRange(1) = "SAMPL00000057"
filterNode1.BuildFilter "id", AD_COMP_OP_IN, idRange
'Here is the subnode operator
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
# query for (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;