GetLogin

Descripción

Devuelve el inicio de sesión de base de datos asociado al usuario actual.

Sintaxis

VBScript

dbDesc.GetLogin

Perl

$dbDesc->GetLogin();
Identificador
Descripción
dbDesc
Un objeto DatabaseDesc que contiene información sobre una de las bases de datos instaladas.
Valor de retorno
Un valor String que contiene el inicio de sesión de base de datos asociado al usuario actual.

El inicio de sesión de base de datos no es el mismo que el inicio de sesión de Rational ClearQuest del usuario. El inicio de sesión de base de datos hace referencia al nombre de cuenta que utiliza Rational ClearQuest al iniciar transacciones con la base de datos. El administrador de la base de datos establece este valor de antemano.

El usuario debe haber iniciado la sesión en una base de datos para que este método devuelva un valor adecuado. Para escritores de código de enganche, Rational ClearQuest inicia, automáticamente, la sesión del usuario en la base de datos. Si escribe una aplicación autónoma, debe crear un objeto Session de modo manual y llamar al método UserLogon antes de llamar a este método.

Para la mayoría de usuarios, este método devuelve el inicio de sesión de lectura/grabación asociado a la base de datos. Sin embargo, si el usuario asociado a la sesión actual es el administrador de Rational ClearQuest, este método devuelve, en su lugar, el inicio de sesión del propietario de la base de datos. De modo similar, si el usuario tiene una cuenta de sólo lectura, este método devuelve el inicio de sesión de sólo lectura.

Si dispone de acceso al depósito de esquemas, puede recuperar información sobre la base datos de usuario accediendo a las propiedades del objeto Database correspondiente.

Ejemplos

VBScript

En el ejemplo siguiente se muestra cómo iniciar la sesión en la base de datos desde una aplicación de Visual Basic.

set sessionObj = CreateObject("CLEARQUEST.SESSION")

' Iniciar la sesión en cada base de datos sucesivamente.
databases = sessionObj.GetAccessibleDatabases("MASTR","","")
For Each db in databases
   If Not db.GetIsMaster Then
      ' Iniciar la sesión en la base de datos.
      sessionObj.UserLogon "tom", "gh36ak3", dbName,
         AD_PRIVATE_SESSION, dbSetName
      ' Obtener la contraseña y el inicio de sesión de la base de datos para "tom"
      dbLogin = db.GetLogin
      dbPassword = db.GetPassword

       ' ...
   End If
Next

Perl

use CQPerlExt;

#Iniciar una sesión de Rational
ClearQuest
$sessionObj = CQSession::Build();

#Obtener una lista de objetos de descripción de base de datos a los
#que se puede acceder

$databases = $sessionObj->GetAccessibleDatabases("MASTR", "", "");

#Obtener el número de bases de datos

$count = $databases->Count();

#Para cada base de datos a la que se puede acceder que no sea la base de datos maestra

for($x=0;$x<$count;$x++){

   $db = $databases->Item($x);

   if (! $db->GetIsMaster() ) {

      $dbName = $db->GetDatabaseName();

      #Iniciar la sesión en la base de datos como "tom" con la contraseña "gh36ak3"

      $sessionObj->UserLogon( "tom", "gh36ak3", $dbName, $dbSetName );

      #Obtener la contraseña y el inicio de sesión de la base de datos para "tom"

      $dbLogin = $db->GetLogin();

      $dbPassword = $db->GetPassword();

      #...

   }

}

CQSession::Unbuild($sessionObj);


Comentarios