2008年6月

2008年6月30日 (月)

SharePoint サイトで外部スクリプトを参照する方法については、先ごろ MSDN フォーラムにも投稿がありましたし、時々セミナーの受講者の方にも質問されるので、一度このブログにもまとめておこうと思います。

主に次の2つの方法があります。

  • SharePoint:ScriptLink サーバーコントロールを使用する
  • Script 要素を使用する

どちらを使用してもよいように、作成した外部スクリプトは SharePoint サーバー上の以下の場所に配置するとよいです。

  • SharePoint ハイブ\TEMPLATE\LAYOUTS\1041フォルダ内にカスタムスクリプトを格納するためのサブフォルダを用意し格納。
    ※SharePointハイブは通常は次のディレクトリです。"c:\Program Files\Common Files\Microsoft Shared\web server extensions\12

このLAYOUTSフォルダはプロパティ(Web共有タブ)を参照するとわかりますが、エイリアスが設定されていてどこのSharePointサイトのURLからでも、URLの後に "/_layouts/"と指定することで参照できるように既定で設定されています。

以上を踏まえ、外部ファイルの参照方法の例を具体的にご紹介しておきます。

Photo_2

  1. SharePoint ハイブ\TEMPLATE\LAYOUTS\1041 フォルダ内に "MyScripts"フォルダを作成します
  2. 1で作成したフォルダに外部スクリプトファイル "CustomJScripts.js" を格納します。このスクリプトには次のような簡単な関数を用意しておきます。
    function SayHello(){
        return "Hello SharePoint!";
    }

あとは参照をするだけです。たとえば、コンテンツ エディタ Web パーツを任意のページに配置し以下のように記述します。

SharePoint:ScriptLink  サーバーコントロールを使用する場合

このコントロールを使用する場合は、既定でSharePoint ハイブ\TEMPLATE\LAYOUTS\1041 フォルダを参照してくれますので、あとはそこからの相対パスを Name属性に指定するだけです。

<SharePoint:ScriptLink Name="MyScripts/CustomJScripts.js" runat="server" />
<h1>外部スクリプトを "script"要素から呼び出す</h1>
<input type="text" id="MyInputBox2">
<input type="button" value="ご挨拶" OnClick="document.aspnetForm.MyInputBox2.value=SayHello()">
<input type="reset" value="クリア">

Script 要素を使用する場合

こちらは _layouts の相対パスを指定しています。

<script src="/_layouts/1041/MyScripts/CustomJScripts.js" type="text/javascript"></script><h1>外部スクリプトを "script"要素から呼び出す</h1>
<input type="text" id="MyInputBox" ></input>
<input type="button" value="ご挨拶" OnClick="document.aspnetForm.MyInputBox.value=SayHello()"></input>
<input type="reset" value="クリア"></input>

あとはこれらのパターンを応用して、マスタページや任意のページなどに配置すればよいわけです。

2008年6月10日 (火)

TechEd 2008 North America Developer Days も無事に参加が終わり、1日延滞して本日昼過ぎに無事に帰国しました。

さて、前回の続きです。

VSeWSS 1.2

VSeWSS 1.2 のリリースについてもう少し書いておきます。

VSeWSS のこれまでのリリースを整理しておきます

  • VSeWSS 1.0 → VS 2005 対応 (日本語版はなく、またVBにも対応していなかった)
  • VSeWSS 1.1→ VS 2005 対応 (日本語版およびVBにも対応、そのた機能強化もなされている)
  • VSeWSS 1.2 → 内容としては VSeWSS 1.1 だが、VS 2008 対応となる(日本語版もリリース予定)

前回も書きましたがあくまでも VSeWSS 1.1 の VS 2008 対応版となっていますので、これまでと同様にリモートデバッグやXP, Vista サポートはないそうです。

VSeWSS についての関連情報は次の通りです。日本語だとMS松崎さんなどが書かれていらっしゃいますのでご参考まで。

まだ現時点では英語版ですが日本語環境でも利用できます。英語版での利用方法は過去の投稿のコメント欄で展開しているので、ディレクトリを「%ProgramFiles%\Microsoft Visual Studio 9.0\」に読み変えていただくと参考になるかと思います。

VSeWSS 1.1 User Guide

また、最近まで気づかなかったのですがVSeWSS 1.1 についてはユーザーガイド(英語のみ)がでていますね。現在、VSeWSSについての唯一のまとまった資料であり、詳細情報源です。(2008/5/12 付でダウンロードできるようになっていたようです)

SharePoint 開発者向け学習用サイト

英語ではありますが、SharePoint の開発者向け学習用サイトが 公開されました。http://www.MSSharePointDeveloper.com

Silverlight で素敵な感じに出来上がっています。一部まだ Coming Soon となっていますが、独学に有用な WebCast や Virtual Lab 、ホワイトペーパーなどがきれいにまとまっています。

TechEd 2008  Developer Days の全体としての所感

今回は SharePoint に特化したカンファレンスではありませんでしたが、ところどころの要所にSharePointがちりばめられていたのが印象的です。たとえば、WPF (Windows Presentation Foundation) のパートナーソリューションでは医療研究機関でのソリューションをデモしていましたが、心臓の3Dグラフィックスとの連携基盤に SharePoint が用いられていました。http://windowsclient.net/community/showcasedetails.aspx?p=4267

それ以外にも SharePoint 上でどう WPF を実装するかという内容のセッションが比較的多かったです。

データストレージとして SharePoint を用いて、直観的な操作は WPF で提供するといったソリューションは今後のSharePoint の利用展開として非常に興味深いものでした。

2008年6月 5日 (木)

2008.6.3 -7 の期間 アメリカのオーランドにて Microsoft TechEd 2008 North America の Developer 向けカンファレンスが開催されており、現地に参加しています。今年は IT Pro 向けとでは開催日が分かれており、来週の6.10-13 までがIT Pro向けとなっています(こちらは参加しません)。

で、SharePoint がらみで目玉情報はないかなぁと物色していましたが、ありました。6.5 付で VSeWSS v.1.2 (英語版) がリリースされました!

VSeWSS のダウンロード : www.microsoft.com/downloads/details.aspx?FamilyID=7bf65b28-06e2-4e87-9bad-086e32185e68&displaylang

これで、ワークフロー開発からWeb パーツ開発なども VS 2008 で一本化できます。とはいえ、VSeWSS v.1.2 はあくまでも機能的には VSeWSS v.1.1 の VS2008 対応となっているだけでそのほかの変更点はありません。

たとえば、64ビットサポートやリモートデバッグなどはサポートされていないようです。

さて、これから 3日目のセッションが開始されるので、まずはこの辺で失礼します。VSeWSS のもう少し詳しいところはまた後ほどアップします。