SAP Ariba Procurement

SAP Ariba Procurement コネクタを使用すると、SAP Ariba Procurement データに対して、挿入、更新、読み取りオペレーションを実行できます。

サポート対象のバージョン

このコネクタは、SAP Ariba Procurement REST API をサポートしています。

始める前に

Google Cloud プロジェクトで次のタスクを行います。

  • ネットワーク接続が設定されていることを確認します。詳細については、ネットワーク接続をご覧ください。
  • コネクタを構成するユーザーに roles/connectors.admin IAM ロールを付与します。
  • コネクタに使用するサービス アカウントroles/secretmanager.viewerroles/secretmanager.secretAccessor の IAM ロールを付与します。
  • secretmanager.googleapis.com(Secret Manager API)と connectors.googleapis.com(Connectors API)を有効にします。詳細については、サービスを有効にするをご覧ください。

コネクタを構成する

接続はデータソースに特有です。つまり、多数のデータソースがある場合は、データソースごとに別々の接続を作成する必要があります。接続を作成する手順は次のとおりです。

  1. Cloud コンソールで、[Integration Connectors] > [接続] ページに移動し、Google Cloud プロジェクトを選択または作成します。

    [接続] ページに移動

  2. [+ 新規作成] をクリックして [接続の作成] ページを開きます。
  3. [ロケーション] セクションで、次の操作を行います。
    1. リージョン: プルダウン リストからロケーションを選択します

      サポートされているすべてのリージョンのリストについては、ロケーションをご覧ください。

    2. [次へ] をクリックします。
  4. [接続の詳細] セクションで、次の操作を行います。
    1. コネクタ: 使用可能なコネクタのリストから [SAP Ariba Procurement] を選択します。
    2. コネクタのバージョン: 使用可能なバージョンのリストからコネクタのバージョンを選択します。
    3. [接続名] フィールドに、接続インスタンスの名前を入力します。接続名には、小文字、数字、ハイフンを使用できます。名前の先頭は英字、末尾は英字または数字にする必要があります。名前は 49 文字以下にする必要があります。
    4. 説明: 接続インスタンスの説明を入力します。
    5. 必要に応じて、Cloud Logging を有効にして、ログレベルを選択します。デフォルトのログレベルは Error に設定されています。
    6. サービス アカウント: 必要なロールを持つサービス アカウントを選択します。
    7. ANID: SAP Ariba Network ID を指定します。
    8. API Key: 認証用の OAuth アプリケーション キーを入力します。
    9. Realm: 接続の SAP Ariba Realm を入力します。
    10. API: データを取得する SAP Ariba API を入力します。
    11. データセンター: アカウントのデータがホストされている地理的な場所を入力します。
    12. 環境: 接続する SAP Ariba 環境を入力します。
    13. 必要に応じて、接続ノードの設定を構成します。

      • ノードの最小数: 接続ノードの最小数を入力します。
      • ノードの最大数: 接続ノードの最大数を入力します。

      ノードは、トランザクションを処理する接続の単位(またはレプリカ)です。1 つの接続でより多くのトランザクションを処理するには、より多くのノードが必要になります。逆に、より少ないトランザクションを処理するには、より少ないノードが必要になります。ノードがコネクタの料金に与える影響については、接続ノードの料金をご覧ください。値を入力しない場合は、デフォルトで最小ノード数は 2 に設定され(可用性を高めるため)、最大ノード数は 50 に設定されます。

    14. + ラベルを追加: クリックすると、Key-Value ペアの形式でラベルを接続に追加できます。
    15. [次へ] をクリックします。
  5. [認証] セクションで、認証の詳細を入力します。
    1. [認証タイプ] を選択し、関連する詳細を入力します。

      SAP Ariba Procurement 接続でサポートされる認証タイプは、次のとおりです。

      • OAuth 2.0 - クライアント認証情報

      これらの認証タイプの構成方法については、認証を構成するをご覧ください。

    2. [次へ] をクリックします。
  6. Review: 接続と認証の詳細を確認します。
  7. [作成] をクリックします。

認証を構成する

使用する認証に基づいて詳細を入力します。

  • OAuth 2.0 - クライアント認証情報
    • クライアント ID: 作成したアプリケーションのクライアント ID を入力します。
    • クライアント シークレット: 作成した接続されているアプリのクライアント シークレットを含む Secret Manager のシークレットを入力します。
    • シークレットのバージョン: クライアント シークレットのシークレットのバージョンを選択します。
    • 認証オーバーライドを有効にする: 認証オーバーライドを有効にします。

接続構成のサンプル

このセクションでは、接続の作成時に構成するさまざまなフィールドのサンプル値を示します。

