インテグレーションユースケースを検証する
学習の目的
この単元を完了すると、次のことができるようになります。
- 2 つの Salesforce 組織と Slack の間で新規または更新済みの取引先の同期を維持する場合の課題を説明する。
- MuleSoft Composer を使用して 2 つの Salesforce 組織と Slack の間で新規または更新済みのを同期する方法を説明する。
- フローの作成準備をする。
始める前に
このモジュールは「MuleSoft Composer のインストールと設定」に基づいて作成されているため、先に進む前にこちらのモジュールを必ず受講してください。先行のモジュールと同様に、インテグレーションフローを作成して実行するためには「MuleSoft Composer ユーザー」権限セットが必要です。
このモジュールでは、受講者が MuleSoft Composer ユーザーとして認証されていると想定しています。ただし、MuleSoft Composer ユーザーでなくても問題ありません。このまま読み進み、手順をどのように実行するかを学習してください。MuleSoft Composer は Trailhead Playground で使用できないため、記載の手順を Trailhead Playground で実行しないでください。
この単元では、アウトドアやレクリエーション用品の小売企業である Northern Trail Outfitters (NTO) のシステム管理者としての職務に取り組みます。まず、NTO が直面しているインテグレーションの課題を検証し、MuleSoft Composer のインテグレーションソリューションについて理解します。次に、フローの作成の準備方法を学習します。
インテグレーションの課題
では、NTO が直面しているインテグレーションの課題を見てみましょう。NTO は最近、登山用品の小売業者 Great Divide (GD) を買収しました。NTO と GD は長年 Salesforce を使用してきました。GD は個別の部門として運営され、その取引先は固有の GD 組織に保存されます。GD と NTO の両方の営業チームは、GD 組織で新規作成または更新された取引先を NTO 組織と同期することで、両方の組織で可視性を維持したいと考えています。
現在、GD と NTO の営業チームはこうしたタスクを手作業で行っています。新規または更新済みの取引先が発生するたびに、GD の営業担当は GD 組織で 関連する詳細を使用して取引先を作成または更新してから、NTO のチームにメールで取引先の情報を送信します。次に、NTO の営業担当が NTO 組織に対応する取引先が存在するかどうかを判断します。
- 取引先が存在しなければ、営業担当は NTO 組織で関連する詳細を使用して新しい取引先を作成します。
- 取引先が存在する場合は、NTO 組織で関連する詳細を使用して取引先を更新します。
このプロセスは時間がかかり、ミスが起こりやすいため、チームは自動化したいと考えています。
インテグレーションソリューション
ソリューションとして、GD 組織と NTO 組織、そして Slack の間のインテグレーションを自動化して、ニアリアルタイムのインテグレーションを実現する必要があります。そのために、MuleSoft Composer を使用して、GD 組織と NTO 組織、そして Slack の間で新規または更新済みの取引先を自動的に同期するインテグレーションフローを作成します。具体的には、このフローで次のタスクを実行します。
- GD 組織で新規作成または更新された取引先を見つける。
- 対応する取引先が NTO 組織に存在するかどうかを判断する。
- NTO 組織に取引先が存在しない場合:
- 関連付けられた GD 取引先 ID などの関連情報を使用して取引先を作成する。
- 関連付けられた NTO 取引先 ID を使用して GD 取引先を更新する。
- 関連する取引先の詳細を事前定義された Slack チャンネルにメッセージとして投稿する。
- NTO 組織に取引先が存在する場合:
- 関連付けられた GD 取引先 ID などの関連情報を使用して取引先を更新する。
- 関連付けられた NTO 取引先 ID を使用して GD 取引先を更新する。
- 関連する取引先の詳細を事前定義された Slack チャンネルにメッセージとして投稿する。
MuleSoft Composer を使用するソリューションを実装するには、次のフロー作成タスクを実行します。
- フローの作成準備をする。
- フローを設計してテストする。
- フローをアクティブ化する。
- フローを監視してトラブルシューティングする。
上記のタスクの実行方法については、このモジュールの後続の単元で説明します。
フローの作成準備をする
では始めましょう。
まず、フローで使用するシステムやアセットに関する必要な情報をすべて収集します。次の表は、フローの接続先となるシステムと、各システムに必要な情報を示しています。
システム | 必要な情報 |
---|---|
NTO の Sales Cloud |
|
GD の Sales Cloud |
|
Slack |
|
フローの設計時とテスト時には、テスト環境に上記のシステムとデータを使用することがベストプラクティスです。テストの終了後、本番用のシステムとデータを使用してフローを実行します。
次に、Salesforce 環境と Slack 環境の前提条件について説明します。
Salesforce 環境の前提条件
前提条件として、Salesforce と同期するフローを作成して実行する Sandbox 組織と本番組織が必要です。
メモ: フローを設計してテストする Sandbox 組織がない場合は、開発者組織を使用できます。
次の手順に従って無料の開発者組織にサインアップします。
- https://developer.salesforce.com/signup にアクセスします。
- 連絡先情報を入力します。
- 一意のユーザー名を入力します。
- [サインアップ] をクリックして、お知らせメールが届くまで待ちます。
- お知らせメールのリンクをクリックして、パスワードを設定します。
次に、MuleSoft Composer を使用して Salesforce への接続を作成するときに、MuleSoft Composer に権限を付与するプロンプトが表示されます。Sandbox 組織と本番組織の両方の Salesforce アカウントで、MuleSoft Composer に次の権限を付与する準備ができていることを確認します。
- ID URL サービスにアクセスする。
- API を使用してユーザーデータを管理する。
- いつでも要求を実行する。
次に GD 組織と NTO 組織の間で取引先を相互参照するために、GD 組織の取引先オブジェクトにカスタム項目 [NTO Account ID (NTO 取引先 ID)] が作成されていることを確認します。GD 組織の NTO 取引先 ID の例を次に示します。
また、NTO 組織の取引先オブジェクトにカスタム項目 [GD Account ID (GD 取引先 ID)] が作成されていることを確認します。NTO 組織の GD 取引先 ID の例を次に示します。
カスタム項目の作成方法については、「Salesforce オブジェクトのカスタマイズ」を参照してください。
次に、GD Sandbox 組織と GD 本番組織で 2 人の異なるユーザーを使用することが重要です。これらの組織は、インテグレーションのソース組織です。
- 1 人のユーザーは GD 組織接続のみで使用して、関連付けられているフローの作成ステップまたは更新ステップを実行します。以後、このユーザーをコンポーザーユーザーと呼びます。
- 他方のユーザーは、実行時に GD 組織でデータを作成または更新するエンドユーザーです。
このように業務を分離しておき、最初の 2 つのタスクを実行することで、フローの実行時に無限ループに陥ってしまう問題を回避します。この問題は、フローで GD ユーザーを使用して GD 組織で更新ステップを実行し、同じユーザーを使用して実行時に GD 組織でデータを更新すると発生します。
Salesforce でユーザーを作成する方法は、「ユーザー管理」を参照してください。
無限ループに陥ってしまう問題を回避するための 2 番目のタスクは、GD 組織で実行時に更新を実行するユーザーがコンポーザーユーザーではないことをフローで確認することです。そのためには、コンポーザーユーザーの Salesforce ID を特定して、フローで関連するステップを設定します。次の手順を実行します。
- コンポーザーユーザーのユーザー名とパスワードを使用して GD 組織にログインします。
- アプリケーションランチャーに
人
と入力し、[人] を選択します。 - コンポーザーユーザーの名前をクリックします。
- URL を確認します。ユーザーの Salesforce ID は URL の末尾のほうに表示されています。この例では 0055A000008sCOOQA2 です。後ほど、フローでこの Salesforce ID を使用します。
Slack 環境の前提条件
新規作成または更新された取引先に関する通知を事前定義された Slack チャンネルに投稿するには、Slack のワークスペースとチャンネルが必要です。次の手順に従って、Slack ワークスペースとチャンネルを作成します。
- slack.com にアクセスし、[Slack を起動する] をクリックして、[ワークスペースを新規作成する] を選択します。
- メールアドレスを入力し、[続行する] をクリックします。
- Slack から届いたメールで確認コードを調べ、Slack に入力します。
- 会社名に
NTO
と入力し、[次へ] をクリックします。ワークスペースは NTO です。 - チームが取り組むプロジェクトとして
account-automation
と入力し、[次へ] をクリックします。チャネルは account-automation です。 - メンバーを追加するように促されたら、[この手順をスキップする] をクリックし、[ステップをスキップ] をクリックしてから、[はじめよう] をクリックして直接ワークスペースとチャンネルに移動します。
MuleSoft Composer を使用して Slack への接続を作成すると、MuleSoft Composer に権限を付与するよう求められます。MuleSoft Composer に Slack ワークスペースに対する次の権限を付与する準備をします。
- チャンネルと会話に関するコンテンツと情報を表示する。
- ワークスペースに関するコンテンツと情報を表示する。
- チャンネルと会話でアクションを実行する。
MuleSoft Composer でフローを作成する準備の最初の手順を実行しました。次の単元では、フローを設計する方法を学習します。