SetHookSeesAllRecords

Descripción

Especifica si el enganche actual ve todos los registros o únicamente los registros que el usuario actual está autorizado a ver.

Permite a los desarrolladores de esquemas controlar la visibilidad de enganches para registros de enganche en enganche. La función Set especifica la visibilidad durante el tiempo que dura la ejecución del enganche actual únicamente.

Si establece el método en True (1) especifica que el enganche actual ve todos los registros cuando ejecuta una consulta. False (0) significa que el enganche actual sólo ve registros que el usuario actual está autorizado a ver (basándose en el privilegio de usuario real del usuario para la sesión) cuando ejecuta una consulta.

Por ejemplo, si el comportamiento predeterminado es que un enganche no vea todos los registros, la línea siguiente
  • no tiene efecto
    $session->SetHookSeesAllRecords(0);
  • garantiza que el enganche ve todos los registros
    $session->SetHookSeesAllRecords(1);

Las propiedades de las bases de datos maestras HOOKS_SEE_ALL_USERS y HOOKS_SEE_ALL_RECORDS permiten a los desarrolladores de esquemas configurar la visibilidad predeterminada para todos los enganches de las bases de datos. Para los niveles de característica 5 y 6, el valor predeterminado para estas propiedades es True (1). Para el nivel de característica 7, los valores predeterminados son False (0). Consulte Rational ClearQuest Command Reference para obtener información sobre los mandatos CLI.

Nota: Este método estuvo disponible en la versión 7.1.

Sintaxis

VBScript

user_restr = session.SetHookSeesAllRecords set_vis 

Perl

session->SetHookSeesAllRecords(set_vis); 
Identificador
Descripción
session
El objeto Session que representa la sesión de acceso a la base de datos actual.
set_vis
Un valor Boolean que especifica si el enganche actual ve todos los registros o únicamente los registros que el usuario actual está autorizado a ver. True especifica que el enganche actual ve todos los registros cuando ejecuta una consulta de registro. False especifica que el enganche actual sólo puede ver los registros que el usuario actual está autorizado a ver cuando ejecuta una consulta de registro.
Valor de retorno
Ninguno.

Ejemplos

VBScript

sub project_ChoiceList(fieldname, choices)
  ' fieldname As String
  ' choices As Object
  ' record type name is Defect
  ' field name is project

set session = GetSession
dim curHookSeesAllRecords

' Store current session "Context"
curHookSeesAllRecords = session.GetHookSeesAllRecords()

' set session context to "User Context"
session.SetHookSeesAllRecords(0)

set querydef = session.BuildQuery("project") 
querydef.BuildField("name") 
set resultset = session.BuildResultSet(querydef)
resultset.Execute 

status =resultset.MoveNext
Do While status = AD_SUCCESS 
   choices.AddItem resultSetObj.GetColumnValue(1) 
Loop 

' revert to original session "Context"
session.SetHookSeesAllRecords( curHookSeesAllRecords )

End Sub

Perl

sub project_ChoiceList 
{
    my($fieldname) = @_;
    my @choices;
    # $fieldname as string scalar
    # @choices as string array
    # record type name is Defect
    # field name is Project

    my $session = $entity->GetSession();
    my ($curHookSessAllRecords);

# store current "Context"
    $curHookSessAllRecords=$session->GetHookSeesAllRecords();

# set to "User Context"
    $session->SetHookSeesAllRecords(0);

    my ($queryDefObj, $resultSetObj);

    $queryDefObj = $session->BuildQuery("Project");

    # have the query return the desired
    # field of the user object(s)
    $queryDefObj->BuildField("Name");
    $resultSetObj = $session->BuildResultSet($queryDefObj);

    # run it
    $resultSetObj->Execute();

    # add each value in the returned column to the choicelist
    while
     ($resultSetObj->MoveNext() == $CQPerlExt::CQ_SUCCESS) {
         push(@choices,$resultSetObj->GetColumnValue(1));
    }

# revert to original session "Context"
    $session->SetHookSeesAllRecords($curHookSessAllRecords);

    return @choices;
}

Comentarios