LOTUSSCRIPT /COM/OLE のクラス


オブジェクトを使用する
このセクションでは、オブジェクトを作成する方法、オブジェクトの参照を代入する方法、オブジェクトを削除する方法について説明します。

オブジェクトを作成するLotus Domino のクラスに基づいてオブジェクトを作成するか、既存の Lotus Domino オブジェクトへの参照を代入することで、Lotus Domino の機能にアクセスできます。オブジェクトの作成と代入のどちらが適切であるかは、Lotus Domino のクラスと実行する操作によって異なります。
Lotus Domino オブジェクトを作成して、参照変数にそのオブジェクトを代入するには、Dim ステートメントで New キーワードを使います。クラス名に続けて、パラメータをカッコで囲んで指定します。次のステートメントは、ローカルに保存されている SALES.NSF の NotesDatabase オブジェクトを作成し、そのオブジェクトを変数 db に代入します。

Dim db As New NotesDatabase("", "SALES.NSF")

Set ステートメントで New キーワードを使ってオブジェクトを作成することもできます。最初に Dim ステートメントで変数を宣言しておかなければなりません。

Dim db As NotesDatabase
Set db = New NotesDatabase("", "SALES.NSF")

New は、NotesACL、NotesAgent、NotesDocumentCollection、NotesEmbeddedObject、NotesRichTextTab、NotesUIDocument、NotesView、NotesViewColumn、NotesViewEntry、NotesViewEntryCollection、NotesViewNavigator では使えません。これらのオブジェクトにアクセスするには、必ず代入を使ってください。

オブジェクトの参照を代入する既存の Lotus Domino オブジェクトを参照変数に代入するには、Set ステートメントを使います。次のステートメントは、GetNextDatabase (DbDirectory クラスのメソッド) からの戻り値を db に代入します。
Set db = srv.GetNextDatabase()

Set ステートメントを使うと、1 つのオブジェクトを参照変数に代入できます。Set ステートメントを使ってオブジェクトの配列またはリストを変数に代入しないでください。たとえば、

views = db.Views

ただし

Set view = db.Views(0)

オブジェクトを削除するLotusScript の Delete ステートメントを使ってオブジェクトを削除すると、LotusScript のオブジェクトは破壊されますが、Lotus Domino オブジェクトには影響しません。データベースから文書やアイテムなどの Lotus Domino オブジェクトを削除するには、適切な Remove メソッドを使います。
すでに Lotus Domino オブジェクトで使われている参照変数を新規 Lotus Domino オブジェクトに代入すると、最初の Lotus Domino オブジェクトは削除されます。

Lotus Domino オブジェクトを削除すると、そのオブジェクトに含まれていたオブジェクトはすべて失われます。たとえば、NotesDatabase オブジェクトを削除したり閉じたりすると、そのデータベース内で参照される NotesDocument オブジェクトはすべて削除されます。

関連項目