unprocessedFTSearch (NotesAgentContext - JavaScript)

フルテキストの照会が指定されると、データベース内の文書を返します。対象となる文書は、現在のエージェントによって未処理であるとみなされ、かつ照会に一致する文書です。

定義場所

NotesAgentContext

構文

unprocessedFTSearch(query:string, maxdocs:int) : NotesDocumentCollection

unprocessedFTSearch(query:string, maxdocs:int, sortopt:int, otheropt:int) : NotesDocumentCollection

パラメータ 説明
String query フルテキストの照会です。
int maxdocs 返す文書の最大数。0 を指定すると、一致するすべての文書という意味になります。
int sortopt 以下のいずれかを使用してソートオプションを指定します。
  • Database.FT_SCORES (デフォルト) を使用すると、関連性スコアを基準にソートされ、関連性が最も高い文書が先頭になります。
  • Database.FT_DATECREATED_DES を使用すると、文書の作成日を基準にして降順にソートされます。
  • Database.FT_DATECREATED_ASC を使用すると、文書の作成日を基準にして昇順にソートされます。
  • Database.FT_DATE_DES を使用すると、文書の日付を基準にして降順にソートされます。
  • Database.FT_DATE_ASC を使用すると、文書の日付を基準にして昇順にソートされます。
otheropt 整数。以下の定数を使用して、追加の検索オプションを指定します。複数のオプションを指定するには、論理 OR 演算を使用します。
  • Database.FT_DATABASE とすると、Domino® データベースが検索範囲に含まれます。
  • Database.FT_FILESYSTEM とすると、Domino データベース以外のファイルが検索範囲に含まれます。
  • Database.FT_FUZZY とすると、あいまい検索が実行されます。
  • Database.FT_STEMS では、検索の基準として語幹語句が使用されます。
戻り値 説明
DocumentCollection 未処理で、かつ照会に一致する一連のソート済み文書。

使用法

このメソッドはエージェントに対してのみ有効です。

機能の仕組み

このメソッドは、以下の 2 段階で機能します。

例えば、ビュー内のすべての選択文書を対象に実行されるエージェントの場合、getUnprocessedFTSearch は選択文書のみを検索し、照会に一致する文書を返します。 前回の実行以降に変更されたすべての文書とすべての新規文書を対象に実行されるエージェントの場合、getUnprocessedFTSearch は、updateProcessedDoc によってマークが付けられなかった文書のみを検索し、照会に一致する文書を返します。

返される文書の種類

次の表では、unprocessedFTSearch によって返される文書について説明します。 文書の選択は、エージェントを実行する前に 1 回行われます。

表 1.
エージェントの実行対象または実行条件 unprocessedFTSearch によって返される文書がすべて満たす要件
データベースのすべての文書
  • [エージェントのプロパティ] ボックスに指定した検索条件を満たす
  • このメソッドに指定した全文検索条件を満たす
作成または変更されたすべての文書
  • このエージェントと updateProcessedDoc の組み合わせでは処理されない
  • エージェントの前回の実行以降に作成または変更された
  • [エージェントのプロパティ] ボックスに指定した検索条件を満たす
  • このメソッドに指定した全文検索条件を満たす
ビューのすべての未読文書
  • 未読で、ビュー内にある
  • [エージェントのプロパティ] ボックスに指定した検索条件を満たす
  • このメソッドに指定した全文検索条件を満たす
ビューのすべての文書
  • ビュー内にある
  • [エージェントのプロパティ] ボックスに指定した検索条件を満たす
  • このメソッドに指定した全文検索条件を満たす
すべての選択文書
  • ビュー内で選択されている
  • [エージェントのプロパティ] ボックスに指定した検索条件を満たす
  • このメソッドに指定した全文検索条件を満たす
なし 現在の文書のみである

updateProcessedDoc の使用

新規文書または変更文書を対象に実行されるエージェントの場合は、updateProcessedDoc を使用して、各文書に処理済みのマークを付ける必要があります。これにより、(文書を再度変更しない限り) 文書がエージェントによって処理される回数は確実に 1 回のみになります。 このメソッドを文書ごとに呼び出さないと、エージェントは次回の実行時にも同じ文書を処理します。

updateProcessedDoc メソッドでは、文書の呼び出し元である特定のエージェントの場合にのみ、文書にマークが付けられます。 あるエージェントで updateProcessedDoc を使用しても、他のエージェントが処理する文書には影響はありません。

その他のすべてのエージェントとビューアクションでは、updateProcessedDoc による影響はありません。

ビューアクション

ビューアクションで使用した場合、unprocessedFTSearch は、選択文書に対して実行されたエージェントの場合と同じ文書を返します。

全文索引

データベースが全文索引付きでない場合、このメソッドは有効ですが、効率は低下します。索引をテストするには、isFTIndexed を使用します。 ローカルデータベースに索引を作成するには、updateFTIndex を使用します。

このメソッドは、デフォルトでは最大 5,000 文書を返します。 Notes®.ini 変数 FT_MAX_SEARCH_RESULTS は、索引付きデータベース、または索引付きでなくてもクライアントのエージェントで実行されているデータベースについてのこの制限より優先されます。索引付きでなくても、サーバーのエージェントで実行されているデータベースについては、TEMP_INDEX_MAX_DOC Notes.ini 変数も設定する必要があります。絶対最大値は 2,147,483,647 です。

オプション

ソートオプションを指定しないと、文書は関連性スコアを基準にしてソートされます。 一連の文書を関連性を基準にしてソートすると、関連性が最も高い文書が先頭に表示されます。 一連の文書内の各文書の関連性スコアにアクセスするには、Document の FTSearchScore を使用します。

日付でのソートを要求すると、関連性スコアは得られません。結果として得られる DocumentCollection を Newsletter オブジェクトに渡すと、その文書リンクレポートの形式が設定され、ソートオプションに応じて、文書の作成日または関連性スコアが記載されます。

照会

構文 語または句を検索するには、その語または句をそのまま入力します。ただし、検索キーワードを引用符で囲む必要があります。リテラル内の引用符は必ずエスケープしてください。

ワイルドカードや演算子などの構文も使用できます。詳細な構文規則については、『IBM Notes ヘルプ』の「演算子を使用して検索条件を絞り込む」を参照してください。Domino Designer Eclipse のヘルプシステムまたはインフォメーションセンター (http://publib.boulder.ibm.com/infocenter/domhelp/v8r0/index.jsp など) で「照会構文」について検索してください (どちらも IBM Notes から利用できます)。

言語間の参照

LotusScript® NotesDatabase クラスの UnprocessedFTSearch メソッド

Java™ Database クラスの unprocessedFTSearch メソッド