次の方法で共有


データを返すメソッド インスタンスに比較フィルターを追加する

最終更新日: 2010年4月16日

適用対象: SharePoint Server 2010

比較フィルターは、返されるインスタンスを、条件に一致するインスタンスに制限します。SQL では WHERE 句によってこれがサポートされます。通常、比較フィルターは、SpecificFinder メソッドまたは Finder メソッド インスタンスで定義します。

このトピックでは、StateFilter という比較フィルターを、Contact 外部コンテンツ タイプの Finder メソッド インスタンスに追加します。

前提条件

  • SharePoint Server を実行中のサーバーにインストールされた Microsoft SQL Server 2005 以降。

  • AdventureWorks 2008 データベースが、SharePoint Server を実行するサーバーにインストールされていること。

  • Contact 外部コンテンツ タイプが、AdventureWorks データベースに基づいて作成されていること。詳細については、「[方法] 外部コンテンツ タイプを作成する」を参照してください。

SharePoint Designer を使用して、フィルターをメソッド インスタンスに追加する

  1. Microsoft SharePoint Designer 2010 を開いて、次に外部コンテンツ タイプを含む SharePoint サイトを開きます。

  2. SharePoint Designer 2010 の左側のナビゲーションで、[外部コンテンツ タイプ] をクリックします。これにより、そのサイトのサービス アプリケーションの Business Data Connectivity (BDC) service メタデータ ストアに定義されているすべての外部コンテンツ タイプが表示されます。[Contact 外部] コンテンツ タイプを選択します。

  3. Contact の検索操作をクリックして、フィルターを追加します。これにより、パラメーター構成ウィザードが表示されます。

  4. [フィルター パラメーター] をクリックします。フィルター パラメーター ウィザードで、[新しいパラメーター] をクリックします。

  5. フィルター フィールドを [状態] として選択します。[フィルター パラメーター] をクリックします。

  6. [フィルター パラメーター] ダイアログ ボックスで、[新しいフィルター] をクリックし、新しいフィルターの名前を StateFilter として指定します。

  7. 次に、フィルターのタイプを [比較] として選択します。フィルター フィールドを [状態] として選択します。[OK] をクリックして、[フィルター パラメーター] ダイアログ ボックスを閉じます。

  8. フィルター パラメーターの既定値を「Washington」として入力します。[OK]、[保存] の順にクリックして、外部コンテンツ タイプを保存します。

これで、エンド ユーザーは、StateFilter に対して独自のカスタム フィルター値を入力し、フィルター処理されたインスタンスを外部リストなどに表示できます。

ヒントと警告

  • Microsoft Outlook または Microsoft SharePoint Workspace でオフラインでフィルター処理された外部リストを取得する場合、リスト内で現在利用可能なインスタンスのみがクライアントに展開されます。たとえば、New Jersey の顧客のみを表示するようにリストを制限している場合、[Outlook に接続] をクリックすると、New Jersey の顧客のみが Outlook に展開されます。

ベスト プラクティス

  • バックエンドから戻ってくるインスタンスを制限するように、SpecificFinder メソッドと Finder メソッドのユーザー フィルターを定義する必要があります。制限フィルターをお勧めします。

  • 入力パラメーターにシステム フィルターを定義します。戻り値パラメーターにユーザー フィルターを定義します。

  • フィルターの既定値を定義します。そうしない場合、バックエンドからインスタンスが戻されません。

  • 複数のインスタンスを返すメソッドで、制限フィルターまたはページ フィルターを定義します。