LoginSignup
1
1

More than 5 years have passed since last update.

Salesforce Lightning Platform でプロセスを自動化して、かしゆかの誕生日と同じ人を知らせる

Last updated at Posted at 2018-12-22

Low-Code/No-Code Advent Calendar 2018 23日目、本日はかしゆかの誕生日です、ほんとにおめでとうございます! めっちゃアウェイのところへやってきましたが、かしゆかの誕生日を祝う気持ちはどこでも一緒です、どうぞよろしくお願いいたします。

さて、Salesforce はご存知でしょうか。Sales CloudやService Cloudなど、CRMやコールセンターなどの SaaSとして提供されているアプリケーションサービスです。Salesforceには、Lightning Platform(旧名 Force.com)というaPaaS(Application Platform as a Services)を包含していて、標準的な機能のカスタマイズや拡張はもちろん、一から新しいアプリケーションを開発することもできます。また、その開発されたアプリケーションはAppExchange(旧名:AppStore - Appleさんに名前上げたあれ)で公開し、販売することができます。

ビジネス向けaPaaSの仕組みを持つLightning Platformですので、各処理にドリブンして様々な機能をキックすることができます。今回はその中からプロセスビルダーを使って、取引先の担当者の誕生日がかしゆかと同じかどうかを確認して、同じだったらそれを通知する仕組みを「ノーコード」で実現してみます。

ここで実現できることは、Salesforce開発環境で利用できます。サインアップすれば、誰でも無償でお使いいただけますので、試してみてください。

プロセスの自動化

ビジネスアプリケーションでありがちなのは、何かの値を変更したら、それを受け取って、別のデータを更新したり、通知したり、別の機能を呼び出したりして、ビジネスプロセスを自動化していくことでしょう。

Salesforceでは、プロセスを自動化する機能として、「プロセスビルダー」と「ワークフロー」があります。人手を介するような「承認」が必要なプロセスには、「承認プロセス」もあります。使い方によって、これらを選別して利用します。

プロセスビルダーとワークフロー、どちらを使えばいいの?というときもありますが、プロセスビルダーでは次のようなときに利用します。

  • 任意のオブジェクト種別のレコードを作成する。
  • レコードとその親のみでなく、あらゆる関連レコードを更新する。
  • クイックアクションを使用して、レコードの作成、レコードの更新、または活動の記録を行う。
  • プロセスを別のプロセスから呼び出す。
  • フローを起動する。このアクションはワークフローでスケジュールできません。
  • メールを送信する。
  • Chatter への投稿
  • 承認を受けるレコードを送信する。

ワークフローでは、項目自動更新、外部システムへのアウトバウンドメッセージを行う場合に利用します。

プロセスビルダーを使ってみよう

Salesforceの設定画面から、プロセスビルダーを呼び出してみます。「クイック検索」のボックスに「プロセス」とか「ビルダー」「プロセスビルダー」打ち込むとアクセスがカンタンです。「プロセスの自動化」という中に「プロセスビルダー」があります。これをクリックします。

Screen Shot 2018-12-22 at 13.52.47.png

すでに作成されているものがあれば、このようにプロセスの一覧が表示されます。結構謎な感じですが、「Trailhead」とか Salesforce社のハンズオンをやってると、似たような感じにきっとなります。「高額交際費API」とかめっちゃ気になりますね。

そのあたりのことは一旦忘れて、右上の「新規」ボタンをクリックして、プロセスを実際に作っていくこととしましょう。

Screen Shot 2018-12-22 at 13.53.31.png

プロセスを作成する

プロセスの名前などを決めます。「プロセス名」や「説明」は好きにわかりやすいように付けます。API参照名は、Salesforce独自のApex言語や他の機能から呼び出すときの参照値となりますので、これもわかりやすくしておきましょう。残念ながら、この名前の付け方は意味不明です。

プロセスを開始するタイミングは、このプロセスを始動するきっかけはなんですか、を指定します。今は、「レコード(保管されているデータのこと)の変更」とプラットフォームイベントで呼び出される場合、それから他のプロセスビルダーで作ったプロセスから呼び出される場合になります。

Screen Shot 2018-12-22 at 13.54.16.png

IT関係者だと見覚えのよくある、フローチャート的な何かがでてきます。直感でひらめいたとおりの動き方をします。まずは、きっかけとなるオブジェクト(データベースでいうテーブル、データを保管する箱の最小単位)を指定します。

Screen Shot 2018-12-22 at 13.54.25.png

Salesforceでは、顧客担当者情報を入れるオブジェクトを「取引先責任者」という名前にしています。オブジェクトからそれを選択し、「レコードを作成または編集したとき」にしておきます。すべてのデータを最初からすべて入れるわけではなく、あとで更新する可能性がありますので、今回はこちらのほうが使い勝手が良いでしょう。

Screen Shot 2018-12-22 at 13.54.47.png

保存すると、また元のフローチャートの画面に戻ってきますから、分岐部分の「+ 条件を追加」を押してみます。

条件名は好きにして良いですが、まぁこんな感じですかね。取引先責任者には「誕生日」という項目がありますので、その項目が「1988/12/23」だったらということにします。

Screen Shot 2018-12-22 at 14.30.36.png

なお、この項目名、真面目に入れる場合にはAPI参照値を入れないといけないのですが、クリックして選択できます。なので、この項目の中から検索したり、階層を選んだりして「誕生日」を選択すればよいだけです。便利(当然か)。

Screen Shot 2018-12-22 at 13.55.52.png

最後に「ルール適用時のアクション」を入れます。先程の分岐条件にマッチしたときに、何をするのかを定義する部分ですね。まずは、どのようなアクションを行うのかを選択します。次の9つから選択できます。今回はChatterに投稿してほしいので、「Chatter に投稿」を選択しました。

Screen Shot 2018-12-22 at 14.33.41.png

個々のアクションで入力すべきものは変わりますが、Chatterに投稿する場合には、「どこへ投稿するのか」と「メッセージ」を決めます。アクション名は分かりやすく、好きなものをどうぞ。ここで、「メッセージ」のところに「先込み項目」というものがあります。該当のレコードと関連する項目を指定すると、その内容で変更をしてくれるようになります。今回は、顧客担当者の名前を入れておきたいので、「姓」を選択しました。その結果が「{![Contact].LastName}になっています。Contact(取引先責任者)内のLastName(姓)を意味してるの、雰囲気でもわかりますね。あとは、メッセージを入れてきます。気持ち的には素晴らしいというか、羨ましいです。

Screen Shot 2018-12-22 at 13.58.41.png

ここまでの内容すべて「保存」したあとに、右上の「有効化」ボタンをクリックします。すると、このプロセスが実行状態になります。

Screen Shot 2018-12-22 at 13.58.56.png

で、実際に取引先責任者を作って、「誕生日」を「1988/12/23」にして保存すると...。

Screen Shot 2018-12-22 at 14.00.26.png

該当の取引先責任者のChatterへ、このように投稿がなされる...ということになります。やった、かんたんにできましたね?

まとめ

このように、Salesforceでは、プロセスを自動化するためにプロセスビルダーなどの機能を標準で持っています。これらは、ノーコードで開発を行うことができますので、開発者でなくとも、かんたんにビジネスアプリケーションを開発することができる仕組みとなっています。これは、お便利ですね。

1
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
1