BCS を使用して作成できるソリューションの種類

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

適用対象: SharePoint Server 2010

この記事の内容
シンプル ソリューション
中間宣言型のソリューション
高度なコードベースのソリューション

Microsoft Business Connectivity Services (BCS) を使用して、広範なソリューションを構築できます。その範囲は、ネイティブ機能に依存し、カスタマイズがほとんどないシンプル ソリューションから、SharePoint 2010 および Office 2010 のカスタマイズ機能を使用する中間ソリューション、さらに、複雑なシナリオを実現し、SharePoint 2010 および Office 2010 で提供される機能を拡張する充実したアプリケーションを可能にする高度なソリューションにまで及びます。高度なソリューションでは、Visual Studio を使用してコードを記述する必要があります。また、高度なソリューションは、完全なエンド ツー エンド ソリューションとして使用するか、中規模ソリューションに含めることのできる再利用可能なコード ベースのコンポーネントとして使用できます。

この開発方法を提供する Business Connectivity Services によって、ビジネス ユーザーは、ブラウザーと Office クライアントを使用して、外部データに対するさまざまなニーズに迅速に簡単に対処できます。ユーザーは、コードを記述しなくても、外部リストと外部データ列などの Business Connectivity Services 機能や、再利用可能な Business Connectivity Services コンポーネント (開発者が作成し、IT が Office クライアント アプリケーションと SharePoint サイト内で承認したコンポーネント) を使用して、複合ソリューションを組み立てることができます。このようなソリューションを使用すると、ビジネス ユーザー (およびそのチーム) は、オフラインまたはオンラインに関係なく、SharePoint データと同じように外部データを簡単に操作したり、Microsoft Office の充実した操作環境内で外部データを直接操作したりできます。

IT 担当者は、コードを必要としないこのようなユーザー ソリューションを管理し、サーバー インフラストラクチャ上のリソース消費に対するリソース調整の制御を定義できます。したがって、SharePoint を使用すると、事前定義した制限内でソリューションを維持できます。これにより、IT 担当者は、動作を洞察して、安定したプラットフォームを維持できます。

開発者は、再利用可能な Business Connectivity Services コンポーネントの作成に、より多くの時間を使用でき、充実した複雑なエンド ツー エンド ソリューションの構築に集中して取り組むことができます。

ソリューションの種類

説明

コードが必要

ソリューションを作成する役割

シンプル ソリューション

Business Connectivity Services、SharePoint 2010、および Office 2010 アプリケーションのネイティブ機能を利用します。

インフォメーション ワーカーが、外部リストや、SharePoint 内の外部データなど、SharePoint と Office のネイティブ機能を使用してシンプル ソリューションを組み立てます。

いいえ。ただし、経験豊富なユーザーまたは "パワー" ユーザー、および開発者が作成した再利用可能な Business Connectivity Services コンポーネントを使用できます。

インフォメーション ワーカー

中間宣言型のソリューション

SharePoint および Office アプリケーションが提供する、コードを必要としないツール、および Business Connectivity Services、SharePoint 2010、および Office 2010 の充実したカスタマイズ機能を使用して、より強力で、カスタマイズされたソリューションを作成します。

SharePoint および Office のネイティブ機能や、開発者が作成した再利用可能な Business Connectivity Services コンポーネントを使用して、複合ソリューションを組み立てて、カスタマイズします。

コードを記述しないで、Microsoft Outlook ソリューションを作成します。

いいえ。ただし、パワー ユーザーおよび開発者が作成した再利用可能な Business Connectivity Services コンポーネントを使用できます。

パワー ユーザーと開発者

高度なコードベースのソリューション

Microsoft Visual Studio 2010 を使用して、充実したコード ベースのソリューションを作成します。このソリューションでは、Visual Studio 2010 が提供する充実したプロジェクト テンプレートを使用して、Office アプリケーション アドインおよび BDC モデルも作成されます。

再利用可能なコンポーネント (外部コンテンツ タイプ、外部データ パーツ、Web パーツ、ワークフロー アクティビティ、コード アクション、ユーザー設定フィールド型など) を作成します。これらのコンポーネントを使用して、シンプル ソリューションおよび中間の複合ソリューションを組み立てることができます。

