3.4 クエリの操作

[クエリ]ノードでは、よく使用されるLDAP検索を定義できます。定義した検索は、DNQueryコントロールを使用するか、またはglobalQuery()メソッドを呼び出すことによって、要求フォームまたは承認フォームから実行できます。クエリを定義するには、ディレクトリ抽象化レイヤエンティティ、検索ルート、取得する行数、およびソースエンティティの取得条件を指定します。条件(「LastNameにsが含まれる場合」など)はハードコード化できます。または、要求フォームまたは承認フォームでユーザが入力するパラメータを1つ以上指定することもできます。

クエリを作成する

  1. 次のいずれかの方法で、新しいクエリウィザードを起動します。

    Designerのメニューから起動する場合

    • [ファイル]>[新規]>[プロビジョニング]の順にクリックします。[ディレクトリ抽象化レイヤクエリ]を選択し、[次へ]をクリックします。

    • [DAL]>[新規]>[クエリ]の順にクリックします。

    プロビジョニングビューから起動する場合

    • [クエリ]を右クリックし、[追加]をクリックします。

    ディレクトリ抽出化層エディタから起動する場合

    • [クエリの追加]ボタンをクリックします。

    • [クエリ]を右クリックし、[クエリの追加]をクリックします。

    [新しいクエリ]ダイアログボックスが表示されます。

    メモ:[ファイル]メニューから起動すると、他の方法で起動した場合には表示されないフィールドがダイアログボックスに表示されます。

  2. 次のようにフィールドに値を入力します。

    フィールド

    操作

    Identity Managerプロジェクトおよびプロビジョニングアプリケーション

    適切なIdentity Managerプロジェクトおよびプロビジョニングアプリケーションを選択します。

    メモ:このフィールドは、[ファイル]メニューからクエリを作成したときに表示されます。

    クエリキー

    クエリキーの固有値を入力します。この値は、式ビルダでクエリを識別するために使用されます。

    表示ラベル

    ディレクトリ抽象化レイヤエディタおよびプロビジョニングビューに表示する文字列を入力します。この値は、式ビルダには表示されません。

  3. 完了]をクリックします。

    クエリが作成され、編集用のプロパティページが開きます。

  4. [クエリエンティティ]を選択します。使用したいエンティティが表示されない場合は、[エンティティ]ノードでそのエンティティが定義されているか確認してください。

  5. [パラメータ]セクションで、クエリのパラメータを1つ以上定義します。パラメータを追加する

    1. [行の追加]をクリックします。

    2. パラメータの固有キーと表示ラベルを指定します。フォームでglobalQuery()メソッドを呼び出すときに、このキーを渡します。globalQuery()の詳細については、「globalQuery(fieldname, key, param)」を参照してください。

    3. 別のパラメータを追加する場合は、これらの手順を繰り返します。

  6. クエリをさらに絞り込む場合は、[クエリ条件]を追加します。

    1. [条件グループ化の追加]をクリックします([条件グループ化の追加]は、[クエリエンティティ]が選択されていないと有効になりません)。

    2. 左のドロップダウンリストで、属性を選択します。このドロップダウンリストの属性は、[クエリエンティティ]で選択されたエンティティの属性です。

    3. 中央のドロップダウンリストで、選択した属性に対して実行する比較演算子を選択します。

    4. 右のテキストボックスで、選択した属性と比較する値を入力します。[事前定義パラメータ]をクリックして[事前定義パラメータ]ダイアログボックスを起動すると、変数名を選択できます。

      2つ以上の属性または条件でフィルタする必要があるクエリで、条件を評価する順序を制御したい場合、複数の条件または条件グループを定義できます。条件グループ化では、使用する条件をそれぞれ指定し、指定した条件を論理演算子(and、or)で結合します。

  7. 複数の条件グループ化を指定するには、[条件グループ化の追加]をクリックし、各ドロップダウンリストボックスから選択します。

  8. 選択したエンティティに対してすでに定義されている内容よりもさらに検索を絞り込みたい場合は、クエリのLDAP検索プロパティを定義します。エンティティの検索ルートとは異なり、クエリの検索ルートでは事前定義パラメータの使用はサポートされません。詳細については、セクション 3.7.3, クエリのプロパティを参照してください。

  9. 保存]をクリックします。

  10. クエリを展開し、ユーザアプリケーションで使用できるようにします。