$CQsession->UserLogon(login_name, password, database_name, database_set_name);Tutti gli argomenti sono stringhe:
Nome di accesso utente.
Password utente.
Nome di un database all'interno di un repository di schemi.
Nome del gruppo di database. Se si utilizza il valore predefinito, la stringa database_set può essere impostata su ("").
$CQSession->UserLogon("admin", "", "SAMPL", "");
require CQPerlExt;
$CQsession = CQSession::Build();
#Avviare una sessione Rational ClearQuest
$sessionObj = CQSession::Build();
#Chiamare un elenco di database utente accessibili
$databases = $sessionObj->GetAccessibleDatabases("MASTR", "admin", "");
$count = $databases->Count();
$sessionObj->UserLogon("admin", "", "perl2", "");
#Per ogni database accessibile,
# chiamare il nome database e accedere come joe con password gh36ak3:
for($x=0;$x<$count;$x++)
{
$db = $databases->Item($x);
$dbName = $db->GetDatabaseName();
# Accedere al database
$sessionObj->UserLogon( "joe", "gh36ak3", $dbName, "" );
#...
}
# È anche possibile usare il metodo GetSessionDatabase invece di GetAccessibleDatabases
$dbDesc = $sessionObj->GetSessionDatabase();
# Il metodo GetSessionDatabase restituisce informazioni sul database a cui si accede
# nella sessione corrente. Questo metodo è diverso da GetAccessibleDatabases perché
# restituisce l'oggetto DatabaseDescription associato alla sessione corrente. È possibile chiamare solo
# questo metodo dopo che l'utente è entrato in uno specifico database.
print "DB name = ", $dbDesc->GetDatabaseName(), "\n";
print "DB set name = ", $dbDesc->GetDatabaseSetName(), "\n";
print "DB connect string = ", $dbDesc->GetDatabaseConnectString(), "\n";
print "User login name = ", $sessionObj->GetUserLoginName(), "\n";
print "User full name = ", $sessionObj->GetUserFullName(), "\n";
print "User email = ", $sessionObj->GetUserEmail(), "\n";
print "User phone = ", $sessionObj->GetUserPhone(), "\n";
print "Misc user info = ", $sessionObj->GetUserMiscInfo(), "\n";
print "User groups: \n";
$userGroups = $sessionObj->GetUserGroups();
if (!@$userGroups)
{ # Codice da gestire se non esistono gruppi di utenti
print "This user does not belong to any groups\n";
}
else
{ # Stampare tutti i gruppi
foreach $groupname (@$userGroups)
{ print "Group $groupname\n"; }
}
CQSession::Unbuild($sessionObj);