SAP Concur Connector 4.2 - Mule 4

SAP Concur 用 Anypoint Connector (SAP Concur Connector) は、出張および経費管理ソリューションが統合された SAP の SaaS プロバイダーです。

Concur Connector は、Concur と Mule Runtime Engine (Mule) のインスタンス間の双方向ゲートウェイとして機能します。Concur Connector は、Concur API への SOAP および REST コールをサポートする、クローズドソースのコネクタです。

始める前に

この情報を使用するには、SAP Concur、Mule、Anypoint Connector、Anypoint Studio、Mule の概念、Mule フローの要素、グローバル要素に精通している必要があります。

対象リソースへの接続をテストするには、ログイン情報が必要です。

ソフトウェアの要件および互換性情報については、「コネクタリリースノート」を参照してください。

POM ファイル情報

<dependency>
  <groupId>org.mule.modules</groupId>
  <artifactId>mule-module-concur</artifactId>
  <version>x.y.z</version>
  <classifier>mule-plugin</classifier>
</dependency>
xml

x.y.z​ を使用しているコネクタに対応するバージョンに置き換えます。

最新の ​pom.xml​ ファイル情報を取得するには、​ Anypoint ExchangeLeaving the Site​ でコネクタにアクセスし、​[Dependency Snippets (連動関係スニペット)]​ をクリックします。

Concur API の可用性について

サポート対象 API の SAP Concur Connector リファレンスを参照してください。

Studio プロジェクトへのコネクタの追加

Anypoint Studio には、Studio プロジェクトにコネクタを追加する 2 つの方法があります。Studio タスクバーの Exchange ボタンから追加するか、[Mule Palette (Mule パレット)] ビューから追加します。

Exchange を使用してコネクタを追加する

  1. Studio で Mule プロジェクトを作成します。

  2. Studio タスクバーの左上にある Exchange アイコン ​(X)​ をクリックします。

  3. Exchange で、​[Login (ログイン)]​ をクリックし、Anypoint Platform のユーザー名とパスワードを指定します。

  4. Exchange で、「concur」を検索します。

  5. コネクタを選択して ​[Add to project (プロジェクトに追加)]​ をクリックします。

  6. 画面の指示に従ってコネクタをインストールします。

Studio でコネクタに追加する

  1. Studio で Mule プロジェクトを作成します。

  2. [Mule Palette (Mule パレット)] ビューで、​[(X) Search in Exchange ((X) Exchange 内を検索)]​ をクリックします。

  3. [Add Modules to Project (モジュールをプロジェクトに追加)]​ で、検索項目に「concur」と入力します。

  4. [Available modules (使用可能なモジュール)]​ で、このコネクタの名前をクリックします。

  5. [Add (追加)]​ をクリックします。

  6. [Finish (完了)]​ をクリックします。

ユースケースの例

このガイドでは、組織内の Concur Connector で発生する可能性がある多数のユースケースのうち 2 つ、リストの一覧の取得とクイック経費の取得について説明します。Concur Connector をダウンロードし、Concur インスタンスのログイン情報を参照するグローバル要素を作成したら、フローのコードを Studio の XML エディターに貼り付けることができます。

Get List Items

新しいプロジェクトと Concur グローバル要素の作成後、次の作業を実行します。

  1. 新しいフロー要素をパレットからドラッグして追加し、フローに ​getlists​ などの名前を付けます。

  2. パレットから [HTTP Listener (HTTP リスナー)] をフローにドラッグします。

  3. [HTTP Listener (HTTP リスナー)] をダブルクリックして [Connector Configuration (コネクタ設定)] ドロップダウンの横にある緑のプラス記号をクリックし、[Host (ホスト)] を「localhost」、[Port (ポート)] を「8081」に設定します。

  4. [OK] をクリックしてプロパティウィンドウを閉じ、この HTTP リスナーの [Basic Settings (基本設定)] セクションの [Path (パス)] 項目に値として「getlists」と入力します。

  5. 新しいフローに Concur Connector を追加し、コネクタ設定を選択して、​[Get list of lists]​ 操作を選択します。

  6. 最後に、[Transform Message] トランスフォーマーをフローに追加します。

  7. 参考として、下の方にあるサンプル XML コード内の特定の getlists フローを確認してください。

