SharePointDesignerによるワークフローはメール投稿から起動しない
いろいろと試行錯誤していたら、表題の仕様に気がつきました。
SharePointの特定のリスト、例えばお知らせリスト等には「受信メール機能」があります。その名前の通り、メールで送信された内容が自動的にアイテムとして登録されるものです。
便利といえば便利なのですが、設定できるのが「タイトル」「本文」のみで、それ以外の列は全て既定値、というのがちょいと惜しいんですよねぇ。
本文中の [[列名]] で値を解釈してくれるとかして欲しいところです。
さておき、このメールによる投稿でワークフローを起動させようとしました。
SharePoint Designer でワークフローを作成し、起動オプションは[新規][変更]にします。理屈の上では新規登録ですので、ワークフローが動作するはず…。
あれ?起動しません。
試しに、VisualSutudio で開発したワークフローを適応してみたところ、こちらはきちんとメールによるアイテム投入時に動作しました。
※左がSDP、右がVS
む~、起動オプションは同じなのに、不思議です。
以下は完全に推測でしかありませんが、おそらく、これは「SharePoint Designer で作成したワークフローはシステムアカウントの場合自動起動しない」という仕様の影響ではないかと思われます。
メールで投入されたアイテムは、「作成者」はきちんとそのユーザになっていますが、途中でシステムを経由している訳です。そのため、実は投入はシステムアカウントで行われ、後から作成者の値を書き直しているのかもしれません。
VidualSutudio で作成したワークフローであれば、こうした制約がないため、きちんと動作します。
いまひとつ釈然としませんが、ひとつの制約として覚えておく必要はありそうです。
AGENT: Mozilla/5.0 (Windows; U; Windows NT 6.0; ja; rv:1.9.1.4) Gecko/20091016 Firefox/3.5.4 GTB5 (.NET CLR 3.5.30729)
SharePoint Designer 2007 で作ったワークフローは、あんなことやこんなことが出来ませんよね。
ま、2010に期待しましょう。
そういえば、2010では、あれがワークフローに対応するようです。
AGENT: Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 5.1; Trident/4.0; .NET CLR 1.1.4322; .NET CLR 2.0.50727; InfoPath.2; .NET CLR 3.0.04506.30; .NET CLR 3.0.4506.2152; .NET CLR 3.5.30729)
まあ第一世代の製品ですからねぇ…。
洗練されていないのはいたしかたないところかと^^;;
2010ならアクセス権の変更が出来る…というのは何処かで聞きました。
2010でSharePoint2007のワークフローも加工できるといいんですけどねぇ