Skip to main content
Register now for TDX! Join the must-attend event to experience what’s next and learn how to build it.

インテグレーションユースケースの調査

学習の目的

この単元を完了すると、次のことができるようになります。

  • NetSuite で更新された在庫品目を Salesforce の商品や関連付けられた価格表エントリと常に同期させるという課題について説明する。
  • MuleSoft Composer を使用して、NetSuite で更新された在庫品目を Salesforce の商品や関連付けられた価格表エントリと同期する方法を説明する。
  • フロー作成の準備をする。

始める前に

このモジュールは「MuleSoft Composer Installation and Configuration (MuleSoft コンポーザーのインストールと設定)」に基づいて作成されているため、続行する前に必ずこれを受講してください。先行のモジュールと同様に、インテグレーションフローを構築して実行するためには「MuleSoft Composer ユーザー」権限セットが必要です。

このモジュールでは、受講者が MuleSoft Composer ユーザーとして認証されていると想定しています。ただし、Mulesoft コンポーザーユーザーでなくても問題ありません。このまま読み進んで、どのように手順を実行するのかを学習してください。MuleSoft Composer は Trailhead Playground で使用できないため、記載の手順を Trailhead Playground で実行しないでください。

Note

MuleSoft コンポーザーのインテグレーション機能、フローコンポーネント、フロー作成タスクについて知るには、「MuleSoft Composer Basics (MuleSoft コンポーザーの基本)」を受講してください。

この単元では、アウトドアやレクリエーション用品の小売企業である Northern Trail Outfitters (NTO) のシステム管理者としての職務に取り組みます。まず、NTO が直面しているインテグレーションの課題を調査し、MuleSoft コンポーザーのインテグレーションソリューションについて学習します。次に、フローの作成の準備方法を学習します。

インテグレーションの課題

では、NTO が直面しているインテグレーションの課題を見てみましょう。NTO の営業チームは、NetSuite を使用して在庫品目を管理しています。また、商品と、お客様への販売に使用する関連付けられた価格表エントリの管理には Sales Cloud を使用しています。

現在、営業チームはこうしたタスクを手動で行っています。在庫品目の更新が必要になるたびに、営業担当がまず NetSuite で適切な詳細を使用して品目を更新します。次に、Sales Cloud に対応する商品が存在するかどうかを判断します。

  • 商品が存在しない場合は、Sales Cloud で適切な在庫品目の詳細 (品目の内部 ID など) を使用して商品を作成します。続いて NetSuite で、関連付けられた商品 ID を使用して在庫品目を更新します。その後 Sales Cloud で、その商品の価格表エントリを作成します。
  • 商品が存在する場合は、Sales Cloud で適切な在庫品目の詳細 (品目の内部 ID など) を使用して商品を更新します。さらに Sales Cloud で、その商品に関連付けられた価格表エントリを更新します。

このプロセスは時間がかかり、非常にミスが起きやすいため、チームは自動化したいと考えています。

インテグレーションソリューション

この解決策として、NetSuite と Sales Cloud 間のインテグレーションを自動化して、ニアリアルタイムのインテグレーションを実現する必要があります。このために、MuleSoft Composer を使用して、NetSuite で更新された在庫品目を Salesforce の商品や関連付けられた価格表エントリと自動的に同期するインテグレーションフローを作成します。具体的に、このフローで実行する必要があるタスクは次のとおりです。

  1. NetSuite で更新された在庫品目を見つけます。
  2. Sales Cloud に対応する商品が存在するかどうかを判断する。
  3. 商品が存在しない場合:
    1. Sales Cloud で、適切な在庫品目の詳細 (在庫品目の内部 ID など) が設定された商品を作成します。
    2. NetSuite で、関連付けられた商品 ID を使用して在庫品目を更新します。
    3. Sales Cloud で、商品の価格表エントリを作成します。
  1. 商品が存在する場合:
    1. Sales Cloud で、適切な在庫品目の詳細を使用して商品を更新します。
    2. Sales Cloud で、商品に関連付けられた価格表エントリを更新します。

MuleSoft Composer を使用するソリューションを実装するには、次のフロー作成タスクを実行します。

  • フロー作成の準備をする。
  • フローを設計してテストする。
  • フローを有効化する。
  • フローを監視し、トラブルシューティングする。

こうしたタスクの実行方法については、このモジュールの残りの部分で学習します。