Office、SharePoint、および Business Connectivity Services オブジェクト モデルを使用して、エンド ツー エンドのソリューションを作成します。

はい

開発者

コードを記述しなくても作成できるソリューションが重要である理由として、以下の 2 つが挙げられます。

  • このような種類のソリューションを構築できるユーザー群が大幅に増加するため、開発者と IT 組織は、それらのソリューションの構築作業から解放され、他の問題の解決にそのリソースを集中できます。

  • セントラル IT では、これらのソリューションの実行可能な処理を制御できるため、管理の問題が軽減され、ソリューションをセントラル IT 対応アプリケーションに容易に "変換" できるようになります。セントラル IT 対応アプリケーションは、後で、より多くの対象ユーザーにロールアウトできます。この変換の容易さは、標準セットの機能とツールを使用して作成およびカスタマイズされるソリューションの結果として得られます。

高度カテゴリは完全にコードベースです。再利用可能なコンポーネントまたは完全なエンド ツー エンド ソリューションの構成と発行を行う環境として、Visual Studio を使用します。

これは、Business Connectivity Services を使用して構築できるソリューションの種類を示す図です。各ソリューションの詳細について、以下のセクションで説明します。

BCS ソリューションの種類

  • シンプル ソリューション

  • 中間宣言型のソリューション

  • 高度なコードベースのソリューション

シンプル ソリューション

SharePoint 2010 では、ビジネス データ Web パーツまたはグラフ Web パーツを使用して外部データを外部リストまたは Web パーツ ページに表示できます。SharePoint ユーザー インターフェイスを使用すると、この外部リストと Web パーツ ページを簡単にカスタマイズして、フィルター処理されたビューおよびカスタム ビューにデータを表示できます。

また、外部データ列を標準の SharePoint リストまたはドキュメント ライブラリに追加することもできます。その後、その列は、Microsoft Word 内のクイック パーツ (コンテンツ コントロールとも呼ばれる) として表示できます。

Microsoft SharePoint Server 2010 (エンタープライズ クライアント アクセス ライセンス付き) がある場合、Outlook 2010 に対して外部リストをオフラインにすると、ユーザーは、Outlook 内から外部データと対話できます。外部データは、通常の Outlook アイテムと同じ書式 (連絡先、予定、仕事、投稿) で表示されます。ユーザーは、通常の Outlook アイテムと同じように外部データと対話できます。また、ユーザーは、Outlook 内で外部データを含むフォルダー用のカスタムビューを作成し、異なる方法でデータを表示することもできます。この種類のソリューションは、ネイティブの Business Connectivity ServicesOutlook アドイン下で実行されます。このアドインは、Office 2010 と共にインストールされ、Outlook が開始されるときに読み込まれます。

Microsoft SharePoint Server 2010 (エンタープライズ クライアント アクセス ライセンス付き) がある場合、同様に、Microsoft SharePoint Workspace 2010 に対して外部リストをオフラインにすると、ユーザーは、SharePoint Workspace 内から外部データと対話できます。Business Connectivity Services では、この種類のシンプル ソリューションを拡張するための、拡張可能なプログラミング モデルが提供されません。ただし、Microsoft InfoPath フォームを外部リストと関連付けることができます。これにより、フォームをカスタマイズし、そのフォームをサーバーと SharePoint Workspace のクライアントに表示できます。

Outlook および SharePoint Workspace では、ユーザーは、自動化された方法 (既定では 3 時間おき) またはアクションを明示的にクリックする方法で、データを外部システムと直接的に同期するように選択できます。また、外部リストに対する更新 (外部リストの構造、フォーム、ビューに対する更新など) があるかどうかを確認することもできます。ユーザーはプロファイル ページを作成することもできます。このプロファイル ページは、ユーザーが SharePoint サイト内で外部データを検索するときに検索結果に表示されます。

ツール サポート

