アドイン スコープの外部コンテンツ タイプ (SharePoint)

SharePoint のアドイン レベルでインストールまたは範囲設定され、外部データ ソースを使用してデータ豊富な SharePoint アドイン を作成できる外部コンテンツ タイプについて説明します。

SharePoint の、アドインを対象範囲とする外部コンテンツ タイプの概要

SharePoint 2010 では、外部コンテンツ タイプをファーム レベルでのみインストールして使用できます。 ファーム レベルでインストールするには、たとえ単純なアプリケーションでもアクセス権のために管理者が関与する必要があり、これが開発者にとって問題になることが少なくありません。

SharePoint では、アプリケーションは基本的にアドインと呼ばれるより自律的なユニットに分離されます。アドインには、実行に必要なすべてのリソースが含まれています。 この手法により、実行中のアプリケーションを他のアプリケーションから隔離できるようになります。 このアーキテクチャには次のような利点があります。

  • SharePoint の新しいアプリケーション モデルに沿ったアドインを作成できます。

  • テナント管理者の関与なしに SAP、Netflix、独自仕様、およびその他の種類のデータからの外部データにアクセスするアドインを作成できます。

  • 外部アプリケーションへのアクセスは Business Connectivity Services (BCS) によって管理され、他の SharePoint アプリケーションから使用できる統一された一貫性のあるインターフェイスが提供されます。

アドインを対象範囲とする外部コンテンツ タイプによって、アプリ内から外部データにアクセスできるようになります。

アドインを対象範囲とする外部コンテンツ タイプを扱うための前提条件

アドイン レベルで範囲設定された外部コンテンツ タイプを開発するための要件は次のとおりです。

  • Visual Studio 2012

  • Office Developer Tools for Visual Studio 2012

  • SharePoint

SharePoint 開発環境のセットアップについては、「SharePoint の一般的な開発環境を設定する」を参照してください。

アドインを対象範囲とする外部コンテンツ タイプの基本概念

アドインを対象範囲とする外部コンテンツ タイプを扱う際に知っておく必要があるいくつかの基本概念を表 1 に示します。

表 1. アドインを対象範囲とする外部コンテンツ タイプを理解するための基本概念

記事 説明
SharePoint の外部コンテンツ タイプ
BCS 外部コンテンツ タイプを作成する方法を説明します。
SharePoint アドイン
エンドユーザー向けの小型で使いやすいソリューションであるアドインを作成できる、SharePoint の新しいアドイン モデルについて説明します。
SharePoint ホスト型の SharePoint アドインの作成を始める
Office Developer Tools for Visual Studio 2012 を使用して基本的な SharePoint ホスト型アドインを作成する方法を説明します。

アドインを対象範囲とする外部コンテンツ タイプでできること

アドインを対象範囲とする外部コンテンツ タイプを追加する主な目的は、個別のアドインから外部データにアクセスできるようにすることです。 これにより、次のようなことが可能になります。

  • 外部コンテンツ タイプへのアクセスを特定のアプリに制限する。

  • アプリ内に外部コンテンツ タイプを展開する。

アドインを対象範囲とする外部コンテンツ タイプの作成

ファイル ベースのメタデータ カタログの概念は SharePoint 2010 で導入されました。 これによって、外部コンテンツ タイプの定義に必要な XML が含まれるファイルを指定できます。 このファイルは WSP パッケージ内で展開でき、対象範囲となっているアプリケーションにのみ関係します。 このメタデータ ファイルを使用することにより、外部コンテンツ タイプをアドイン レベルに制限できます。

SharePoint では SPListDataSource が変更されて、アプリケーションの範囲を示すプロパティが追加されています。

このクラスは、 SPList と外部リストを関連付けることができます。 関連付けられた SPList を使用して、エンティティ フィールドとデータを取得します。 SPListDataSource のインスタンスを HasExternalDataSource プロパティから取得します。 HasExternalDataSource が null ではない場合、 SPList オブジェクトのデータは SharePoint 外にあります。

アドインを対象範囲とする外部コンテンツ タイプを追加するときは、このプロパティを Add-in に設定します。

MetadataCatalogFileName プロパティを使用して、外部コンテンツ タイプの定義を含む BDC モデル ファイルを定義します。 このプロパティは宣言的に定義することもプログラムによって定義することもできますが、SharePoint ユーザー インターフェイス (UI) で定義することはできません。

次の例は、MetadataCatalogFileName プロパティを宣言的に設定する方法を示しています。


<DataSource>
  <Property Name="Entity" Value="Customer" />
  <Property Name="EntityNamespace" Value="SAP" />
  <Property Name="LobSystemInstanceName" Value="SAPClient1" />
  <Property Name="SpecificFinder" Value="ReadCustomer" />
  <Property Name=" MetadataCatalogFileName" Value="BDCMetadata.bdcm" />
</DataSource>

注:

サイト管理者は App-Scoped-ECT (アプリを対象範囲とする外部コンテンツ タイプ) を使用するアドインをインストールできますが、アプリに BCS 接続を使用する権限を付与できるのは SiteCollection 管理者のみです。

アドインを対象範囲とする外部コンテンツ タイプを WSP ファイルのカスタム機能で展開する

WSP ファイルに BDC モデルを含めて展開できます。 次の例は、アプリに BDC モデルを含める方法を示しています。


<Elements xmlns="http://schemas.microsoft.com/sharepoint/">
  <BdcModel Path="BDCMetadata.bdcm">
  </BdcModel>
</Elements>

重要

各アドインに含めることができる BDC モデル ファイルは 1 つだけです。 この例ではファイル名が BDCMetadata.bdcm になっていますが、BDC モデル ファイルの Path 属性のファイル名と一致していれば、モデル ファイルは実際にはどのような名前でもかまいません。

注:

アドインを対象範囲とする外部コンテンツ タイプに使用できるのは Open Data Protocol (OData) 接続のみです。

外部システムにセキュリティ資格情報を設定する

セキュリティ保護されている外部システムのデータにアクセスするため、適切な資格情報を使用して BDC モデルを設定する必要があります。

次の例は、アプリの Elements.xml ファイルを変更することによって、アドインを対象範囲とする外部コンテンツ タイプの外部システムにセキュリティ資格情報を設定する方法を示しています。


<Elements xmlns="http://schemas.microsoft.com/sharepoint/">
  <BdcModel Path="BDCMetadata.bdcm">
    <LobSystem Name="SAP">
       <LobSystemInstance Name="SAPInst" RequireCredentials="true" CredentialsDescription="Credentials to connect to SAP"/>
    </LobSystem>
    <LobSystem Name="SQL">
       <LobSystemInstance Name="App Database" DataSource="SQL-Azure" RequireCredentials="true" />
    </LobSystem>
  </BdcModel>
</Elements>

このセクションの内容

関連項目