フローの作成準備をする

準備はよいですか?

まず、これからフローで使用するシステムとアセットについて必要な情報をすべて集めます。次の表は、フローの接続先となるシステムと、各システムの必要な情報を示しています。

システム

必要な情報

NetSuite

  • NetSuite URL
  • NetSuite のユーザー名とパスワード

NTO の Sales Cloud

  • NTO Sandbox 組織と本番組織の URL
  • NTO 組織に対する適切な権限を持つユーザー名とパスワード

フローの設計時とテスト時は、上記のシステムやデータをテスト環境で使用することがベストプラクティスです。テストが完了した後に、本番用のシステムとデータを使用してフローを実行します。

次に、NetSuite 環境と Salesforce 環境の前提条件について説明します。

NetSuite 環境の前提条件

管理者ロールの NetSuite ユーザーは、MuleSoft Composer の NetSuite Connector を使用して、NetSuite と MuleSoft Composer がサポートする他のシステム間のインテグレーションタスクを実行できます。MuleSoft Composer を使用して NetSuite への接続を作成する前に、NetSuite ユーザーに NetSuite 管理者ロールが割り当てられていることを確認します。

まず、更新された各在庫品目で関連付けられた商品 ID をキャプチャするために、NetSuite の [Inventory Item (在庫品目)] エンティティに [Salesforce Product ID (Salesforce 商品 ID)] という自由形式のカスタムテキスト項目を作成する必要があります。次の手順を実行します。

  1. ユーザー名とパスワードを使用して、NetSuite にログインします。
  2. [Customization (カスタマイズ)] | [Lists, Records, & Field (リスト、レコード、項目)] | [Item Field (品目項目)] | [New (新規)] をクリックします。
  3. 項目に次の値を入力します。
    • Label (表示ラベル): Salesforce Product ID (Salesforce 商品 ID)
    • Type (データ型): Free-Form Text (自由形式のテキスト)
  1. [Applies To (適用先)] タブで、[INVENTORY ITEM (在庫品目)] を選択します。
  2. [Display (表示)] タブで、[SUBTAB (サブタブ)] 選択リストから [Main (メイン)] を選択して [Save (保存)] をクリックします。
  3. [List (リスト)] | [Accounting (会計)] | [Items (品目)] | [New (新規)] をクリックします。
  4. [Inventory Item (在庫品目)] をクリックします。[Salesforce Product ID (Salesforce 商品 ID)] が表示されます。
    [Salesforce Product ID (Salesforce 商品 ID)] カスタム項目が表示されている NetSuite の [Inventory Item (在庫品目)] ページ

次に、NetSuite で内部 ID を表示可能にするために、[Home (ホーム)] | [Set Preferences (個人設定の設定)] をクリックし、[Show Internal IDs (内部 ID を表示)] チェックボックスをオンにして、[Save (保存)] をクリックします。

最後に、NetSuite 接続の値を確認しましょう。

NetSuite 接続パラメーター

MuleSoft Composer を使用して NetSuite への接続を作成する場合、以下のパラメーターの値を指定する必要があります。

Connection Display Name (接続表示名)

接続表示名は、任意の名前です。

Account

NetSuite アカウントを見つけるには、次の手順を実行します。

  1. NetSuite で、[Setup (設定)] | [Integration (インテグレーション)] | [SOAP Web Services Preferences (SOAP Web サービスプリファレンス)] をクリックします。
  2. アカウント ID をテキストファイルにコピーして保存します。

コンシューマーキーとコンシューマーシークレット

NetSuite 接続用にコンシューマーキーとコンシューマーシークレットを生成するには、次の手順を実行します。

  1. [Setup (セットアップ)] | [Company (会社)] | [Enable Features (機能の有効化)] をクリックします:
  2. [SuiteCloud] をクリックします。
  3. [Manage Authentication (認証の管理)] セクションまでスクロールダウンし、[Token-based Authentication (トークンベース認証)] チェックボックスをオンにします。
  4. [SuiteCloud Terms of Service (SuiteCloud サービス利用規約)] ページで [I Agree (同意)] をクリックします。
  5. [保存] をクリックします。
  6. [Setup (セットアップ)] | [Integration (インテグレーション)] | [Manage Integrations (インテグレーションの管理)] | [New (新規)] をクリックします。
  7. インテグレーションを次のように設定して [Save (保存)] をクリックすると、コンシューマーキーとコンシューマーシークレットが生成されます。
    • Name (名前): Composer Integration (Composer のインテグレーション)
    • State (状態): Enabled (有効)
    • Token-based Authentication (トークンベースの認証): オン
    • TBA: Authorization Flow (TBA: 認証フロー): オフ
    • OAuth 2.0 Authorization Code Grant (OAuth 2.0 認証コード許可): オフ
    • User Credentials (ユーザーログイン情報): オフ
  1. パラメーター (Name、State、Token-based Authentication、TBA: Authorization Flow など) が表示されている NetSuite インテグレーションページ。パラメーター (OAuth 2.0 Authorization Code Grant、User Credentials など) が表示されている NetSuite の [Integration (インテグレーション)] ページの残りの部分コンシューマーキーとコンシューマーシークレットをテキストファイルにコピーして保存します。

