前回は通知機能について紹介しましたが、今回は通知されるメールのカスタマイズについて取り上げたいと思います。これも少し長くなりそうなので、連続ものにします。
通知メールは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>タグごとに折りたたみ表示にしています)。
このファイルの中には次の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アプリケーション単位で使用できるようになっています。
このうち、ワークフローなどでも利用されるため利用頻度の多いであろう「タスクリスト」を例にとり、カスタマイズ方法を説明していこうと思います。
次回は、テンプレートの基本フォーマットを確認します。
コメント