指定されたユーザーがログインできるデータベースのリストを戻します。
このメソッドは、指定されたユーザーがログインできるデータベースのみを戻します。user_login_name パラメータに空の文字列が含まれている場合、このメソッドは、指定されたスキーマ リポジトリ (マスター データベース) に関連付けられたすべてのデータベースのリストを戻します。
各 DatabaseDesc オブジェクトを調べると、ログインするのに必要な、対応するデータベース名、データベース セット名などの情報を取得できます。
VBScript
session.GetAccessibleDatabases (master_db_name, user_login_name, database_set)
Perl
$session->GetAccessibleDatabases(master_db_name, user_login_name, database_set);
Perl の場合は、DatabaseDescs オブジェクトのコレクション。
VBScript
set sessionObj = GetSession ' Get the list of databases in the ' master database set. databases = sessionObj.GetAccessibleDatabases("MASTR","admin","") for each db in databases ' Get the name of the database dbName = db.GetDatabaseName sessionObj.UserLogon "admin", "", dbName, AD_PRIVATE_SESSION, "" dbConnectString = db.GetDatabaseConnectString Next 次のコードは、特定のデータベース セット内のすべてのユーザー データベースの、 接続製造元情報および論理名を示すメッセージ ボックスを用意します。 Sub Test() Dim session Dim databases Dim dbConnectString Dim dbConnectName Dim db Set session = CreateObject("CLEARQUEST.SESSION") databases = session.GetAccessibleDatabases("MASTR", "admin", "") session.UserLogon "admin", "", "SAMPL", AD_PRIVATE_SESSION, "" For Each db In databases dbConnectString = db.GetDatabaseConnectString dbConnectName = db.GetDatabaseName MsgBox dbConnectString MsgBox dbConnectName Next End Sub
Perl
use CQPerlExt;
#Start a Rational ClearQuest session
$sessionObj = CQSession::Build();
#Get a list of accessible databases
$databases = $sessionObj->GetAccessibleDatabases("MASTR", "admin", "");
$count = $databases->Count();
#Foreach accessible database, login as joe with password gh36ak3
for($x=0;$x<$count;$x++){
$db = $databases->Item($x);
$dbName = $db->GetDatabaseName();
# Logon to the database
$sessionObj->UserLogon( "joe", "gh36ak3", $dbName, "" );
#...
}
CQSession::Unbuild($sessionObj);