DTO セッションの確立 : DtoSession オブジェクト
 
このページをシェアする                  
DtoSession オブジェクト
DtoSession オブジェクトは、ほとんどの DTO 操作のルート オブジェクトです。PSQL データベース エンジンへの接続を管理します。
プロパティ
 
Connected
Session オブジェクトが PSQL エンジンに接続するかどうかを示すブール値を返します。
True = 接続されています
False = 接続されていません
Error
最後のメソッド呼び出しのエラーを返します。メソッド呼び出しの結果を渡し、エラーを説明する dtoResult 文字列を返します。
エラー コードの一覧については DtoResult を参照してください。
ServerName
DtoSession オブジェクトのサーバ名を取得または設定します。
UserName
オブジェクトのユーザー名を設定します。
Password
セッションのパスワードを設定します。
コレクション
DtoCategories コレクション
DtoDatabases コレクション
DtoDSNs コレクション
オブジェクト
DtoMonitor オブジェクト
DtoServices オブジェクト
DtoLicenseMgr オブジェクト
DtoEngineInformation オブジェクト
メソッド
Connect メソッド
Disconnect メソッド
GetSetting メソッド
備考
DtoSession オブジェクトは、辞書を除くすべての操作の起点です。DtoSession を使用して、サーバーへの接続、カテゴリや設定などの設定情報の取得、データベースや DSN の調査、PSQL の使用情報の監視を行います。
DtoSession を使用するには、まずオブジェクトのインスタンスを作成し、Connect メソッドを使ってセッション オブジェクトのサーバーを指定します。
セッションの接続に使用するユーザー名とパスワードはそのマシン用のみです。これは、PSQL データベースに対して認証されるわけではありません。
メモ:ASP を使って、または Visual Basic の CreateObject メソッドを使ってこのオブジェクトのインスタンスを作成する場合、DtoSession のプログラム ID は "DTO.DtoSession.2"(DTO バージョン 2)または "DTO.DtoSession.1"(DTO バージョン 1)になります。これら 2 つのバージョンの違いについては、DTO2 を参照してください。
'セッション オブジェクトのインスタンスを作成する
Dim my_session as New DtoSession
 
'サーバーに接続する
result = my_session.Connect("myserver", "username", "password")
 
'Error プロパティを使って接続が正常かどうか確認する
if Not (result = Dto_Success)
Then Msgbox"Could not connect to the server.Error was "+ my_session.Error(result)
 
'セッション オブジェクトを使って、Category および Database
'コレクションを取得する
 
Dim my_categories as DtoCategories
Dim my_databases as DtoDatabases
Set my_categories = my_session.Categories
Set my_databases = my_session.Databases
関連項目
DtoCategories コレクション
DtoServices オブジェクト
DtoMonitor オブジェクト
DtoDatabases コレクション
DtoDSNs コレクション
メソッドの詳細
Connect メソッド
サーバーへの接続を開きます。
構文
Dim result as DtoResult
result = Object.Connect([server], [username], [password])
引数
Object
DtoSession オブジェクト
server
(省略可能)接続するサーバーの名前。省略した場合、ローカル サーバーへの接続を試行します。また、先に ServerName プロパティを設定しておき、このパラメーターを指定しないで Connect メソッドを呼び出すこともできます。
username
(省略可能)サーバーのユーザー名。先に UserName プロパティを設定しておき、このパラメーターを指定しないで Connect メソッドを呼び出すこともできます。
password
(省略可能)ユーザーのパスワード。先に Password プロパティを設定しておき、このパラメーターを指定しないで Connect メソッドを呼び出すこともできます。
戻り値
 
result
メソッド呼び出しの結果を示す DtoResult(Long 型の値)。Error プロパティを使って結果の説明を取得します。
備考
サーバーへの接続はさまざまな理由で失敗することがあるので、このメソッドの戻り値をチェックしてプログラムから適切な処置を行ってください。
ユーザー名とパスワードを指定しない場合、guest としてログインを試みます。guest としてのログインが成功した場合、いくつかの機能が使用できません。
セッションが現在接続されているかどうかを確認するために isConnected プロパティをチェックしてください。
Dim result as DtoResult
Dim my_session as New DtoSession
result = my_session.Connect("myserver", "smook", "1234")
 
Dim result as DtoResult
Dim my_session as New DtoSession
my_session.UserName="smook"
my_session.Password="1234"
my_session.ServerName="myserver"
result = my_session.Connect
Disconnect メソッド
サーバへの接続を終了します。
構文
result = Object.Disconnect
引数
Object
DtoSession オブジェクト
戻り値
 
result
メソッド呼び出しの結果を示す DtoResult(Long 型の値)。Error プロパティを使って結果の説明を取得します。
備考
セッション オブジェクトを使用して別のサーバー、あるいは既存のアプリケーションへ接続する前に、接続しているすべてのサーバーに対してこのメソッドを呼び出す必要があります。
Dim result as DtoResult
Dim my_session as New DtoSession
result = my_session.Connect("myserver", "username", "pw")
'
'ここで操作を実行
'
result = my_session.Disconnect
GetSetting メソッド
設定 ID を使用して DtoSetting オブジェクトを取得します。
構文
Set my_setting = Object.GetSetting(setting_id)
引数
Object
DtoSession オブジェクト
setting_id
有効な設定 ID。DtoSetting オブジェクトにはそれぞれ一意に識別する SettingID プロパティがあります。特定のカテゴリのすべての設定を取得する場合は、DtoCategory オブジェクトの Settings プロパティを使用します。このメソッドは、取得する特定の設定が既にわかっていて、あらかじめそれらの設定 ID(setting_id)を保存している場合に利用できます。
戻り値
 
my_setting
DtoSetting オブジェクト。指定した設定が見つからなかった場合は、NULL が返されます。
備考
このメソッドは、最初にカテゴリを取得して DtoSettings コレクションから検索することなく、指定した設定を取得する場合に利用できます。
Dim oSession As New DtoSession
Dim Result As dtoResult
Result = oSession.Connect("localhost", "", "")
 
Dim oSetting As DtoSetting
Dim settingFileversion As Integer
settingFileversion = 97
Set oSetting = oSession.GetSetting(settingFileversion)
 
If oSetting Is Nothing Then
  MsgBox "Invalid setting"
Else
  Dim new_selections As New DtoSelectionItems
  '0 = 9.5 '1 = 9.0 '2 = 8.x '3 = 7.x '4 = 6.x
  'これらはファイル形式の値です
 
  new_selections.Add oSetting.AllPossibleSelections.GetByID(0)
  oSetting.Value = new_selections
End If