QueryOpen (NotesUIDocument - LotusScript)

現在の文書が開かれる直前に発生します。

定義位置

NotesUIDocument

構文

QueryOpen( Source as NotesUIDocument, Mode as Integer, IsNewDoc as Variant, Continue as Variant )

パラメータ

Source

NotesUIDocument 型。読み込み専用。 現在の文書です。

Mode

整数。読み込み専用。 この値が 0 のとき、文書は読み込みのために開かれます。また、この値が 1 のとき、文書は編集のために開かれます。

IsNewDoc

Boolean 型。読み込み専用。 この値が True のときは新規文書が作成されます。False のときは、既存の文書が開かれます。

Continue

Boolean 型。読み書き可能。文書を開くかどうかを示します。初期設定は True です。文書を開きたくないときには、このパラメータを False に設定します。

使用法

Domino® は、このイベントに対応するスクリプトの作成時に、ユーザーに代わってイベントの構文 (パラメータも含む) を作成します。ユーザーが入力する必要はありません。

このイベントは文書が開かれる前に発生するため、Source 引数を使用して、フィールド値を設定するなどの「フロントエンド」操作を行うことはできません。

既存の文書 (IsNewDoc = False) の場合、Source.Document を使用してバックエンドの NotesDocument を取得し、それを使用してフィールドの読み取りまたは割り当てを行うことができます。フィールドを割り当てる場合には、新規の値はフォームが開かれると表示されるため、NotesDocument を保存する必要はありません。

ただし、フォームが作成操作によって開かれる場合 (IsNewDoc = True) には、バックエンド文書がないことから、Source.Document は「Nothing」を返します。作成される文書にフィールドを割り当てるには、PostOpen イベントまたはフィールドのデフォルト式を使用してください。

Queryopen イベントはセキュリティ機能ではありません。情報へのアクセスを制御するには、イベントコードや非表示式ではなく、Readers フィールド、Authors フィールド、フィールドレベルの暗号化を使用してください。

文書の内容へのアクセスを制限する手段として Queryopen を使用しても、ユーザーは他の手段でフィールドの情報を簡単に表示できます。例えば、ユーザーはビューから [文書のプロパティ] インフォボックスを開いたり、自身が管理者となっているローカルデータベースに文書をコピーしたり、LotusScript® デバッガを使用して Queryopen の処理を中止したりできます。