2011-01-11

Force.com : 行動を作成/更新したとき、Chatter で任命先(所有者)のユーザにメッセージを送りたい

 
行動で任命先(所有者)以外のユーザが行動を作成/更新したときに、Chatter で任命先(所有者)のユーザにメッセージを送りたい。



... なんて、まったく思っていない。
副産物の記念に。



◆ トリガー

trigger t on Event (after insert, after update) {
    List<FeedPost> list = new FeedPost[0];
    for (Event e : Trigger.new) {
        if (e.getSObjectType().getDescribe().isFeedEnabled() && UserInfo.getUserId() != e.OwnerId) {
            FeedPost p = new FeedPost();
            p.type = 'LinkPost';
            p.ParentId = e.OwnerId;
            p.LinkUrl = '/' + e.id;
            p.Title = (e.Subject == '') ? 'no-title' : e.Subject;
            p.Body = '下記の 行動 を' + ((Trigger.isInsert) ? '作成した.' : '更新した.');
            list.add(post);
        }
    }
    if (list.size() > 0) {
        insert list;
    }
}
  • Schema.DescribeSObjectResult#isFeedEnabled()
    • Chatter が有効か判断する(?)
    • API version 19.0 以上より実装



◇ 確認環境

  • Salesforce - Developer Edition - API バージョン 20.0



◇ 参考

 

0 件のコメント:

コメントを投稿