パワー ユーザーまたは開発者が外部コンテンツ タイプを作成し、IT がそれをカタログに追加すると、ビジネス ユーザーはブラウザーまたは SharePoint Designer を使用して外部リストを作成できます。ビジネス ユーザーは、Server リボン内のボタンをクリックして、外部リストを Outlook または SharePoint Workspace に接続します。Web パーツ ページと外部データ列は、ブラウザーまたは SharePoint Designer を使用して作成できます。

まとめ

Business Connectivity Services を使用すると、コードを記述しないシンプル ソリューションを作成できます。いくつかの例を以下に示します。

中間宣言型のソリューション

中間宣言型のソリューションには、高度なシンプル ソリューションと宣言型の Outlook ソリューションの 2 つの種類があります。

高度なシンプル ソリューション

中間ソリューションの最も一般的な種類は、SharePoint Designer や InfoPath フォーム デザイナーなどのツールとブラウザーを使用して、コードを記述しないで機能を追加するようにカスタマイズされたシンプル ソリューションです。追加機能として、InfoPath フォーム、SharePoint ワークフロー、SharePoint Web パーツ ページがあります。

InfoPath フォーム

外観の変更や、宣言型ルールまたはビジネス ロジックの追加、分離コードの追加などを行うことで、外部データを表示する InfoPath フォームをカスタマイズできます。分離コードの追加では、フォームを、管理者が展開したフォームとしてサーバーに発行する必要があります。この機能の詳細、チュートリアル、この機能の使用例については、MSDN で InfoPath 2010 のドキュメントを参照してください。

SharePoint ワークフロー

以下の方法を使用して、SharePoint Designer で、SharePoint ワークフローの機能の作成や追加を行うこともできます。

  • 外部リストのデータを読み書きするように SharePoint リストのアクティビティを構成する。

  • 外部リストまたは Business Data Connectivity (BDC) service ランタイム オブジェクト モデルと対話する Visual Studio に組み込まれた (および SharePoint に発行された) カスタム ワークフロー アクティビティを再利用する。

Web パーツ ページとプロファイルページ

ネイティブの Web パーツ (外部データ アイテム、リスト、関連リスト、アクション、アイテム ビルダー、およびフィルターや、グラフ Web パーツなど) を使用する Web パーツ ページを作成できます。また、オプションで、パーツ間でデータを送信するためのパーツ間接続も構成できます。パーツの外観をカスタマイズするには、Web パーツのツール ウィンドウで各パーツの XSLT を編集します。任意の Web パーツ ページをカスタマイズするように、プロファイル ページもカスタマイズできます。

Outlook フォーム

外観を変更して、外部データを表示する Outlook フォームとフォーム領域をカスタマイズできます。フォームのカスタマイズの詳細や、チュートリアルとサンプルについては、MSDN で Outlook 2010 のドキュメントを参照してください。

Word ドキュメント テンプレート

SharePoint リストまたはドキュメント ライブラリの外部データ列を使用する Word ドキュメント テンプレートを作成できます。このドキュメント テンプレートをアップロードすると、リストまたはライブラリのユーザーはドキュメントを簡単に作成できます。

宣言型の Outlook ソリューション

もう 1 つの種類の中間カスタマイズは、Outlook 2010 内の外部データを伴います。一般的なシナリオとして、ユーザーが取引先担当者インスペクターを開いているときに、関連する注文情報を、カスタム作業ウィンドウに表示することがあります。

まず、基本的な Outlook 要素として、外部データのフォルダーのビューをカスタマイズできます。これを行うには、Outlook 内でフォルダーを開き、標準のコマンドを使用して、新しいビューを構築し、保存します。Business Connectivity Services には、カスタマイズしたビューを SharePoint に保存して外部リストのサブフォルダーに配置するためのコマンドが用意されています。これにより、今後、ユーザーは、リストを Outlook に接続することで、カスタマイズしたビューを使用できます。

