2008年2月29日 (金)

通知メールのカスタマイズ (1.13種類のテンプレート)

前回は通知機能について紹介しましたが、今回は通知されるメールのカスタマイズについて取り上げたいと思います。これも少し長くなりそうなので、連続ものにします。

通知メールはHTML形式で定型文書となっているため、「少し文面を変更したい」とか「テキスト形式でないと社内では利用できない」といったカスタマイズが必要となることが少なくないようです。

通知メールのカスタマイズは可能です。しかし、複雑なXMLデータを編集することになるためカスタマイズはそれほど容易ではないということだけ念頭に入れておいてください。なお、カスタマイズの詳細は「Microsoft SharePoint Developer Documentation Team Blog (英語)」に記載されています。早い話、これを熟読すればよいのですが、今のところ英語の情報のみですし難解な部分もあるため、私自身の実験結果を踏まえ、この中からかいつまんで説明をしてみたいと思います。

通知メールの形式は "alerttemplates.xml" に定義されています。このファイルは次の場所にあります。

  • ShaerPoint ハイブ\TEMPLATES\XML
    ※SharePoint ハイブは通常、"c:\Program Files\Common Files\Microsoft Shared\web server extensions\12

次の図は、alerttemplates.xml を IE で開いてみてたところです(<AlterTemplate>タグごとに折りたたみ表示にしています)。
Alerttemplate1

このファイルの中には次の13種類の通知のテンプレートが定義されています。

テンプレート名説明
SPAlertTemplateType.GenericList 最初に定義されている通知メールのテンプレートです。他のイベントの種類に一致するものがない場合に使用されます。
SPAlertTemplateType.DocumentLibrary ドキュメントライブラリ内での変更を通知
SPAlertTemplateType.Survey アンケート内の変更を通知
SPAlertTemplateType.Links リンク内の変更を通知
SPAlertTemplateType.Announcements お知らせ内の変更を通知
SPAlertTemplateType.Contacts 連絡先内の変更を通知
SPAlertTemplateType.Events イベント内の変更を通知
SPAlertTemplateType.Tasks タスク内の変更を通知
SPAlertTemplateType.DiscussionBoard ディスカッション掲示板内の変更を通知
SPAlertTemplateType.PictureLibrary 画像ライブラリ内の変更を通知
SPAlertTemplateType.XMLForm フォームライブラリ内の変更を通知
SPAlertTemplateType.DataConnectionLibrary データ接続ライブラリ内の変更を通知
SPAlertTemplateType.AssigedtoNotification タスクリストや案件管理リストへ割り当てられた通知

こうした通知テンプレートは構成データベースに格納され、Webアプリケーション単位で使用できるようになっています。

このうち、ワークフローなどでも利用されるため利用頻度の多いであろう「タスクリスト」を例にとり、カスタマイズ方法を説明していこうと思います。

次回は、テンプレートの基本フォーマットを確認します。

トラックバック

このページのトラックバックURL: http://bb.lekumo.jp/t/trackback/718613/34255760

通知メールのカスタマイズ (1.13種類のテンプレート)を参照しているブログ:

コメント