お知らせへのリンクをメールで送信する

SharePoint 2007 のワークフロー機能をエージェント的に活用して、リストに機能追加してみよう、という試みです。
今回は、お知らせリストからメールを送信する仕組みを作ってみます。


要件は以下のとおりです

お知らせ登録時に、そのお知らせへのリンクをメールで送信することができる。
もちろん、送信しないこともできる。
メールの送付先は、既定のパターンから登録時に選択する。
かつ、登録者が任意で個人・グループを送付先として追加指定できる。


まず、送付先のパターンを登録しておく、マスタリストを作成します。

カスタムリスト [送付先マスタ] を作成。
宛先を登録する [送付先] 列を作成。[ユーザまたはグループ]です。
このとき、[複数選択できるようにする] オプションはオフにしおておくこと。

お知らせリストを作成します。

フラグになる[メール送信]列を作成。選択肢で、[保存時にリンクをメール送信する] [保存時にリンクをメール送信しない] の二択。[保存時にリンクをメール送信しない] をデフォルトにしておきます。

宛先になる [送付グループ] 列を作成。種類は [参照] で、上で作成した [送付先マスタ] の [タイトル] を参照します。

ユーザが宛先を追加する [追加送信先]列を作成。[ユーザまたはグループ]で、ここでも [複数選択できるようにする] オプションはオフにしおておくこと。

以上で準備は完了です。
次に、お知らせリストにワークフローを作成します。

新規作成時に自動的開始
変更時に自動的に開始

1st STEP
もし [メール送信] が [保存時に送信しない] の場合、ワークフローを停止。
もし [メール送信] が [保存時に送信する] および [送付グループが空] および [追加送信先が空] の場合、[アイテム登録者にアラートメールを送信]し、次に [ワークフローを停止]
もし [メール送信] が [保存時に送信する] の場合、[指定宛先にメールを送信する※]

◆宛先
現在のアイテムを作成したユーザ→ワークフロー参照…


◆CC
ワークフロー参照…


◆本文
[本文への参照の追加] でリンクを挿入
http://(お知らせリストのURLを書く)/DispForm.aspx?ID=(ID参照)

2nd STEP
[メール送信] を [保存時に送信しない] に設定する

3rd STEP
ワークフローを停止する。

3番目ステップは要らないかもいれませんが、念のため。

最後に、マスタ側の [送付先] 列と、お知らせの[追加送信先] 列を複数選択可能に設定変更します。
これは、複数選択を可能にすると、その列を何故か [ワークフロー参照] できくなるという SharePoint Designer の障害を回避するためです。

これで完成です。
結構、上手く出来ていると思いますが、どうでしょうね。

書きかけアイテムをユーザには非表示にする
SharePoint Designer によるワークフロー製作で困った点


Author

中村 和彦(シンプレッソ・コンサルティング株式会社 代表)が「ユーザ視点の SharePoint 情報」を発信します。元大手製造業 SharePoint 運用担当。現SharePoint コンサルタント。お仕事のお問い合わせはこちらまでお願いします。当ブログにおける発信内容は個人に帰属し所属組織の公式発信/見解ではありません。
FB : 中村 和彦
blog: Be・Better!
MS MVP SharePoint 2009/10-2011/9
MS MVP Office 365 2012/10-2014/9