OAuth 2.0 - クライアント認証情報の接続タイプ

フィールド名 詳細
ロケーション europe-west1
コネクタ SAP Ariba Procurement
コネクタのバージョン 1
接続名 gcp-sapariba-procurement-po-supplier
Cloud Logging を有効にする
サービス アカウント my-service-account@my-project.iam.gserviceaccount.com
ログレベル デバッグ
ANID AN11234322444-T
API キー gaTawAf8m3gtAs8gPyUbU9Be1eLXbvFq
レルム 745628447-T
API PurchaseOrdersSupplierAPI-V1
データセンター 米国
環境 テスト
ノードの最小数 2
ノードの最大数 50
認証 OAuth 2.0 - クライアント認証情報
クライアント ID 4c71c4d4-d7e9-494e-807f-9dead41abc6f
クライアント シークレット projects/617888503870/secrets/AribaProcurement/versions/10
シークレットのバージョン 10

システムの上限

SAP Ariba Procurement コネクタは、ノードごとに 1 秒あたり最大 3 件のトランザクションを処理でき、この上限を超えるトランザクションをスロットルします。デフォルトでは、Integration Connectors は、接続に 2 つのノードを割り当てます(可用性を高めるため)。

Integration Connectors に適用される上限の詳細については、上限をご覧ください。

インテグレーションで SAP Ariba Procurement 接続を使用する

接続を作成すると、Apigee Integration と Application Integration の両方で使用できるようになります。この接続は、コネクタタスクを介して統合で使用できます。

  • Apigee Integration でコネクタタスクを作成して使用する方法については、コネクタタスクをご覧ください。
  • Application Integration でコネクタタスクを作成して使用する方法については、コネクタタスクをご覧ください。

操作

このセクションでは、このコネクタでアクションの一部を実行する方法について説明します。

CreateChildElementSchema アクション

このアクションは、ビュー テンプレート内のドキュメントの配列のスキーマ ファイルを作成します。

CreateChildElementSchema アクションの入力パラメータ

パラメータ名 タイプ 出力ストリームを受け入れる 説明
ViewTemplateName 文字列 誤り 既存のビュー テンプレートの名前。
ChildElement 文字列 誤り ビュー テンプレート内の子要素またはドキュメントの配列(ドット表記)。例: LineItems.SplitAccountings
TableName 文字列 誤り 新しいテーブルの名前(View_LineItems_SplitAccountings など)。
FileName 文字列 誤り 生成されたスキーマのファイル名。これは、目的の保存場所への相対パスまたは絶対パスです。
FileStream 文字列 正しい ファイルデータが書き込まれる出力ストリームのインスタンス。

CreateChildElementSchema アクションの構成例については、をご覧ください。

CreateSchema アクション

指定されたテーブルまたはビューのスキーマ ファイルを作成します。

CreateSchema アクションの入力パラメータ

パラメータ名 タイプ 出力ストリームを受け入れる 説明
TableName 文字列 誤り 新しいテーブルの名前。
FileName 文字列 誤り 生成されたスキーマのファイル名。これは、目的の保存場所への相対パスまたは絶対パスです。
FileStream 文字列 誤り ファイルデータが書き込まれる出力ストリームのインスタンス。

CreateSchema アクションの構成例については、をご覧ください。

アクションの例

このセクションでは、このコネクタでアクションの例の一部を実行する方法について説明します。

例 - 子要素スキーマを作成する

  1. [Configure connector task] ダイアログで、[Actions] をクリックします。
  2. [CreateChildElementSchema] アクションを選択してから、[完了] をクリックします。
  3. [コネクタ] タスクの [タスク入力] セクションで、connectorInputPayload をクリックし、Default Value フィールドに次のような値を入力します。
    {
      "ViewTemplateName": "InvoiceReconciliation_SAP_createdRange",
      "ChildElement": "Payments",
      "TableName": "View_LineItems_SplitAccountings"
    }
    
  4. アクションが成功すると、コネクタタスクの connectorOutputPayload レスポンス パラメータの値は次のようになります。

    [
      {
        "FileData": "",
        "Result": "success"
      }
    ]
    

例 - スキーマを作成する

  1. [Configure connector task] ダイアログで、[Actions] をクリックします。
  2. [CreateSchema] アクションを選択してから、[完了] をクリックします。
  3. [コネクタ] タスクの [タスク入力] セクションで、connectorInputPayload をクリックし、Default Value フィールドに次のような値を入力します。
    {
      "TableName": "Views"
    }
    
  4. アクションが成功すると、コネクタタスクの connectorOutputPayload レスポンス パラメータの値は次のようになります。

    [
      {
        "FileData": "",
        "Result": "success"
      }
    ]
    

