とあるStartupに勤めるエンジニアの技術ブログ

Salesforce、テスト関係の技術ブログなどを書く予定

Salesforceの通知を考える 2021年版(Salesforceフロー)

f:id:a-kura:20211130001146p:plain
Salesforceの通知を考える 2021年版(Salesforceフロー)

今年も技術系アドベントカレンダーの季節になりました。
12月1日からクリスマスの25日まで、毎日投稿されるアドベントカレンダーの記事を読んで楽しみながら過ごしていきましょう!

はじめに

Salesforceで通知する手段について、3年前に記事を書きました。Salesforce Platformもアップグレードしてきているので、2021年版を考えていきます。
teamspirit.hatenablog.com

2018年版では、下記の4つの通知方法についてメリット、デメリットをまとめました。

  1. メールアラート
  2. Chatter投稿
  3. レコードを作成
  4. Slack

ここ数年でSalesforceフローが急成長することによって機能が充足してきており、Salesforceフローでほぼ事足りるようになってきています。その流れを受けて今回はSalesforceフローを中心にお届けします。

通知方法

今回は、メール、Chatter投稿、レコードを追加、Slackの4つに加えて、カスタム通知について紹介します。

メール

まずは、メール。前回はワークフロールール以外にもプロセスビルダーでメールアラートを起動できることを紹介しました。

今回のおすすめはSalesforceフローです。

プロセスビルダーのときはメールアラートを別途設定して呼び出すようになっていましたが、SalesforceフローではFlow Builderで直接メールの送信内容などを設定できるようになっています。設定が別の画面に分かれていると理解しにくくなるので、メールアラートなしで設定できるのは良くなった点です。
テキストテンプレートを活用することでテキストを使い回すこともできるので、非常に便利になっています。

f:id:a-kura:20211121143856p:plain
アクション:メールを送信

Chatter投稿

次に、Chatter投稿。

今回のおすすめもSalesforceフローです。

メールと同様にテキストテンプレートでメッセージを作成できます。投稿先を設定する操作はプロセスビルダーのほうが親切です。
プロセスビルダーでは投稿先を検索して設定できますが、Flow Builderでは検索できません。設定しにくいところなので、今後の機能改善に期待しましょう。

f:id:a-kura:20211121145829p:plain
アクション:Chatterに投稿

レコードを作成

次は、レコードを作成する方法です。
ここでもSalesforceフローの機能の充足度が突出してきています。

なんとロールバック機能もサポートされました。
親子関係のレコードを揃えて作る処理を構築する際に、子レコード作成時にエラーが発生しても親レコードが作られてしまう問題がありました。ロールバック機能によって子レコードが作成失敗時に親レコードもロールバックして作成しなかったことにできるようになりました。この制御ができるようになると、ある程度複雑な処理も安心して構築できるようになります。

前回同様、ToDo、行動について見ていきます。
プロセスビルダーも問題ないですが、SalesforceフローでできることはSalesforceフローに寄せたほうがわかりやすいですね。

ToDo

ToDoは、いわゆるタスク管理ツールのタスクにあたります。
ToDoもSalesforceフローで作成できます。入力値が画面に表示されているので、何ができるか、は直感的にわかるようになっています。

f:id:a-kura:20211126224730p:plain
アクション:新規ToDo
行動

「行動」は開始日時、終了日時を登録でき、カレンダーで表示されます。
行動もSalesforceフローで作成できます。ToDo同様に入力値が画面に表示されています。

f:id:a-kura:20211126230536p:plain
アクション:新規行動

Slack

DigitalHQ:デジタル本社のコンセプトを発表して、デジタルコミュニケーションを中心に働く場所を再定義しようとしており、今後の動きが非常に気になるSlackです。
Salesforce.com社がSlack Technology社を買収したことで急速にSalesforceとSlackの統合が進んでいっています。

これまでは標準的な外部連携機能を活用してSlackに接続する必要がありましたが、現在はアプリケーションを追加でインストールすることで簡単に連携できるようになっています。

slack.com

手順に沿ってセットアップすると複雑な設定をしなくてもSalesforceとSlackを連携できるようになっています。SalesforceとSlackの連携を検討している方はぜひ試してみてください。
アプリケーションをインストールするとSalesforceフローのアクションに「Slack: Post Message」が追加されます。
簡単にSlackにメッセージを送信できるようになります。

f:id:a-kura:20211126234427p:plain
アクション:Slack: Post Message

Chatterの趨勢が気になるところです。

カスタム通知

最後に、カスタム通知です。この機能を利用すると右上のベルマークに通知を表示できるようになります。

2018年版ではまだカスタマイズできなかったので取り上げていませんが、非常に強力な通知方法です。多用しすぎるとSalesforceの通知機能が機能麻痺に陥ってしまうので用法用量には注意して利用しましょう。
カスタム通知についてはプロセスビルダー、Salesforceフローの両方で利用できます。どちらで設定しても問題ないのですが、今後はSalesforceフローのほうが強化されていくのでSalesforceフローを選択しておけばよいでしょう。

f:id:a-kura:20211127000022p:plain
アクション:カスタム通知を送信

まとめ

ここで紹介した通知の方法についてメリット、デメリットを独自判断でまとめておきます。書いてみて参考にならなさそうですが、ご参考まで。

通知方法 メリット デメリット
メール これまでと同様、メールによる通知でわかりやすい 通知を受け取る手段としてメールのみになる
Chatter投稿 Salesforce モバイルアプリで通知として受信できる タイムラインに通知のための投稿が表示されてしまう
ToDo 強制力のあるやり方で、本人が明示的に完了させることができる 余計なToDoが作成されてしまう
行動 日時を指定して知らせることができる 余計な行動が作成されてしまう
Slack Slackに通知を集約する運用ができる 設定の難易度が高い
カスタム通知 Salesforce モバイルアプリで通知として受信できる

おわりに

今回は、Salesforceフローを通じて、Salesforceにおける通知方法を考えてみました。皆さまはどういった通知を作成していますでしょうか?
通知を一つとっても実際の運用を考慮すると目的に応じて変わってきますので、いろいろな方の知見を伺いたいと思いました。

今回の記事を書くにあたってSalesforceフローを触ってみましたが、Salesforceフローの機能の拡充ぶりには驚きました。
とはいえ、Flow Builderは最低限設定できるための画面項目を用意している印象なので、何を設定すればよいかわかりにくい点もあります。
これまでは機能拡充を最優先にして、機能利便性は後回しになっている印象なので、今後の利便性向上に期待したいと思います。

この記事は、 note.com に投稿した記事の転載になります。
note.com