IBM Domino 文書の照会

文書フィールドで指定された値に一致する Lotus® Domino® サーバーにあるデータベースから文書を照会するには、「文書の照会」アクティビティーを使用します。

Outbound 要求で送信される入力データに、以下の条件のうちの 1 つ以上を指定できます。
  • 文書ビジネス・データ: 文書ビジネス・データを「入力のマップ」セクションに指定した場合、コネクターはすべての有効なデータをマップ入力から読み取ります。 コネクターは、これらの有効なデータに一致する文書をデータベースで検索します。 一致した文書のうち、マップ出力スキーマを使用して表すことができるものは、すべて応答として返されます。
  • ParentDocumentUNID: 有効な ParentDocumentUNID を「入力のマップ」セクションに指定した場合、コネクターはこの親文書に対する子文書をすべて照会します。 一致した文書のうち、マップ出力スキーマを使用して表すことができるものは、すべて応答として返されます。
  • データ・セットなし: データをマップ入力に指定しなかった場合、コネクターはマップ出力スキーマを使用して表すことができる文書を照会します。
次の 2 つのタイプの検索方式に基づいて、文書を検索できます。
  1. データベース検索方式: 指定された文書の選択条件に適合するデータベース内の文書すべてを返します。 デフォルトでは、アクティビティーはデータベース検索方式を使用して文書を検索します。検索を明示的にこのタイプに設定するには、「入力のマップ」セクションで、searchType オプション・パラメーターの値を NORMAL_SEARCH に設定します。この方式では、以下のタイプの検索条件に基づいて、文書を検索できます。
    1. 単一値: 検索条件に単一値を指定できます。 例えば、コネクターは、検索フィールドに指定された単一の語、数値、日付などに基づいて、文書を照会できます。 「数値」タイプおよび「日付」タイプのフィールドで指定可能な検索値について詳しくは、以下の項目を参照してください。
      • 数値: 「数値」タイプ・フィールドの検索条件として、2 桁の数値または単一の整数値を指定できます。 この検索機能を使用して、「数値」タイプ・フィールドに特定の値を持つ文書を照会することができます。 例えば、従業員の給与が 1234.56 に一致する文書を照会するには、EmployeeSalary フィールドに 1234.56 という値を入力します。
      • 日付: 「日付」タイプ・フィールドの検索条件として、日付を指定できます。 例えば、誕生日が 1982/11/22 に一致する文書を照会するには、Birthday フィールドに 1982/11/22 という値を指定します。
    2. 複数値: Lotus® Domino のどのフィールド・タイプに対しても、複数の値を検索条件に指定できます。 この機能を使用すると、指定された値を持つ文書を実行時に検索することができます。 例えば、検索条件に指定した語に一致する文書を取得するようにコネクターを構成することができます。
    3. リッチ・テキスト・コンテンツのテキスト検索: リッチ・テキスト・コンテンツを持つ文書を実行時に検索するために、テキストを指定することができます。 コネクターは、RichText フィールドで指定されたテキストを使用して検索を実行し、一致するすべての文書を取得します。 コネクターは、RichText フィールドに関して、単一テキスト・コンテンツ検索と複数テキスト・コンテンツ検索の両方をサポートしています。 また、文書の検索用に、* などのワイルドカード接尾部を RichText フィールドに指定することもできます。
    4. 複数のフィールドを使用する検索: 複数のフィールドに検索値を指定することができます。この構成の場合、アクティビティーは論理 AND 演算子を使用して検索ストリングをグループ化します。 例えば、単一値、複数値、RichTextParentDocumentUNID などを、それぞれ別のフィールドに指定することができます。 アクティビティーは、指定されたすべての条件に一致する検索内容のみを返します。

  2. データベース全文検索/索引検索方式: データベース内のすべての文書の全文検索を行います。データベース全体が索引付けされている場合、索引検索方式は、データベース検索方式よりも高速に行われます。この方式では、出力データが関連度スコアでソートされます。 コレクションを関連度でソートした場合、最も関連度の高い文書が先頭に表示されます。検索を明示的にこのタイプに設定するには、「入力のマップ」セクションで、searchType オプション・パラメーターの値を FULL_TEXT_SEARCH に設定します。
    1. 複数のフィールドを使用する検索: 索引検索方式でも、複数のフィールドを使用した検索が可能です。複数のフィールドに検索値を指定することができます。この構成の場合、コネクターは論理 AND 演算子を使用して検索ストリングをグループ化します。例えば、単一値、複数値、または ParentDocumentUNID を、それぞれ別のフィールドに指定することができます。コネクターは、指定されたすべての検索条件の論理 AND 演算を返します。ストリング型フィールドでは完全一致および近似一致を、数値型フィールドでは完全一致を返します。
    注: 索引検索方式は、RichTextAttachmentsDate フィールドでは機能しません。
