フローを作成する
学習の目的
この単元を完了すると、次のことができるようになります。
- フロー作成の準備をする。
- フローを作成する。
- トリガーをフローに追加する。
- アクションステップをフローに追加する。
- フローを終了する。
始める前に
このモジュールは、「MuleSoft Composer の基本」および「MuleSoft Composer のインストールと設定」モジュールに基づいて作成されています。この 2 つのモジュールでは、MuleSoft Composer の機能、フローコンポーネント、フロー作成タスクのほか、フローを作成、実行するための「MuleSoft Composer ユーザー」権限セットの付与に必要な手順について学習します。必ず修了してから先に進んでください。
このモジュールでは、受講者が MuleSoft Composer ユーザーとして認証されていると想定しています。ただし、MuleSoft Composer ユーザーでなくても問題ありません。このまま読み進んで、どのように手順を実行するのかを学習してください。MuleSoft Composer は Trailhead Playground で使用できないため、記載の手順を Trailhead Playground で実行しないでください。
この単元では、アウトドアおよびレクリエーション用品小売業者の Northern Trail Outfitters (NTO) のシステム管理者としての職務に取り組みます。このモジュールでは、NTO が直面している主なインテグレーション課題を調査し、MuleSoft Composer を使用して解決する方法を学びます。
フロー作成の準備をする
準備はよいですか?
まず、これからフローで使用するシステムとアセットについて必要な情報をすべて集めます。
たとえば、Salesforce、NetSuite、Slack 間のデータ同期を自動化したいと考えているとします。次の表は、フローで接続する必要のあるシステムと、そのシステムで要求される情報を示しています。
システム |
必要な情報 |
---|---|
Salesforce |
|
NetSuite |
|
Slack |
|
フローの設計とテストを行うときは、テスト環境のシステムとデータを使用するのがベストプラクティスです。テストが完了した後に、本番用のシステムとデータを使用してフローを実行します。
次に、MuleSoft Composer を使用してシステムへの接続を作成するときには、通常、システムに対する権限を MuleSoft Composer に付与する必要があります。システムのユーザーアカウントで MuleSoft Composer に適切な権限を付与する準備が整っていることを確認してください。
たとえば、Salesforce への接続を作成する場合、ユーザーアカウントで MuleSoft Composer に次の権限を付与する必要があります。
- ID URL サービスにアクセスする。
- API を使用してユーザーデータを管理する。
- いつでも要求を実行する。
最後に、システム間でデータを相互参照するには、関連するカスタム項目をシステム内に作成する必要があります。たとえば、Salesforce 内の商品項目と NetSuite 内の在庫項目を相互参照するとします。この場合、Salesforce 内の商品 ID を取得するカスタム項目を NetSuite に、NetSuite 内の在庫項目の内部 ID を取得するカスタム項目を Salesforce に作成します。
Salesforce でカスタム項目を作成する方法についての詳細は、「Salesforce オブジェクトのカスタマイズ」を参照してください。他のシステムでカスタム項目を作成する方法については、そのシステムのドキュメントを参照してください。
フローを作成する
フローで使用するシステムとアセットについての必要情報をすべて収集したら、フローを作成できます。
次の手順に従ってフローを作成します。
- ユーザー名とパスワードを使用して NTO 組織にログインします。
- アプリケーションランチャーに
Composer
と入力して [MuleSoft Composer] を選択します。 -
[Create New Flow (新規フローを作成)] をクリックします。
- デフォルトのフロー名の横にある鉛筆アイコンをクリックします。
- フローに名前を付け、[Save (保存)] をクリックしてフロー名を保存します
-
[Save (保存)] をクリックしてフローを保存します。
トリガーをフローに追加する
すべてのフローは、次のトリガーのいずれかで開始する必要があります。
- システムイベントトリガー
- スケジューラートリガー
トリガーとしてシステムイベントを使用する
フローのトリガーとして、システム内でのレコードの作成、更新などのイベントを使用できます。これを実行するには、MuleSoft Composer に備わっているコネクタの 1 つを使用します。MuleSoft Composer では、継続的に、さまざまなシステムへのコネクタを新規で追加しています。
では、NTO Sandbox 組織の取引先の作成や更新をトリガーとしてフローに追加する方法を見てみましょう。
次の手順に従って、Salesforce イベントをトリガーとしてフローに追加します。
- [What Should Start This Flow (このフローを開始する要素)] ダイアログボックスで、使用可能なコネクタのリストから [Salesforce] を選択します。
-
[Add new Salesforce connection (新しい Salesforce 接続を追加)] をクリックし、NTO Sandbox 組織への接続を作成します。
メモ: 初めての Salesforce 接続の場合、このオプションは表示されません。次のステップに進んでください。 - この接続に
NTO sandbox org
(NTO Sandbox 組織) と名前を付けます。 -
[This is a sandbox organization (これは Sandbox 組織です)] チェックボックスをオンにして、[Create (作成)] をクリックします。
- NTO の Sandbox 組織のユーザー名とパスワードを入力して、[Log In to Sandbox (Sandbox にログイン)] をクリックします。
-
[Allow (許可)] をクリックして、MuleSoft Composer に「ID URL サービスにアクセス」、「API を使用してユーザーデータを管理」、「いつでも要求を実行」権限を付与します。MuleSoft Composer で接続が自動的にテストされます。エラーメッセージが表示されていない場合は接続が確立し、フローの最初のステップ (トリガー) が表示されます。
- [Choose an event that starts this flow (このフローを開始するイベントを選択)] 項目内をクリックして [New or updated record (新規または更新されたレコード)] を選択します。
- [Object Type (オブジェクト種別)] 項目に
Account
(取引先) と入力します。
- [Sample Output (サンプル出力)] セクションにある展開アイコンをクリックします。NTO 組織内の取引先の項目と関連サンプル値が表示されます。これで、正しいシステムに接続されていることを確認でき、フローの今後のステップで使用できるデータの構造がわかります。
メモ: MuleSoft Composer でトリガーを作成、設定すると、トリガーの名前が自動生成されます。この名前がビジネスニーズに合わない場合は、名前の横にある鉛筆アイコンをクリックし、新しい名前を付けて [Save (保存)] をクリックします。
オブジェクトの項目を選択する
デフォルトでは、トリガーのオブジェクトに関連付けられているすべての項目がフローに返されます。オブジェクトの特定項目に絞り込む必要がある場合は、条件を適用できます。
次の手順に従ってオブジェクトの項目を選択します。
-
[項目を選択] をクリックします。
- 検索項目で、検索する項目のキーワードを入力し、表示された関連項目を選択し、[Add (追加)] をクリックします。
- X アイコンをクリックして検索項目のキーワードをクリアします。
- 選択する残りの項目にステップ 2 と 3 を繰り返します。
- 目的の項目の選択がすべて終了したら、[Add (追加)] をクリックします。
トリガーとしてスケジューラーを使用する
ビジネス要件で必要な場合、スケジューラーを使用して定期的にフローを実行できます。スケジューラーを使用すれば、15 分、30 分、45 分ごとなど、最大 30 日の間隔で、フローをトリガーできます。
次の手順に従って、スケジューラーをトリガーとしてフローに追加します。
- [What Should Start This Flow (このフローを開始する要素)] ダイアログボックスで、下にスクロールして [Scheduler (スケジューラー)] をクリックします。
- 任意の時間間隔を選択します。
実行時には、指定された時間間隔でスケジューラーが実行を開始します。たとえば、フローが 1 時間ごとに実行するようスケジュールし、月曜日の午前 8 時に有効化するとします。フローの実行は月曜日の午前 9 時に開始し、1 時間ごとに実行されます。非アクティブ化されるまで、フローの実行は継続します。
アクションステップをフローに追加する
「MuleSoft Composer の基本」で説明したように、フローはシステムとデータを統合するために組み合わせて設定する一連のステップです。トリガーをフローに追加したら、次はアクションステップをフローに追加します。
たとえば、Salesforce の取引先を Slack 通知に同期するフローを作成するとします。このフローは次のタスクを実行します。
- NTO 組織で新規作成または更新された取引先を見つける。
- Slack の sales-leads チャンネルに通知を送信する。
この単元の前半で、NTO 組織で取引先が作成または更新されたときに開始するフローを作成する方法を学習しました。
次は、Slack へ通知を送信するアクションステップをこのフローに追加しましょう。ここでは、NTO のワークスペースと sales-leads チャンネルが Slack に作成されていると想定しています。このタスクを実行する方法についての詳細は、「MuleSoft Composer を使用した Slack オートメーション」を参照してください。
通知を sales-leads チャンネルに送信するアクションステップを作成、設定する手順は次のとおりです。
- プラスアイコンをクリックしてトリガーの後にステップを追加します。
- [Slack] をクリックします。
- 接続に
NTO Slack
と名前を付け、[Create (作成)] をクリックします。 - Slack ワークスペース選択リストから [NTO] を選択します。
- [Allow (許可)] をクリックし、MuleSoft Composer に NTO ワークスペースへの権限を付与します。MuleSoft Platform アプリケーションが自動的に NTO Slack ワークスペースに追加され、フローの 2 つ目のステップが表示されます。
- [Action (アクション)] 項目をクリックし、[Post message to channel (チャンネルにメッセージを投稿する)] を選択します。
- [Channel Name (チャンネル名)] 項目で検索アイコンをクリックし、[Pick from List (リストから選択)] を選択し、[sales-leads] を選択します。
- [Message (メッセージ)] 項目をクリックし、[Custom Expression (カスタム式)] をクリックします。カスタム式エディターーが表示されます。
- [Data (データ)] タブをクリックし、フローのステップ 1 の [Account Name (取引先名)] をクリックします。[Account Name (取引先名)] が [Message (メッセージ)] 項目に表示されます。
- [Message (メッセージ)] 項目で、
has been created or updated
(が作成または更新されました) と入力します。 -
[Apply (適用)] をクリックします。
- フローを保存します。フロー全体は次のようになります。
トリガーと同じように、自動生成されたアクションステップ名がビジネスニーズに合わない場合は、名前の横にある鉛筆アイコンをクリックし、新しい名前を付けて [Save (保存)] をクリックします。
フローを終了する
フローを作成、設定したら、終了します。
次の手順に従ってフローを終了します。
-
[Composer Flows (Composer フロー)] タブをクリックします。
- 変更がある場合、作業内容を保存するよう求められます。
- [Save (保存)] をクリックしてフローを保存します。
ここまで順調ですね。MuleSoft Composer を使用してインテグレーションフローを作成する最初の手順を実行しました。次の単元では、フローのアクションステップでデータのマッピングと取得を行う方法を学習します。