サンプルユースケース - Circuitコンソールでの入力および出力処理の設定

サンプルユースケース - Circuitコンソールでの入力および出力処理の設定

お知らせ:当社は、お客様により充実したサポート情報を迅速に提供するため、本ページのコンテンツは機械翻訳を用いて日本語に翻訳しています。正確かつ最新のサポート情報をご覧いただくには、本内容の英語版を参照してください。

従業員オンボーディングプロセスを例にCircuitを構築しながら、入出力処理についてさらに見ていきましょう。
従業員オンボーディングに必要な従業員情報を含む、次のステート入力からプロセスを開始します。

{ 'employee_details': { 'emp_name': 'John Doe', 'emp_id': '357', 'department': 'Engineering', 'role': 'Software Engineer' }, 'onboarding': { 'phase': 'Employee Onboarding', 'start_date': '2023-08-01', 'manager': 'Jane Smith', 'location': 'NewYork' } }
次に、上記のプロセスの[入出力処理]項目を([コードビュー]で)定義します。
{ 'onboard_employee': { 'type': 'function', 'next': 'End', 'start': true, 'function_id': 'function_emp_onboard_1', 'parameters': { 'name': '$.employee_details.emp_name', 'ID': '$.employee_details.emp_id', 'department': '$.employee_details.department' }, 'input_path': '$.employee_details', 'result_selector': { 'task_status': '$.SdkResponseMetadata.HttpStatusCode' }, 'result_path': '$.onboarding_result', 'on_error': [ { 'error_type': 'timeout_error', 'fallback': { 'next': 'End', 'error_path': '$.error', 'error_selector': { 'error_code': 'EXC_TME_EXC', 'error_message': 'Execution Time Limit Exceeded' } } } ], 'output_path': '$.employee_details' } }

 

以下の画像は、上記の例で[入出力処理]項目が[ビルダービュー]と[コードビュー]の両方でどのように設定されているかを示しています。

[ビルダービュー]


 

[コードビュー]



この設定では、次のようになります。
  • [入力パス]:最初にJSONをフィルターし、従業員情報に絞って $.employee_infoオブジェクトのみを保持します。
  • [パラメーター]:従業員関連の特定のデータ(employee_id, employee_name, department, role)をオンボーディング関数に渡します。
  • [結果セレクター]:Functionステートの応答からHTTPステータスコードを抽出し、オンボーディングプロセスの成功または失敗を確認できるようにします。
  • [結果パス]:元の入力JSON内のemployee_infoノードの子として、オンボーディング結果($.onboarding_result)を追加します。
  • [エラーセレクター]と[エラーパス]:オンボーディングプロセス中に問題が発生した場合、エラーの詳細を取得して保存します。
  • [出力パス]:次のステートに渡される最終結果を$.employee_infoに指定し、関連する従業員情報のみが引き継がれるようにします。
処理後、次のステートのJSON出力結果は次のようになります。

{
      'role': 'Software Engineer',
      'emp_name': 'John Doe',
      'department': 'Engineering',
      'emp_id': '357'
}


実行中にタイムアウトエラーが発生した場合、出力JSONは次のようになります。

{
'error_code': 'EXC_TME_EXC',
'error_message': 'Execution Time Limit Exceeded'
}

これにより、従業員オンボーディングの場面で入力パス、結果セレクター、結果パス、出力パスを効果的に活用し、Circuit内の後続のステートに関連データのみを渡せることが分かります。




    • Related Articles

    • サンプルユースケース

      お知らせ:当社は、お客様により充実したサポート情報を迅速に提供するため、本ページのコンテンツは機械翻訳を用いて日本語に翻訳しています。正確かつ最新のサポート情報をご覧いただくには、本内容の英語版を参照してください。 データ連携と同期 CRMや会計など、異なるソフトウェアアプリケーション間のリアルタイムなデータ同期を自動化し、手動入力をなくしてエラーを減らし、業務効率を向上させます。 定期レポートとアラート ...
    • サンプルユースケース

      お知らせ:当社は、お客様により充実したサポート情報を迅速に提供するため、本ページのコンテンツは機械翻訳を用いて日本語に翻訳しています。正確かつ最新のサポート情報をご覧いただくには、本内容の英語版を参照してください。 支払いプロセス 一般的な支払いプロセスでは、購入が行われるたびに、請求書付きの支払いリンクが購入者に共有されます。支払いが成功すると領収書が生成され、失敗した場合はプロセス全体を最初からやり直す必要があります。 ...
    • コンテキストオブジェクト

      お知らせ:当社は、お客様により充実したサポート情報を迅速に提供するため、本ページのコンテンツは機械翻訳を用いて日本語に翻訳しています。正確かつ最新のサポート情報をご覧いただくには、本内容の英語版を参照してください。 ...