$CQsession->UserLogon(Anmeldename, Kennwort, Datenbankname, Name_der_Datenbankgruppe);Alle Argumente sind Zeichenfolgen:
Anmeldename des Benutzers.
Benutzerkennwort.
Name einer Datenbank in einem Schema-Repository.
Name der Datenbankgruppe. Wenn Sie die Standardeinstellung verwenden, kann die Zeichenfolge Datenbankgruppe auf "leer" ("") gesetzt werden.
$CQSession->UserLogon("admin", "", "SAMPL", "");
require CQPerlExt;
$CQsession = CQSession::Build();
#Rational-ClearQuest-Sitzung starten
$sessionObj = CQSession::Build();
#Liste der verfügbaren Datenbanken abrufen
$databases = $sessionObj->GetAccessibleDatabases("MASTR", "admin", "");
$count = $databases->Count();
$sessionObj->UserLogon("admin", "", "perl2", "");
#Für jede verfügbare Datenbank den Datenbanknamen abrufen
#und Anmeldung als "joe" mit Kennwort "gh36ak3" durchführen:
for($x=0;$x<$count;$x++)
{
$db = $databases->Item($x);
$dbName = $db->GetDatabaseName();
# Logon to the database
$sessionObj->UserLogon( "joe", "gh36ak3", $dbName, "" );
#...
}
# Sie können auch die Methode "GetSessionDatabase" anstelle der Methode "GetAccessibleDatabases" verwenden
$dbDesc = $sessionObj->GetSessionDatabase();
# Die Methode "GetSessionDatabase" gibt Informationen zur Datenbank zurück, auf die in der aktuellen
# Sitzung zugegriffen wird. Diese Methode unterscheidet sich von der Methode "GetAccessibleDatabases"
# darin, dass sie das der aktuellen Sitzung zugeordnete DatabaseDescription-Objekt zurückgibt. Sie
# können diese Methode nur aufrufen, nachdem der Benutzer sich an einer bestimmten Datenbank angemeldet hat.
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)
{ # Zu verarbeitender Code bei Nichtvorhandensein von Benutzergruppen
print "This user does not belong to any groups\n";
}
else
{ # Alle Gruppen ausgeben
foreach $groupname (@$userGroups)
{ print "Group $groupname\n"; }
}
CQSession::Unbuild($sessionObj);