標準リスト定義をアップグレードする
Windows SharePoint Services 3.0 のリスト定義は、サイト定義からより容易にアクセスできるようにフィーチャーに移動されました。このため、サイト定義内でカスタマイズする予定がないリストを再定義する必要がなくなりました。
標準リスト定義をカスタマイズしていなかった場合は、Windows SharePoint Services 2.0 の標準リスト定義をサイト定義から削除し、Windows SharePoint Services 3.0 の標準のチーム グループ作業機能への参照に置き換えます。
サイト定義から標準リスト定義を削除するには
次のリストの種類について、Onet.xml 内の <ListTemplate> タグを削除します。
custlist
gridlist
doclib
imglib
voting
discuss
favorite
announce
contacts
events
tasks
xmlform
issue
これらの Windows SharePoint Services 2.0 のリスト定義のサポート リスト ディレクトリを削除します。つまり、Windows SharePoint Services 3.0 のサイト定義では、Windows SharePoint Services 2.0 の ANNOUNCE、CONTACTS、CUSTLIST、DISCUSS、DOCLIB、EVENTS、FAVORITE、GRIDLIST、IMGLIB、ISSUE、TASKS、VOTING、および XMLFORM フォルダを \LISTS から削除できます。
Onet.xml ファイル内の各 <Configuration> タグで、次のようにチームのグループ作業フィーチャーへの参照を追加します。
<Configuration ...> <WebFeatures> <!-- TeamCollab Feature --> <Feature ID="00BFEA71-4EA5-48D4-A4AD-7EA5C011ABE5" /> </WebFeatures> </Configuration>
特定のリスト定義、たとえば、ドキュメント ライブラリ定義 (DOCLIB) をカスタマイズしていた場合は、個別のアプローチを使用する必要があります。前述の手順に従って、カスタマイズしていないすべてのリスト (この例では、DOCLIB 以外のすべてのリスト) を置き換えます。<Configuration> タグでチームのグループ作業フィーチャーへの参照を追加するのではなく、カスタマイズしていないリスト定義を含むフィーチャーへの特定の参照を追加します。
以下の表に、リスト定義のフィーチャー フォルダ名とフィーチャー ID を示します。
フォルダ |
ID |
---|---|
AnnouncementsList |
00BFEA71-D1CE-42de-9C63-A44004CE0104 |
ContactsList |
00BFEA71-7E6D-4186-9BA8-C047AC750105 |
CustomList |
00BFEA71-DE22-43B2-A848-C05709900100 |
DataSourceLibrary |
00BFEA71-F381-423D-B9D1-DA7A54C50110 |
DiscussionsList |
00BFEA71-6A49-43FA-B535-D15C05500108 |
DocumentLibrary |
00BFEA71-E717-4E80-AA17-D0C71B360101 |
EventsList |
00BFEA71-EC85-4903-972D-EBE475780106 |
GanttTasksList |
00BFEA71-513D-4CA0-96C2-6A47775C0119 |
GridList |
00BFEA71-3A1D-41D3-A0EE-651D11570120 |
IssuesList |
00BFEA71-5932-4F9C-AD71-1557E5751100 |
LinksList |
00BFEA71-2062-426C-90BF-714C59600103 |
NoCodeWorkflowLibrary |
00BFEA71-F600-43F6-A895-40C0DE7B0117 |
PictureLibrary |
00BFEA71-52D4-45B3-B544-B1C71B620109 |
SurveysList |
00BFEA71-EB8A-40B1-80C7-506BE7590102 |
TasksList |
00BFEA71-A83E-497E-9BA0-7A5C597D0107 |
WebPageLibrary |
00BFEA71-C796-4402-9F2F-0EB9A6E71B18 |
WorkflowProcessLibrary |
00BFEA71-2D77-4A75-9FCA-76516689E21A |
WorkflowHistoryList |
00BFEA71-4EA5-48D4-A4AD-305CF7030140 |
XmlFormLibrary |
00BFEA71-1E1D-4562-B56A-F05371BB0115 |
Windows SharePoint Services 2.0 のサイト定義でドキュメント ライブラリ (DOCLIB) のリスト定義だけをカスタマイズしていた場合は、Onet.xml ファイルの <Configuration> タグに、このリスト定義の参照を含めないでください。ドキュメント ライブラリ定義を除くすべてのフィーチャーについて、サイト コレクションまたは Web サイトのレベルを適用範囲とするフィーチャーの参照を追加し、このリスト定義にカスタマイズが保持されるようにします。
新規作成フォーム、コンテンツ タイプ、および共有フィールドを追加する
カスタマイズした Windows SharePoint Services 2.0 のリスト定義にもう少し変更を加えて、Windows SharePoint Services 3.0 で動作するようにする方法を考えてみます。
SharePoint のすべてのフォームおよびリスト ビュー ページでは、標準化された ASPX ページを使用するようになりました。ページごとに AllItems.aspx、EditForm.aspx、DisplayForm.aspx、NewForm.aspx などのファイルがあるのではなく、各ページは既定で標準の ASPX ファイルを共有します。このような標準化されたフォーム ページを使用するには、Windows SharePoint Services 2.0 のリスト定義のすべての <Form> タグで SetupPath="pages\form.aspx" を指定し、フォームが表示されるページを含むビューで SetupPath="pages\viewpage.aspx" を指定します。特定のリストのページをカスタマイズしていた場合は、そのページを引き続き使用できます。ただし、前に示した、Windows SharePoint Services 3.0 で使用するための .ASPX ページのアップグレードに関するガイドラインに従う必要があります。
リスト フォームでは、Collaborative Application Markup Language (CAML) ではなく、ASP.NET のユーザー コントロール ベースのテンプレートを使用するようになりました。CAML のフォーム定義は不要になったため、削除できます。リスト定義のカスタム テンプレートを使用する場合は、Schema.xml ファイルの <Form> タグで Template="TEMPLATENAME" を指定します。カスタム フォーム テンプレートの詳細については、「カスタム フォーム テンプレートを作成する」を参照してください。
カスタマイズしたリスト定義を、コンテンツ タイプおよび共有フィールド定義を使用するように適応させることを検討します。そのためには、独立したサイト コレクションを適用範囲とするフィーチャーで、新しいコンテンツ タイプと共有フィールドを定義します。リスト定義をアップグレードするには、<ContentTypes> タグを使用して、定義から作成されたリストに実装するコンテンツ タイプを宣言し、リストで使用する必要がある共有フィールドを識別する GUID を指定して <Field> タグに注釈を付けます。ただし、コンテンツ タイプを使用する場合でも、リスト定義では、リスト フィーチャーの Schema.xml ファイル内ですべてのフィールドを宣言する必要があります。