SELECT (式言語)

SELECT 予約語は、式を実行するエージェント内、ビュー内、または複製時に、文書の選択条件を定義します。SELECT ステートメントは表現式の前に使用し、変更、ビューで表示、または複製の対象となる一連の文書を定義します。

構文

SELECT formula ;

使用法

式で SELECT を使用すれば、文書を選択するためにデータベース全体を調べる必要はありません。データベースのすべての文書に対してフィルタマクロを実行すると、SELECT ステートメントが選択処理を実行します。

SELECT という単語は、ビュー選択式の保存時に自動的に式の先頭に追加されます。

文書をすべて選択して処理するには、SELECT @All を使用します。例えば、データベースの全文書を表示するビューの選択式などで SELECT @All を使用します。@All は必ず SELECT 予約語とともに使用します。次のように @All が単独で式に使用されている場合、Notes/Domino は SELECT @All ステートメントを式に追加します。

@All;
SELECT @All;

フィールドと値を比較するとき (例えば、Year > 1995)、フィールドが利用不可の場合は、比較結果は False になります。ただし、フィールドが存在しているかどうかを @IsUnavailable でチェックしておく必要があります。

この予約語は、列式、非表示切り替え式、セクション編集者式、ウィンドウタイトル式、ホットスポット式、フィールド式、フォーム式、フォームアクション式では使用できません。

SELECT は、ツールバーボタンでは使用できません。

  1. 複数の文書の [Status] フィールドの内容を Closed に変更します。ただし、[Categories] フィールドの値が Unsigned Contracts である文書の [Status] フィールドは変更しないものとします。

    このように変更するには、式を実行するエージェントを作成して実行します。式を作成するときに、変更を加えるために Notes/Domino にスキャンさせる文書を指定します。SELECT ステートメントを式に追加すると、エージェント実行時に Notes/Domino が調べる文書をさらに絞り込むことができます。

    SELECT Categories != "Unsigned Contracts";
    FIELD Status := "Closed";
  2. 次の複製式は、[Year] フィールドがあり、その値が 1995 より大きい文書だけを複製します。
    SELECT @IsAvailable(Year) & Year > 1995
  3. 次の複製式は、[Year] フィールドがない文書、および [Year] フィールドの値が 1995 より大きい文書だけを複製します。
    SELECT !@IsAvailable(Year) | Year > 1995

クロスリファレンス

LotusScript® NotesView クラスの SelectionFormula プロパティ