InfoPath SharePoint リスト/ライブラリデータのクエリ – 完全一致 –
今日はちょっと便利な InfoPath の使い方として、SharePoint リスト/ライブラリ内のデータを検索し、一覧表示するフォームの作成方法をご紹介します。
1. InfoPath で、検索対象のリスト/ライブラリへの受信データ接続を作成します。
・ [データ接続] タブの [外部データの取り込み] – [SharePoint リスト] をクリックし、
データ接続ウィザードで、次のように設定
SharePoint サイトの場所 | リスト/ライブラリがあるサイト URL |
リストまたはライブラリの選択 | 対象のリスト/ライブラリを選択 |
フィールドの選択 | InfoPath フォーム内にクエリ結果として表示したいフィールド (列) を選択 |
データ接続の名前 |
任意 (既定はリスト/ライブラリ名となる) |
フォームを開くとき自動的にデータを取得する | チェックを外す |
2. フォームを次のようにデザインします。
・ テキストボックス (フィールド名:keyword)
・ ボタン
・ 繰り返しテーブル
[SharePoint リスト名] セカンダリ データソースの [dataFields]/[d:SharePointListItem_RW] 繰り返しグループ
をドラッグアンドドロップして配置
3. ボタンの動作規則を次のように設定
テキストボックスに入力した値を利用し、顧客分類でフィルターした結果を表示されるように設定します。
[動作] フィールドの値を設定する |
[フィールド] [SharePoint リスト名] セカンダリ データソースの [queryFields]/[q:SharePointListItem_RW]/[クエリに利用する列] を選択 |
[値] メインデータソース内のkeyword フィールドを指定 |
[動作] データ接続を利用してクエリを送信する |
[SharePoint リスト名] データ接続を指定 |
以上でフォームが完成です。テキストボックスにキーワードを入力し、ボタンをクリックすると、フィルターされた結果が表示されます。
InfoPath Forms Services が利用できる場合、このフォームをブラウザー発行し、サイトのトップページ等に InfoPath フォーム Web パーツを使って表示するとこんな感じ↓に利用できます。
奥田理恵