POとPO変更をERPに統合
Coupa POとPOの変更をERPに統合する手順を追った説明。
はじめに
このドキュメントはMicrosoft Word文書(Coupa発注書からERP.docx)としてダウンロードすることもできます。
一般的なAPI設定の考慮事項
- Coupa APIの開始
- APIキーのセキュリティー (最終的には廃止される予定です)
- Open Connect API Access(R29以降)
- JSON/XML
- GraphQL (R30以降)
限定されたペイロード – フィールドとAPIフィルター
CoupaのAPIは、デフォルトで多くのデータを返します(例:関連オブジェクトとしての全オブジェクト)。APIが返すペイロードは非常に大きくなる、したがって処理が遅くなる可能性があります。これは、リソースの無駄遣いは言うまでもなく、無関係なデータを必要としないお客様にとって問題となる可能性があります。
Coupaには、オブジェクトのスキーマ全体とすべての関連付けの代わりに、限定されたJSONまたはXML応答を返す「フィールド」パラメーターとAPIフィルターの概念があります。
この記事で説明する使用例
このドキュメントでは、ERPの発注書番号がCoupa発注書番号によって決定されることを前提としています。 この記事では、Coupa発注書をERPに統合するための3つの異なるオプション(作成と更新の両方)について説明します。
これらのオプションにより、Coupaからインテグレーションを監視する方法が変更されます。
3つのオプションの場合、Coupa POはエクスポートフラグに基づいてERPにプッシュされます。
POのインテグレーションでエラーが発生した場合、Coupa UIのPOで手動の変更が必要になります。この変更によりエクスポートフラグがリセットされるため、次の実行でPOが検討されます
Coupaは、Coupaサポートに「変更のたびに最後にエクスポートしたPOをリセットする」というオプションを有効にするよう提案します。 この設定はUIにのみ適用されます。APIで行われた変更は、エクスポート済みステータスを変更しません。
APIの専用インテグレーションと連絡先を作成
オプション2および3の場合、次を作成する必要があります。
- 実装するAPIオーケストレーションごとに専用のインテグレーション
- インテグレーションに失敗した場合にアラートを受け取る、インテグレーションごとに1つまたは複数のインテグレーション連絡先
Coupaでは、Coupaサポートに連絡して、[ドキュメントタイプ別インテグレーション履歴へのリンクを有効にする]オプションを有効にするよう提案しています。 この設定により、設定ページにリンクが追加され、ドキュメントタイプごとに完全なインテグレーション履歴が表示されます
オプション1:カスタムフィールドに基づくシンプルな監視
説明
このシナリオでは、POごとに、1つまたは複数のPOヘッダーカスタムフィールドに現在のインテグレーションステータスを追加します。という名前のカスタムフィ cf-integration-status
ールドを追加しましたIntegration Status
。標準発注書データテーブルを使用して、次のURLでドキュメントのインテグレーションステータスを確認しますhttps://<your instance hostname>/order_headers
。
オーケストレーション図
ステップ/ APIコールの詳細
手順1 |
ERPで作成/更新するCoupa発注書のリストと詳細を取得します。 |
---|---|
方法 |
取得 |
API |
|
クエリパラメーター |
|
サンプルURL |
https:// |
クエリ本文のサンプル |
該当なし |
返答本文のサンプル |
* = show_deleted_lines=trueはPO変更用
手順2 |
個別のPOをエクスポート済みとしてマーク |
---|---|
方法 |
プット |
API |
|
クエリパラメーター |
|
サンプルURL |
|
クエリ本文のサンプル |
該当なし* |
返答本文のサンプル |
|
*この呼び出しでは、URLに「?exported=true」を含める場合、ペイロードは必要ありません。 そこで、ERPでPOの作成/更新が行われます。
手順3 |
レポート用のカスタムフィールドを更新する |
---|---|
方法 |
プット |
API |
|
クエリパラメーター |
|
サンプルURL |
|
クエリ本文のサンプル |
または
|
返答本文のサンプル |
または
|
オプション2:インテグレーション履歴を使用した高度な監視
説明
このシナリオでは、POごとに次を実行します。
- ドキュメントの以前のインテグレーション履歴記録を解決します
- インテグレーション履歴記録を作成
- エラーが発生した場合のインテグレーション連絡先へのアラートを作成する
各ドキュメントには、インテグレーション履歴の詳細が含まれています。
標準のPOインテグレーション履歴データテーブルを使用して、ドキュメントのインテグレーションステータスを確認します。次のサイトで確認できますhttps://<your instance hostname>/integration_history_records/purchase_orders
。
応答コードのフィルターを使用して、正常にレプリケートされたドキュメントと失敗したドキュメントを区別できます。
オーケストレーション図
ステップ/ APIコールの詳細
手順1 |
ERPで作成/更新するCoupa発注書のリストと詳細を取得します。 |
---|---|
方法 |
取得 |
API |
|
クエリパラメーター |
|
サンプルURL |
|
クエリ本文のサンプル |
該当なし |
返答本文のサンプル |
手順2 |
個別のPOをエクスポート済みとしてマーク |
---|---|
方法 |
プット |
API |
|
クエリパラメーター |
|
サンプルURL |
|
クエリ本文のサンプル |
該当なし |
返答本文のサンプル |
|
ここで、ERPでのPOの作成/更新が行われます。
手順3a |
未解決のインテグレーション履歴記録を取得 |
---|---|
方法 |
取得 |
API |
|
クエリパラメーター |
|
サンプルURL |
|
クエリ本文のサンプル |
該当なし |
返答本文のサンプル |
|
手順3b |
以前のインテグレーション履歴記録を解決 |
---|---|
方法 |
プット |
API |
|
クエリパラメーター |
|
サンプルURL |
|
クエリ本文のサンプル |
該当なし |
返答本文のサンプル |
|
手順4a |
インテグレーション履歴を作成(成功) |
---|---|
方法 |
プット |
API |
|
クエリパラメーター |
|
サンプルURL |
|
クエリ本文のサンプル |
|
返答本文のサンプル |
|
手順4b |
インテグレーション履歴(エラー)を作成し、インテグレーション連絡先にアラートを送信します |
---|---|
方法 |
プット |
API |
|
クエリパラメーター |
|
サンプルURL |
|
クエリ本文のサンプル |
|
返答本文のサンプル |
|
オプション3:Coupaインテグレーションの完全監視を活用
説明
このシナリオでは、追跡するインテグレーション実行を作成します
- インテグレーションのステータス(保留中/開始済み/エラー済み/成功/失敗)
- 処理されたPOの合計数
- 成功とエラーの数
- インテグレーションエラーとそのステータスのリスト(解決済みかどうか)
POごとに次を行います。
- ドキュメントの以前のインテグレーション履歴記録を解決します
- インテグレーション履歴記録を作成
- エラーが発生した場合は、インテグレーションエラーとインテグレーション連絡先へのアラートを作成します
インテグレーションのすべてのインテグレーション実行は、で監視できますhttps://<your instance hostname>/integrations/<your integration id>/integration_runs
。
標準POインテグレーションエラーデータテーブルを使用して、インテグレーションエラーが解決を保留中のすべてのPOを一覧表示します。所在地は。https://<your instance hostname>/integration_errors
標準POインテグレーション履歴データテーブルを使用して、正常に統合されたすべてのPOを一覧表示します。 所在地はhttps://<your instance hostname>/integration_history_records/purchase_orders
。
オーケストレーション図
ステップ/ APIコールの詳細
手順1 |
インテグレーション実行を作成 |
---|---|
方法 |
投稿 |
API |
|
クエリパラメーター |
該当なし |
クエリ本文のサンプル |
|
返答本文のサンプル |
|
手順2 |
ERPで作成/更新するCoupa発注書のリストと詳細を取得します。 |
---|---|
方法 |
取得 |
API |
|
クエリパラメーター |
filter= |
サンプルURL |
|
クエリ本文のサンプル |
該当なし |
返答本文のサンプル |
手順3 |
インテグレーション実行の開始 |
---|---|
方法 |
プット |
API |
|
クエリパラメーター |
該当なし |
クエリ本文のサンプル |
|
返答本文のサンプル |
|
手順4 |
個別のPOをエクスポート済みとしてマーク |
---|---|
方法 |
プット |
API |
|
クエリパラメーター |
|
サンプルURL |
|
クエリ本文のサンプル |
該当なし |
返答本文のサンプル |
|
ここで、ERPでのPOの作成/更新が行われます。
手順5a |
未解決のインテグレーション履歴記録を取得 |
---|---|
方法 |
取得 |
API |
|
クエリパラメーター |
|
サンプルURL |
|
クエリ本文のサンプル |
該当なし |
返答本文のサンプル |
|
手順5b |
以前のインテグレーション履歴記録を解決 |
---|---|
方法 |
プット |
API |
|
クエリパラメーター |
|
サンプルURL |
|
クエリ本文のサンプル |
該当なし |
返答本文のサンプル |
|
手順6a |
未解決のインテグレーションエラーレコードを取得 |
---|---|
方法 |
取得 |
API |
|
クエリパラメーター |
|
サンプルURL |
|
クエリ本文のサンプル |
該当なし |
返答本文のサンプル |
|
手順6b |
以前のインテグレーション履歴記録を解決 |
---|---|
方法 |
プット |
API |
|
クエリパラメーター |
該当なし |
クエリ本文のサンプル |
該当なし |
返答本文のサンプル |
|
手順7a |
インテグレーション履歴を作成(成功) |
---|---|
方法 |
プット |
API |
|
クエリパラメーター |
fields=["id","document-id","status"] |
サンプルURL |
|
クエリ本文のサンプル |
|
返答本文のサンプル |
|
手順7b |
インテグレーションエラーを作成し、インテグレーション連絡先にアラート |
---|---|
方法 |
プット |
API |
|
クエリパラメーター |
該当なし |
クエリ本文のサンプル |
|
返答本文のサンプル |
|
手順8 |
インテグレーション実行を正常に終了 |
---|---|
方法 |
プット |
API |
|
クエリパラメーター |
該当なし |
クエリ本文のサンプル |
該当なし |
返答本文のサンプル |
|
インテグレーション実行中に一般的な障害が発生した場合
手順x |
インテグレーション実行の失敗を発生させる |
---|---|
方法 |
プット |
API |
|
クエリパラメーター |
該当なし |
クエリ本文のサンプル |
該当なし |
返答本文のサンプル |
|
このページに表示されている一部、または全ての内容は、機械翻訳によるものです。ご了承ください。