全文照会を指定すると、データベース内の次の文書を返します。
public DocumentCollection unprocessedFTSearch(String query, int maxdocs)
throws NotesException
public DocumentCollection unprocessedFTSearch(String query, int maxdocs, int sortopt, int otheropt)
throws NotesException
String query
全文照会です。
int maxdocs
返す文書の最大数。0 を指定すると、一致するすべての文書という意味になります。
int sortopt
次のいずれかを使用してソートオプションを指定します。
int otheropt
整数。以下の定数を使用して、追加の検索オプションを指定します。複数のオプションを指定するには、論理 OR 演算を使用します。
DocumentCollection
未処理で、かつ照会に一致する一連のソート済み文書。
このメソッドはエージェントだけに有効です。
このメソッドは次の 2 段階で動作します。
例えば、ビュー内のすべての選択文書を対象に実行されるエージェントの場合、getUnprocessedFTSearch は選択文書のみを検索し、照会に一致する文書を返します。 前回の実行以降に変更されたすべての文書およびすべての新規文書を対象に実行されるエージェントの場合、getUnprocessedFTSearch は、updateProcessedDoc によってマークが付けられなかった文書のみを検索し、照会に一致する文書を返します。
次の表では、unprocessedFTSearch によって返される文書について説明します。 エージェントを実行する前に文書が 1 回選択されます。
エージェントの実行対象 |
unprocessedFTSearch によって返される文書が満たさなければならないすべての要件 |
---|---|
データベースのすべての文書 |
[エージェントのプロパティ] インフォボックスで指定された検索条件を満たすこと このメソッドで指定された全文検索条件に一致すること |
作成または変更されたすべての文書 |
このエージェントが 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 オブジェクトへ渡す場合、文書リンクは使用したソートオプションに応じて文書作成日か適合スコアでフォーマットされます。
語または句を検索するには、その語または句をそのまま入力します。ただし、検索キーワードを引用符で囲む必要があります。リテラル内の二重引用符はエスケープ処理してください。
ワイルドカードや演算子などの構文も使用できます。構文規則の詳細については、『Notes ヘルプ』の「演算子を使用して検索照会を絞り込む」を参照してください。Domino Designer Eclipse のヘルプシステムまたはインフォメーションセンター (例えば、http://publib.boulder.ibm.com/infocenter/domhelp/v8r0/index.jsp) (どちらも Notes を含みます) で、「照会構文」を検索してください。