フローを実行して結果を確認する手順は、次のとおりです。

  1. Package Explorer でプロジェクトを右クリックし、[Run As (別のユーザーとして実行)] > [Mule Application (Mule アプリケーション)] をクリックします。

  2. Studio コンソールを監視して、アプリケーションが起動したことを確認します。

  3. ブラウザーを開き、​http://localhost:8081/getlists​ に移動します。

  4. 次のような JSON 応答を受け取ります。

    {
        "Items": [
            {
                "ListID": "gWjM8QmJmOqZnW2i9MaJqJgAMhR$sGXQ$seYQ",
                "Name": "American Express Travel",
                "ParentID": null,
                "Level1Code": "American Express Travel",
                "Level2Code": null,
                "Level3Code": null,
                "Level4Code": null,
                "Level5Code": null,
                "Level6Code": null,
                "Level7Code": null,
                "Level8Code": null,
                "Level9Code": null,
                "Level10Code": null,
                "IsDeleted": false,
                "ID": "gWgUluaspXXNeeNwsbk6mGsqOlp0pxJyRWQ",
                "URI": "https://implementation.concursolutions.com/api/v3.0/common/listitems/gWgUluaspXXNeeNwsbk6mGsqOlp0pxJyRWQ"
            },
    …..
    json
  5. 停止ボタンをクリックして、アプリケーションを実行しているサーバーを停止します。

クイック経費を作成する

  1. 新しいフロー要素をパレットからドラッグして追加し、「getquickexpenses」という名前を付けます。

  2. [HTTP Listener (HTTP リスナー)] をパレットからドラッグしてフローに追加します。

  3. 最初のデモの設定を使用するか、そのフローを作成しなかった場合は、HTTP エンドポイントの [Connector Configuration (コネクタ設定)] の横にある緑のプラス記号をクリックし、[Host (ホスト)] に「localhost」、[Port (ポート)] に「8081」を入力します。

  4. [OK] をクリックしてプロパティウィンドウを閉じ、この HTTP リスナーの [Basic Settings (基本設定)] セクションの [Path (パス)] 項目に値として「getquickexpenses」と入力します。

  5. [Connector Configuration (コネクタ設定)] からグローバル要素を参照して Concur Connector を新しいフローに追加し、実行する操作と他の必要なプロパティを設定します。

  6. 最後に、前の例に [Transform Message] トランスフォーマーリンクを追加します。

フローを実行して結果を確認する手順は、次のとおりです。

  1. Package Explorer でプロジェクトを右クリックし、[Run As (別のユーザーとして実行)] > [Mule Application (Mule アプリケーション)] をクリックします。

  2. アプリケーションの起動時にコンソールを確認します。

  3. ブラウザーを開き、​http://localhost:8081/getquickexpenses​ に移動します。

  4. 次のような JSON 応答を受け取ります。

    {"items":{"quickExpense":[{"comment":"","currencyCode":"USD","expenseTypeCode":"UNDEF","expenseTypeName":"Undefined","id":"gWr7TiTHdIi5fyWCPBRPtqjeCIWyv2w","locationName":"","ownerLoginID":"","ownerName":"Unknown","paymentTypeCode":"PENDC","receiptImageID":"","transactionAmount":111.0,"transactionDate":"2018-07-21T00:00:00","uri":"https://www.concursolutions.com/api/v3.0/expense/quickexpenses/gWr7TiTHdIi5fyWCPBRPtqjeCIWyv2w","vendorDescription":""},
    {"comment":"","currencyCode":"USD","expenseTypeCode":"UNDEF","expenseTypeName":"Undefined","id":"gWr7TiTXbQ47PtJ$pVkr6CzbLeRVRPww","locationName":"","ownerLoginID":"","ownerName":"Unknown","paymentTypeCode":"PENDC","receiptImageID":"","transactionAmount":111.0,"transactionDate":"2018-07-21T00:00:00","uri":"https://www.concursolutions.com/api/v3.0/expense/quickexpenses/gWr7TiTXbQ47PtJ$pVkr6CzbLeRVRPww","vendorDescription":""},
    json
  5. 停止ボタンをクリックして、アプリケーションを実行しているサーバーを停止します。