機械翻訳について

基本的な非同期CRUD操作の設計

このユースケースでは、「Oracle NetSuiteアダプタ」 invoke接続を非同期取得操作で構成した統合の設計方法の概要を説明します。 設計ロジックは、他のCRUD操作(追加、削除、更新)と同様です。 構成後、この統合は自動的に新しい非同期ジョブを発行するか、ジョブ・ステータスをチェックして、適切にマップされている特定の変数に基づいて結果を取得します。

構成ステップの概要を次に示します。
  1. オーケストレートされたまたはスケジュール済の統合を作成します。 この例では、オーケストレートされた統合が作成されます。
  2. アダプタをトリガー接続として追加します。 この例では、「RESTアダプタ」を追加して構成します。
  3. 割当てアクション(この例では、名前はInitializeVariables)を追加し、次の変数を初期化します。
    • jobId - 文字列データ型 - 値 -1
    • jobStatus - 文字列データ型 - 値 -1
  4. whileアクションを追加し、次の条件を指定します。
    $jobStatus != "finished" and $jobStatus != "finishedWithErrors" and $jobStatus != "failed"
  5. whileアクションの内部で、非同期コールを行うための起動接続として「Oracle NetSuiteアダプタ」を追加します。 これにより、「アダプタ・エンドポイント構成ウィザード」が起動します。
    1. 操作ページで、処理モードとして「非同期」、操作タイプとして「基本」を、CRUD値としてGETを選択します。

    2. アダプタ・エンドポイントの構成ウィザードを完了します。
  6. 「Oracle NetSuiteアダプタ」 invoke接続の前に配置されているマッパーでは、ステップ3で作成したjobId変数を、AsyncJobParameters要素の下の「Oracle NetSuiteアダプタ」リクエスト・スキーマで定義されているjobId変数にマップします。
  7. ビジネス・ユース・ケースで必要に応じて追加要素をマップします。
  8. 「Oracle NetSuiteアダプタ」の後に2つ目の割当てアクション(この例ではReAssignVariables)を追加し、ステップ3で作成したjobId変数およびjobStatus変数を「Oracle NetSuiteアダプタ」 invoke接続のレスポンスからの値で割り当てます。
  9. 切替えアクションを追加して、最初のブランチを編集します。 次の条件が満たされると、ループは終了します。


    前述の条件では、次の2つのルートが作成されます:

    1. jobStatusは、「終了」finishedWithErrorsまたはfailedのいずれかです。 「Oracle NetSuiteアダプタ」起動接続レスポンスから結果を取得し、ビジネス・ニーズに基づいて結果を処理できるようになりました。 たとえば、顧客の追加非同期ジョブで、エラーなしでジョブが正常に終了した場合は、作成した顧客レコードのinternalIdを取得できます。

    2. jobStatusは前述の値のいずれでもありません。 これは、非同期ジョブがまだ実行中であることを意味します。 ジョブの結果を取得する前に、他の操作を実行するか、またはステップ5で作成したwhileループを待機してループにループ・バックします。

      完了した統合は次のようになります。 「Oracle NetSuiteアダプタ」により、新しい非同期ジョブが自動的に送信されるか、ジョブ・ステータスがチェックされて、リクエストに渡されたjobIdに基づいて結果が取得されます。
      asynchr_completed_int.pngの説明は以下のとおりです
      図asynchr_completed_int.pngの説明