トークン ID とトークンシークレット 

NetSuite 接続用にトークン ID とトークンシークレットを生成するには、次の手順を実行します。

  1. [Setup (セットアップ)] | [Users/Roles (ユーザー/ロール)] | [Access Tokens (アクセストークン)] | [New (新規)] をクリックします。
  2. アクセストークンを次のように設定して [Save (保存)] をクリックすると、トークン ID とトークンシークレットが生成されます。
    • Application Name (アプリケーション名): Composer Integration (Composer のインテグレーション)
    • Token Name (トークン名): Composer Integration - [あなたのユーザー名], Administrator
  1. トークン ID とトークンシークレットを同じテキストファイルにコピーします。MuleSoft Composer を使用して NetSuite 接続を設定するときに、このテキストファイルの値をすべて使用します。

Salesforce 環境の前提条件

まず、Salesforce と同期するフローを作成して実行するための Sandbox 組織と本番組織があることが前提となります。

メモ: フローを設計してテストする Sandbox 組織がない場合は、開発者組織を使用できます。

次の手順に従って無料の開発者組織にサインアップしてください。

  1. https://developer.salesforce.com/signup にアクセスします。
  2. 連絡先情報を入力します。
  3. 一意のユーザー名を入力します。
  4. [サインアップ] をクリックして、お知らせメールが届くのを待ちます。
  5. お知らせメールのリンクをクリックして、パスワードを設定します。

次に、MuleSoft Composer を使用して Salesforce への接続を作成すると、MuleSoft Composer に権限を付与するように求められます。Sandbox 組織と本番組織の両方の Salesforce アカウントで、MuleSoft Composer に次の権限を付与する準備ができていることを確認します。

  • ID URL サービスにアクセスする。
  • API を使用してユーザーデータを管理する。
  • いつでも要求を実行する。

次に、Salesforce の商品で更新された在庫品目の内部 ID をキャプチャするために、NTO 組織の商品オブジェクトに [NetSuite Item ID (NetSuite 品目 ID)] というカスタムテキスト項目が作成されていることを確認します。以下は、NTO 組織の商品の [NetSuite Item ID (NetSuite 品目 ID)] の一例です。

[NetSuite Item ID (NetSuite 品目 ID)] カスタム項目が表示されている商品オブジェクト

カスタム項目の作成方法については、「Salesforce オブジェクトのカスタマイズ」を参照してください。

最後に、ご存知のとおり、Sales Cloud では各商品に標準価格が設定され、標準価格表が関連付けられています。商品に関連付けられた価格表エントリを作成するために、フローが組織の標準価格表にアクセスする必要があります。標準価格表の ID を調べる手順は、次のとおりです。

  1. ユーザー名とパスワードを使用して NTO 組織にログインします。
  2. アプリケーションランチャーに price books (価格表) と入力し、[Price Books (価格表)] を選択します。
  3. [標準価格表] をクリックします。標準価格表が表示されます。URL の末尾のほうに示されている ID をメモして、フローで使用できるようにします。この例では 01s1U000005mSpYQAU です。
    URL の末尾のほうに ID が示されている標準価格表

MuleSoft Composer を使用したフローの作成準備の最初の手順を実行しました。次の単元では、フローを設計する方法を学習します。

リソース

Salesforce ヘルプで Trailhead のフィードバックを共有してください。

Trailhead についての感想をお聞かせください。[Salesforce ヘルプ] サイトから新しいフィードバックフォームにいつでもアクセスできるようになりました。

詳細はこちら フィードバックの共有に進む