2007年12月

2007年12月 7日 (金)

以前、コンテンツクエリWebパーツを使って、複数サイトから「お知らせ」 などのアイテムを参照できると書きましたが、表示されるタイトルをクリックするとページが見つからないというエラーが表示される場合があります。これは、ルートのサイトコレクションを作成していない場合に起こります。

ルートのサイトコレクションとは、[http://サーバー名] として作成するサイトコレクションのことです。これを作らず、"http://moss2007/sites/Top" などで作成していると問題が発生します。結局、リンクをクリックしたときに必ず "http://サーバー名 /_layouts/CopyUtil.aspx" を呼び出してしまうためのようで解決策としては、利用しなくても "http://サーバー名" のサイトコレクションを作成しておくということのようです。

サポート技術情報もあがっています。

KB928303 : SharePoint サーバー 2007 に コンテンツで クエリ Web メニューを追加した Web ページを表示しようとすると、エラー メッセージ:「 404 のファイルが見付かりません」でした

ルートのサイトコレクションがない場合には、その他にもいろいろとトラブルが発生しているようです。どんなものがあるかは、折をみてまとめてみたいと思います。

2007年12月 6日 (木)

SharePoint 上で複数のサイトにある「お知らせ」などの情報を一か所でまとめて表示したいという要望をよく聞きます。

方法は大きく3つあります。

  1. コンテンツ クエリ Web パーツを利用する
  2. SharePoint Designer 2007 のデータビュー(Webパーツ)を利用する
  3. カスタムWebパーツを独自に開発する

一番手軽な方法は"コンテンツ クエリ Web パーツ" を使用する方法です。コンテンツ クエリ Web パーツは複数サイトにある情報を集めて表示する機能があります。ただ、コンテンツクエリ Web パーツを使用する場合以下の点を考慮しなくてはいけません。

  • 同一サイトコレクション内でかつWebパーツを追加したサイト以下のサイトの情報のみを取得できる(別のサイトコレクションにあるものは参照できない)
  • 既定では取得できる列(プロパティ)が限られている

特に注意したいのが、取得できる列です。既定で取得できる列は "タイトル列" です。その他にも、 "説明" や "お勧めのイメージ" 列などが取得できますが、これはアーティクルページで作成された発行ページなどに限定されます。

ですから、「お知らせ」リストのアイテム情報を取得しようとすると、タイトルのみしか表示されません。 もし更新日時などの任意の列を表示したい場合は、コンテンツクエリ Web パーツをカスタマイズする必要があります。カスタマイズについては、以下の サイトが参考になります。(カスタマイズはあまり簡単ではありません。最低でもXML,XSTLの知識は必要ですのでご注意ください)

次に利用しやすいのがSharePoint Designer 2007 のデータビューを利用する方法です。この方法もコンテンツクエリ Web パーツ同様、同一サイトコレクション内のサブサイトの情報を取得できます。SharePoint Designer 2007 を使用して、新規にコンテンツページを作成しデータビューを追加して、生成されるXSLTを編集することになります。コンテンツクエリ Web パーツのカスタマイズに比べて、Designer を使用するので任意の列を比較的簡単に取得でき見た目(XSLT) の変更も容易です。この手法については、有償ですが技術研修カリキュラムを作成していますので、ご利用いただくとよいかもしれません。ちょっと宣伝させていただくとこのコースは、SharePoint Designer 2007 でのサイトのカスタマイズ方法をメインで扱っているものです。

最後に難易度が最も高く、かつ一番柔軟性があるのが Web パーツ開発です。Web パーツを独自開発すればいかようにでもできますから、もっと使い勝手よく複数サイトから情報が取得できます。ちなみに、Web パーツを開発する場合は、Visual Studio 2005 extensions for Windows SharePoint Services を使用すると効率よく開発できます。

仕事では、SharePoint Server 2007 に関する研修カリキュラムを作成したり、研修実施を担当しています。そんな日々を送る中で、研修の時間内にはなかなか話せなかった細かいことや、お客様から頂いたご質問をヒントに調査したことなどを書いていければと思っています。SharePoint って日本語の情報がない、とよくいわれるので、きっと参考にしていただけるのではと思っています。

といいつつ、技術的な話ばかりも堅苦しいので、時々は趣味に関する話なんかも書くかもしれません。

残念ながら文才がないので拙筆ですが、ご容赦くださいませ。