他の中間カスタマイズよりも多少複雑な Outlook カスタマイズがあります。このカスタマイズでは、XML ファイル (BDC モデル、ソリューション マニフェスト (Oir.config)、サブスクリプション、リボン、レイアウトのファイルなど) を作成し、BCS Solution Packaging Tool (英語) を使用して ClickOnce パッケージを作成する必要があります。このツールは MSDN コード ギャラリーで入手できます。これにより、ユーザーは、ClickOnce パッケージをインストールすることで、ソリューションを Outlook に展開できます。このようなソリューションでは、カスタム作業ウィンドウを定義し、作業ウィンドウでホストされる外部データ パーツ (SharePoint またはコードベースのカスタム パーツと共に提供される外部データ パーツ) 経由で外部データをユーザーに表示できます。また、リボン ファイルを定義したり、コードの起動または URL をポイントするブラウザーの開始を行うカスタム アクション (リボンまたは外部データ パーツに表示される) を定義したりできます。最後に、まず、Business Connectivity Services が提供する自動生成フォームを使用して、その自動生成フォームを編集した後に、ファイルを保存またはエクスポートすることで、Outlook フォームをカスタマイズできます。これらのカスタマイズでは、XML ファイルに定義された要素を実行時に表示する、Business Connectivity Services の充実したクライアント ランタイム (Business Connectivity ServicesOutlook アドインを含む) が使用されます。

ツール サポート

中間ソリューションの構築には、さまざまなツールを使用できます。これらのツールには、InfoPath Designer (フォーム用)、SharePoint Designer (ワークフロー用)、ブラウザー (SharePoint Web パーツ ページ用)、Outlook (カスタマイズされたフォームおよびビュー用) が含まれます。

Outlook の宣言型ソリューションで必要な XML を作成するには、任意の XML エディターを使用できます。Visual Studio は、この XML ファイルを作成するときに役立つ場合のある IntelliSense を提供できます。この SDK には、作業の開始に使用できるサンプルが含まれています。MSDN コード ギャラリーで入手できる BCS Solution Packaging Tool (英語) を使用すると、Outlook の宣言型ソリューション用の ClickOnce パッケージを簡単に作成できます。 

まとめ

コードを記述せずに、シンプル ソリューションを拡張することで中間ソリューションを作成できます。いくつかの例を、以下に示します。

宣言型の Outlook ソリューションには、以下の機能とカスタマイズを含めることができます。

高度なコードベースのソリューション

高度なコードベースのソリューションでは、再利用可能な以下の Business Connectivity Services コンポーネントの作成が必要になる場合があります。

高度なコードベースのソリューションでは、パブリック Business Connectivity Services オブジェクト モデルを使用する完全なエンド ツー エンド ソリューションの作成が必要になる場合もあります。

Visual Studio などのツールで作成した、コードベースでエンド ツー エンドの .NET Framework ソリューションでは、パブリック BCS オブジェクト モデルのあらゆる要素を使用できるため、ユーザーは、このソリューションを使用して外部データと対話できます。BDC オブジェクト モデルを使用して、SharePoint、Office 2010 アプリケーション (Microsoft Excel など)、またはカスタム アプリケーション内のデータを表示することで、外部データを BDC サービスに登録できます。このオブジェクト モデルは、Microsoft SharePoint Foundation 2010、SharePoint Server 2010、または Office 2010 と共にインストールされます。接続中は、外部データを外部システムから直接取得できます。また、BCS の高レベルのクライアント キャッシュが既に使用可能な場合 (通常は、SharePoint Workspace または Outlook に対してリストをオフラインにするか、データのみのソリューションを使用する) は、そのキャッシュから外部データをローカルに取得することもできます。この種類のソリューションを使用して、Business Connectivity Services を、Excel や PowerPoint などの組み込みサポートがない Office アプリケーションに拡張できます。

コードベースでエンド ツー エンドのソリューションでは、開発者がすべてのユーザー インターフェイス、パッケージ化、展開を管理します。データを Office アプリケーションに統合するためにシンプル ソリューションおよび中間ソリューションで使用される BCS Client Runtime は、この種類のソリューションでは利用できません。

ツール サポート

コードベースのソリューションは、Visual Studio 2010 などのツールで開発します。BDC プロジェクトの種類を使用すると, .NET Connectivity Assembly を容易に作成できます。アプリケーション固有の Office アドイン プロジェクト テンプレートを使用すると、Office アドインをすばやく作成できます。

関連項目

概念

Business Connectivity Services: サンプル XML とコード例

Business Connectivity Services: 方法説明とチュートリアル