エンティティ オペレーションの例

このセクションでは、このコネクタでエンティティ オペレーションの一部を実行する方法について説明します。

例 - すべての注文を一覧表示する

  1. [Configure connector task] ダイアログで、[Entities] をクリックします。
  2. Entity から Orders を選択します。
  3. [List] オペレーションを選択し、[完了] をクリックします。
  4. [コネクタ] タスクの [タスク入力] セクションで、お客様の要件に応じて filterClause を設定できます。
  5. filterClause の値を囲むには、単一引用符(')を使用する必要があります。filterClause を使用すると、列に基づいてレコードをフィルタできます。

例 - すべての商品アイテムを一覧表示する

  1. [Configure connector task] ダイアログで、[Entities] をクリックします。
  2. Entity から LineItems を選択します。
  3. [List] オペレーションを選択し、[完了] をクリックします。
  4. [コネクタ] タスクの [タスク入力] セクションで、お客様の要件に応じて filterClause を設定できます。

例 - 注文の詳細を取得する

  1. [Configure connector task] ダイアログで、[Entities] をクリックします。
  2. Entity から Orders を選択します。
  3. [Get] オペレーションを選択し、[完了] をクリックします。
  4. entityId を「DO240」に設定します。これは渡されるキーです。entityId を設定するには、[データ マッピング] の [データ マッパー] セクションで [データ マッピング エディタを開く] をクリックし、[入力値] フィールドに "DO240" を入力し、entityId をローカル変数として選択します。
  5. entityId の値は直接渡す必要があります(「DO240」など)。ここで、「DO240」は一意の主キー値です。

    2 つの複合キーが存在するために単一の entityId を渡すとエラーがスローされる場合は、filterClause を使用して DocumentNumber='DO240' などの値を渡すことができます。

例 - 広告申込情報の詳細を取得する

  1. [Configure connector task] ダイアログで、[Entities] をクリックします。
  2. Entity から LineItems を選択します。
  3. [Get] オペレーションを選択し、[完了] をクリックします。
  4. filterClause を、渡される複合キーである LineNumber='1' AND DocumentNumber='DO240' に設定します。filterClause を設定するには、[データ マッピング] の [データ マッパー] セクションで [データ マッピング エディタを開く] をクリックし、[入力値] フィールドに "LineNumber='1' AND DocumentNumber='DO240'" を入力し、filterClause をローカル変数として選択します。

例 - ビューを作成する

  1. [Configure connector task] ダイアログで、[Entities] をクリックします。
  2. Entity から Views を選択します。
  3. [Create] オペレーションを選択し、[完了] をクリックします。
  4. [データ マッピング] タスクの [データ マッパー] セクションで、Open Data Mapping Editor をクリックし、[Input Value] フィールドに次のような値を入力し、entityId、connectorInputPayload、または filterClause をローカル変数として選択します。
    {
      "ViewTemplateName": "TestView1754629881645",
      "Status": "published",
      "FilterExpressions": "[{\"name\":\"ExampleFilter\",\"field\":\"UniqueName\",\"op\":\"IN\",\"defaultValue\":[\"P011\"]}]",
      "DocumentType": "DirectOrder",
      "SelectAttributes": "[\"SubmitDate\"]"
    }
    

    この例を実行すると、コネクタ タスクの connectorOutputPayload 出力変数で次のようなレスポンスが返されます。

    {
      "Success": true
    }
    

例 - ビューを更新する

  1. [Configure connector task] ダイアログで、[Entities] をクリックします。
  2. Entity から Views を選択します。
  3. [Update] オペレーションを選択し、[完了] をクリックします。
  4. [データ マッピング] タスクの [データ マッパー] セクションで、Open Data Mapping Editor をクリックし、Input Value フィールドに次のような値を入力します。
    {
      "Status": "published"
    }
    
  5. データマッパーで entityId をビューの ID に設定します。entityId を設定するには、Open Data Mapping Editor をクリックし、Input Value フィールドに次のような値を入力して、entityId、connectorInputPayload、または filterClause をローカル変数として選択します。

    [entityId] を指定する代わりに、[filterClause] を TestView = '1754629881645' に設定することもできます。

    この例を実行すると、コネクタ タスクの connectorOutputPayload 出力変数で次のようなレスポンスが返されます。

    {
    }
    

    レスポンス内の空の JSON オブジェクト {} は、更新オペレーションが成功したことを示します。

Google Cloud コミュニティの助けを借りる

Google Cloud コミュニティの Cloud フォーラムで質問を投稿したり、このコネクタについてディスカッションしたりできます。

次のステップ