「文書の照会」アクティビティーの使用
  1. プロジェクト」ペインで「オーケストレーション」を右クリックし、「新規オーケストレーション」をクリックして、オーケストレーションを作成するか、または開きます。 「オーケストレーション」ペインが表示されます。
  2. アクティビティー」タブを選択し、「Domino」フォルダーを展開します。
  3. 照会アクティビティー (Query Activity)」を「Domino」フォルダーからオーケストレーションへドラッグします。 オーケストレーションのグラフィカル表現が、「チェックリスト」と共に表示されます。
  4. エンドポイントの選出」をクリックし、Lotus Domino エンドポイントを選択します。

    Lotus Domino エンドポイントを作成または編集する手順については、『Lotus Domino アクティビティーのエンドポイントの作成または編集』を参照してください。

  5. 「チェックリスト」で「構成」をクリックします。 「構成」ペインが表示されます。
    • 「参照」をクリックして、既存のデータベースを「IBM Domino データベースの表示」ペインから選択します。 「Domino® データベースの表示」に、選択したエンドポイントのすべてのデータベースが表示されます。
    • 「次へ」をクリックして、既存のフォームを「IBM Domino フォームの表示」ペインから選択します。 「Lotus Domino フォームの表示」には、Lotus Domino サーバー上の選択したデータベースにあるすべてのフォームが表示されます。
      注: 「次へ」ボタンは、データベース名を選択しないと使用可能になりません。
    • 正規名が含まれるフィールド」は、John Smith/IBM/COUNTRY などの正規名を値 (コンマで区切られる) として持つ可能性があるフィールドを受け入れます。 これらのフィールドの値をインターネット・メール・アドレス (johnsmith@country.ibm.com など) に変換する場合は、このフィールドに正規の名前を入力します。このようなフィールド名の例として、「宛先」、「送信元」、「CC」、「議長」、「必須参加者」などがあります。

  6. 「チェックリスト」から「入力のマップ」を選択します。 「文書の照会」アクティビティーの選択したオブジェクトから生成された XML スキーマが、「アクティビティーへ」パネルの request 入力パラメーターの下にノードとして表示されます。

    複数のデータベースにわたって同じフォーム・タイプの場合は、データベース名をオプション・パラメーターの一部として入力のマップで指定できます。これにより、同じオーケストレーションを使用して、異なるデータベースにアウトバウンド操作を実行できます。 これを実行するには、databaseName オプション・パラメーター (表 1 で説明) にデータベース名を指定する必要があります。databaseName パラメーターに値が入力されると、databaseName パラメーターで指定されたデータベースにアウトバウンド操作が実行されます。 値を指定しない場合は、アウトバウンド操作の実行には、構成時に指定したデータベース名が使用されます。

    オプションの入力パラメーターを次の表で説明します。

    表 1. オプションの入力パラメーター
    パラメーター名 説明
    databaseName databaseName は、文書が照会されるデータベースの名前です。 このパラメーターに値が設定されると、構成パネルで指定されたデータベースの値が上書きされます。 このパラメーターは、同じオーケストレーションを使用して、同じ構造 (フォーム) を持つ文書を複数のデータベースで照会する必要があるときに役立ちます。
    Domino コネクターは、異なる Domino サーバーへの動的エンドポイント接続もサポートします。実行時に、エンドポイント・ページで構成されたもの以外の Lotus Domino サーバーに動的に接続したい場合は、入力のマップの dominoConnectionProperties に新しいオプション・パラメーターを追加します。 dominoConnectionProperties のパラメーターを以下の表で説明します。
    表 2. オプションの接続パラメーター
    パラメーター 説明
    dominoConnectionProperties パラメーター
    hostName Lotus Domino サーバーが稼働しているマシンのホスト名または IP アドレスを指定します。
    diiopPort Java™ アプレットまたはアプリケーションが CORBA を使用して Domino データにリモートでアクセスするための Domino Internet Inter-ORB Protocol (DIIOP) ポートを指定します。デフォルト値は 63148 です。
    username Lotus Domino サーバーに接続するユーザー名を指定します。
    connectionPool パラメーター
    minimumConnections 統合アプライアンスが接続プールで開いておく Domino サーバー接続の最小数を指定します。0 (ゼロ) も入力できます。 デフォルト値は 5 です。
    maximumConnections 統合アプライアンスが接続プールで開いておくことができる Domino サーバー接続の最大数を指定します。0 (ゼロ) を入力した場合、接続の最大数に制限はありません。 デフォルト値は 25 です。
    maxIdleTime 統合アプライアンスによって閉じられるまで Domino サーバー接続をアイドル状態のまま開いておくことができる時間 (分) を指定します。0 (ゼロ) を入力した場合、接続はプールに返されると閉じられます (つまり、アイドル時間がありません)。 デフォルト値は 120 分です。
    maxWait プール内のすべての接続が使用されている場合に統合アプライアンスが接続を待つ時間 (秒) を指定します。 待機時間が経過しても接続を取得できない場合は、例外がスローされます。 デフォルト値は 300 秒です。
    reclaimConnections コネクターがアイドル状態の接続をチェックする間隔を指定します。アイドル状態の接続は、「最小接続数」パラメーターで指定した最小接続数に到達するまで再利用されます。 デフォルト値は 5 分です。
    password Domino サーバーに接続するユーザー名に関連付けられたパスワードを指定します。
  7. オーケストレーション変数とアクティビティーの入力パラメーターとの間のマップを作成します。
    注: 入力構造の必須エレメントの値は、実行時に指定されている必要があります。 この値は、エレメントのデフォルト値を指定するか、エレメントを入力ノードにリンクすることによって指定できます。 実行時に必須エレメントの値が指定されていないと、アクティビティーは Web 管理コンソールから報告された例外をスローします。 実行時にオプションの入力パラメーターの値が指定されていなくても、実行時に例外はスローされません。
  8. アクティビティーで使用する検索タイプを次のように選択します。
    表 3. 検索タイプ
    パラメーター名 説明
    searchType このアクティビティーで使用する検索タイプを指定します。値は以下のとおりです。
    • NORMAL_SEARCH: IBM Domino データベース検索方式を使用します。
    • FULL_TEXT_SEARCH: IBM Domino データベース全文検索方式を使用します。
    値を指定しない場合、NORMAL_SEARCH が使用されます。
  9. 「チェックリスト」で「出力のマップ」を選択します。 アクティビティーの応答保持のために生成された XML スキーマが、「アクティビティーから」パネルの response 出力パラメーターの下にノードとして表示されます。

    注: Domino 文書内に存在し、マップ入力/出力構造で生成されていない動的に追加されたフィールドは、Domino コネクターによって処理されます。このアクティビティーを使用して文書を取得する際、これらのフィールドのデータは、AdditionalFields の下のマップ出力セクションに提供されます。

    queryUsingTimestamp は、タイム・スタンプに基づく文書を照会するときに使用されるパラメーターです。 timestamp プロパティーは、再帰的なプロパティーです。 timestamp プロパティーでは、groupFieldsnameoperator、および value を定義できます。

    オプションの出力パラメーターを次の表で説明します。

    パラメーター名 説明
    queryUsingTimestamp
    以下は、timestamp プロパティーです。
    表 4. timestamp プロパティー
    プロパティー
    groupFields ANDOR()AND(OR()AND)OR)AND(、および )OR( などの複数の値を指定できます。
    注: 複数の条件を設定できます。複数の条件を設定する場合は、groupFields を使用する必要があります。
    name createdTimestamp または lastModifiedTimestamp のいずれかの値を指定します。
    operator GREATER_THANGREATER_THAN_OR_EQUAL_TOEQUAL_TOLESS_THANLESS_THAN_OR_EQUAL_TO、 または NOT_EQUAL_TO のいずれかの値を指定します。
    value 日付と時刻の値を指定します。例えば、26-09-2013 12:05:00 PM EST と指定します。
    注: タイム・ゾーンを指定しない場合は、デフォルトで、サーバーのタイム・ゾーンが考慮されます。

    注:
    • 全文検索では、NOT_EQUAL_TO 演算子 (!=) に基づく文書の照会はサポートされていません。
    • 全文検索では、時刻を使用した文書の照会はサポートされていません。 例えば、[_RevisionDate] = 05/06/2013 09:30:00 のような照会です。
    • タイム・スタンプとともに EQUAL_TO 演算子を使用した文書の照会は、通常の検索タイプでは機能しません。 例えば、@Modified = [05/06/2013 09:14:22] のような照会です。
    • 検索タイプとして全文検索を使用して文書を照会するときは、日付のみに基づく文書を照会でき、日時に基づく文書は照会できません。 例えば、 lastModfiedDateTime >= 05/20/2013 20:00:00 は、全文検索ではサポートされていません。
  10. 出力パラメーターとオーケストレーション変数との間のマップを作成します。
IBM Domino 「文書の照会」アクティビティーを構成しました。