

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

# Step Functions で Workflow Studio を使用してワークフローを作成する
<a name="workflow-studio-create"></a>

Step Functions Workflow Studio を使用してワークフローを作成、編集、実行する方法を学習します。ワークフローの準備ができたら、ワークフローを保存、実行、エクスポートできます。

**Topics**
+ [ステートマシンを作成する](#workflow-studio-components-create)
+ [ワークフローの設計](#workflow-studio-build)
+ [ワークフローを実行](#workflow-studio-components-create-run)
+ [ワークフローの編集](#workflow-studio-components-create-edit)
+ [ワークフローのエクスポート](#workflow-studio-components-create-export)
+ [プレースホルダーを使用したワークフロープロトタイプの作成](#workflow-studio-components-create-prototype)

## ステートマシンを作成する
<a name="workflow-studio-components-create"></a>

Workflow Studio では、スターターテンプレートを選択するか、空白のテンプレートを選択してワークフローを作成できます。

スターターテンプレートは、ワークフロープロトタイプと定義を自動的に作成し、プロジェクトに必要なすべての関連 AWS リソースを にデプロイするready-to-runサンプルプロジェクトです AWS アカウント。これらのスターターテンプレートをそのままデプロイして実行することも、ワークフロープロトタイプを使用してその上に構築することもできます。スターターテンプレートの詳細については、「[Step Functions のスターターテンプレートを使用してステートマシンをデプロイする](starter-templates.md)」を参照してください。

空白のテンプレートでは、[[デザイン]](workflow-studio.md#wfs-interface-design-mode) モードまたは [[コード]](workflow-studio.md#wfs-interface-code-mode) モードを使用してカスタムのワークフローを作成します。

### スターターテンプレートを使用してステートマシンを作成する
<a name="wfs-create-workflow-templates"></a>

1. [Step Functions コンソール](https://console.aws.amazon.com/states/home?region=us-east-1#/)を開き、**[ステートマシンの作成]** を選択します。

1. **[テンプレートを選択]** ダイアログボックスで、次のいずれかを実行してサンプルプロジェクトを選択します。
   + [キーワードで検索] ボックスに **Task Timer** と入力し、返された検索結果から **[タスクタイマー]** を選択します。
   + 右側のペインの **[すべて]** に一覧表示されているサンプルプロジェクトを参照し、**[タスクタイマー]** を選択します。

1. **[次へ]** を選択して続行します。

1. テンプレートの使用方法を選択します。

1. **[テンプレートの使用]** を選択して選択を続行します。

1. **デモの実行** – 読み取り専用のステートマシンを作成します。確認後、ワークフローとすべての関連リソースを作成できます。

1. **その上に構築する** – 編集可能なワークフロー定義が提供され、内容を確認・カスタマイズし、独自のリソースでデプロイできます (関数やキューなどの関連リソースは自動的には作成**されません**)。

### 空白のテンプレートを使用してワークフローを作成します。
<a name="wfs-create-workflow-blank"></a>

クリーンなキャンバスから開始する場合は、空のテンプレートからワークフローを作成します。

1. [Step Functions コンソール](https://console.aws.amazon.com/states/home?region=us-east-1#/)を開きます。

1. **Create State Machine** (ステートマシンの作成) を選択します。

1. **[空白から作成]** を選択します。

1. ステートマシンに名前を付け、**[続行]** を選択して Workflow Studio でステートマシンを編集します。

   これで、[デザインモード](workflow-studio.md#wfs-interface-design-mode) でワークフローの設計を開始したり、[コードモード](workflow-studio.md#wfs-interface-code-mode) へのワークフロー定義の書き込みを開始できます。

1. **[設定]** を選択して、[設定モード](workflow-studio.md#wfs-interface-config-mode) のワークフローの設定を管理します。例えば、ワークフローの名前を入力し、そのタイプを選択します。

## ワークフローの設計
<a name="workflow-studio-build"></a>

追加する状態の名前がわかっている場合は、[[State browser] (状態ブラウザ)](workflow-studio.md#workflow-studio-components-states) の上部にある検索ボックスを使用して検索します。それ以外の場合は、ブラウザで必要な状態を探し、キャンバスに追加します。

ワークフロー内の別の場所にドラッグして、ワークフローの状態を並べ替えることができます。状態をキャンバスにドラッグすると、次のスクリーンショットに示すように、状態がワークフローに挿入される場所を示す線が表示されます。

![状態の宛先を示す青い線が表示されたスクリーンショットの例。](http://docs.aws.amazon.com/ja_jp/step-functions/latest/dg/images/wfe-design-02.png)


状態がキャンバスにドロップされると、そのコードが自動生成され、ワークフロー定義内に追加されます。定義を確認するには、[インスペクターパネル](workflow-studio.md#workflow-studio-components-formdefinition)の**[定義]** トグルをオンにします。[コードモード](workflow-studio.md#wfs-interface-code-mode) を選択して、組み込みコードエディタを使用して定義を編集できます。

ステートをキャンバスにドロップすると、右側の [インスペクターパネル](workflow-studio.md#workflow-studio-components-formdefinition) パネルでそのステートを設定できます。このパネルには、キャンバスに配置した各ステートまたは API アクションの **[設定]**、**[入力]**、**[出力]**、および **[エラー処理]** タブがあります。ワークフローに含めるステートは、**[設定]** タブで設定します。

例えば、Lambda Invoke API アクションの **[設定]** タブは次のオプションを提供しています。
+ **状態名**: 状態をカスタム名で識別するか、デフォルト生成名を受け入れることができます。
+ **[API]** には、ステートが使用する API アクションが表示されます。
+ **統合タイプ**: 他のサービスで API アクションを呼び出すために使用されるサービス統合タイプを選択できます。
+ **[関数名]** には、次のオプションがあります。
  +  **[Enter a function name]** (関数名を入力): 関数名またはその ARN を入力できます。
  +  **[Get function name at runtime from state input]** (状態入力からランタイムに関数名を取得): このオプションを使用すると、指定したパスに基づいて、状態入力から関数名を動的に取得できます。
  +  **[Select function name]** (関数名を選択): アカウントとリージョンで利用可能な機能から直接選択できます。
+ **ペイロード**: 状態入力、JSON オブジェクト、またはペイロードなしのいずれかを使用して、Lambda 関数にペイロードとして渡すことができます。JSON を選択した場合、静的な値と状態入力から選択した値を両方とも含めることができます。
+ (オプション) 一部の状態には、**[タスクが完了するまで待機]** または **[コールバックを待つ]** を選択するオプションがあります。使用可能な場合、次の[サービス統合パターン](connect-to-resource.md)の一つを選択できます。
  + **[No option selected]** (オプションの選択なし): Step Functions は [レスポンスのリクエスト](connect-to-resource.md#connect-default) 統合パターンを使用します。Step Functions は HTTP 応答を待ってから、次の状態に進みます。Step Functions はジョブが完了するまで待機することはしません。使用可能なオプションがない場合、状態はこのパターンを使用します。
  + **[Wait for task to complete]** (タスクの完了を待つ): Step Functions は [ジョブの実行 (.sync)](connect-to-resource.md#connect-sync) 統合パターンを使用します。
  + **[Wait for callback]** (コールバックを待つ): Step Functions は [タスクトークンのコールバックまで待機する](connect-to-resource.md#connect-wait-token) 統合パターンを使用します。
+ (オプション) ワークフロー AWS アカウント 内の異なる で設定されたリソースにアクセスするには、Step Functions は[クロスアカウントアクセス](concepts-access-cross-acct-resources.md)を提供します。**クロスアカウントアクセスのための IAM ロール**には、以下のオプションがあります。
  + **IAM ロールの ARN を指定**: 適切なリソースアクセス許可を含む IAM ロールを指定します。これらのリソースは、クロスアカウント呼び出しを行う AWS アカウント であるターゲットアカウントで使用できます。
  + **状態入力からランタイムに IAM ロール ARN を取得する**: IAM ロールを含むステートの JSON 入力内の既存のキーと値のペアへの参照パスを指定します。
+ **[Next state]** (次の状態) 次に移行したい状態を選択できます。
+ (オプション) **[コメント]** フィールドはワークフローには影響しませんが、ワークフローに注釈を付けるために使用できます。

一部の状態には、さらに包括的な設定オプションがあります。例えば、Amazon ECS `RunTask` 状態の設定には、プレースホルダー値が入力された `API Parameters` フィールドを含みます。これらの状態では、プレースホルダー値をニーズに適した構成と置き換えることができます。

**状態を削除するには**

バックスペースを使用して右クリックし、**[状態を削除]** または [[デザインツールバー]](workflow-studio.md#wfs-interface-design-mode) の **[削除]** を選択します。

## ワークフローを実行
<a name="workflow-studio-components-create-run"></a>

ワークフローの準備ができたら、そのワークフローを実行して、[Step Functions コンソール](https://console.aws.amazon.com/states/home)から実行を表示できます。

**Workflow Studio でワークフローを実行するには**

1. **[デザイン]**、**[コード]**、または**[設定]** モードで、**[実行]**を選択ます。

   **[実行を開始]** ダイアログが新しいタブに開きます。

1. **[実行を開始]** ダイアログボックスで、以下の操作を行います。

   1. (オプション) 生成されたデフォルトを上書きするカスタム実行名を入力します。
**非 ASCII 名とログ記録**  
Step Functions では、ステートマシン、実行、アクティビティ、ラベルに、ASCII 以外の文字を含む名前を使用できます。このような文字を使用すると Amazon CloudWatch がデータを記録できなくなるため、Step Functions のメトリクスを追跡できるように ASCII 文字のみを使用することをお勧めします。

   1. (オプション) **[入力]** ボックスに、JSON 形式の入力値を入力してワークフローを実行します。

   1. **[実行のスタート]** を選択します。

   1. Step Functions コンソールから実行 ID のタイトルが付いたページ (*[実行の詳細]* ページ) が表示されます。ワークフローの進行中および完了後に、実行結果を確認できます。

      実行結果を確認するには、**[グラフビュー]** で個々の状態を選択し、[ステップの詳細](concepts-view-execution-details.md#exec-details-intf-step-details) ペインの個々のタブを選択すると、入力、出力、定義などの各状態の詳細がそれぞれ表示されます。*[実行の詳細]* ページに表示できる実行情報の詳細については、「[実行の詳細の概要](concepts-view-execution-details.md#exec-details-interface-overview)」を参照してください。

## ワークフローの編集
<a name="workflow-studio-components-create-edit"></a>

Workflow Studio の [デザインモード](workflow-studio.md#wfs-interface-design-mode) では、既存のワークフローを視覚的に編集できます。

[Step Functions コンソール](https://console.aws.amazon.com/states/home)の **[ステートマシン]** ページで、編集するワークフローを選択します。ワークフローは Workflow Studio の**[デザイン]** モードで開きます。

[コードモード](workflow-studio.md#wfs-interface-code-mode) でワークフロー定義を編集することもできます。**[コード]** ボタンを選択して、Workflow Studio でワークフロー定義を表示または編集します。

**注記**  
ワークフローにエラーが見つかった場合は、**[デザイン]** モードで修正する必要があります。ワークフローにエラーがある場合は、**[コード]** モードまたは **[設定]** モードに切り替えることはできません。

ワークフローに変更を保存すると、新しい**バージョン**を発行することもできます。バージョンでは、ワークフローの元のバージョンまたは代替バージョンを実行できます。バージョンによるワークフローの管理の詳細については、「[Step Functions ワークフローのステートマシンバージョン](concepts-state-machine-version.md)」を参照してください。

## ワークフローのエクスポート
<a name="workflow-studio-components-create-export"></a>

ワークフローの [Amazon States Language](concepts-amazon-states-language.md) (ASL) 定義とワークフローのグラフをエクスポートできます。

1. [Step Functions コンソール](https://console.aws.amazon.com/states/home)でワークフローを選択します。

1. *[ステートマシンの詳細]* ページで、**[編集]** を選択します。

1. **[アクション]** ドロップダウンボタンを選択し、次のいずれかまたは両方を実行します。
   + ワークフローのグラフを SVG または PNG ファイルにエクスポートするには、**[グラフをエクスポート]** で、使用する形式を選択します。
   + ワークフロー定義を JSON または YAML ファイルとしてエクスポートするには、**[定義をエクスポート]** で目的の形式を選択します。

## プレースホルダーを使用したワークフロープロトタイプの作成
<a name="workflow-studio-components-create-prototype"></a>

Workflow Studio または [Infrastructure Composer で Workflow Studio](use-wfs-in-app-composer.md) を使用して、まだ存在しないリソースという名前の*プレースホルダーリソース*を含む新しいワークフローのプロトタイプを作成できます。

ワークフローのプロトタイプを作成するには

1. [Step Functions コンソール](https://console.aws.amazon.com/states/home?region=us-east-1#/)にサインインします。

1. **[Create state machine]** (ステートマシンの作成) をクリックします。

1. **[空白から作成]** を選択します。

1. ステートマシンに名前を付け、**[続行]** を選択して Workflow Studio でステートマシンを編集します。

1. Workflow Studio の [[デザイン]](workflow-studio.md#wfs-interface-design-mode) モードが開きます。Workflow Studio でワークフローを設計します。プレースホルダーリソースを含めるには、次の手順に従います。

   1. プレースホルダーリソースを含める状態を選択し、**[設定]** を選択します。
      + Lambda 呼び出し状態の場合、**[関数名]** を選択し、その後、**[関数名を入力]** を選択します。関数のカスタム名前を入力することもできます。
      + Amazon SQS Send Message 状態については、**[キュー URL]** を選択し、その後、**[キュー URL を入力]** を選択します。プレースホルダーキュー URL を入力します。
      + Amazon SNS 発行ステートの場合は、**[トピック]** からトピック ARN を選択します。
      + **[Actions]** (アクション) の下にリストされている他の状況すべてについては、デフォルト設定を使用できます。
**注記**  
ワークフローにエラーが見つかった場合は、**[デザイン]** モードで修正する必要があります。ワークフローにエラーがある場合は、**[コード]** モードまたは **[設定]** モードに切り替えることはできません。

   1. (オプション) ワークフローの自動生成 ASL 定義を表示するには、**[定義]** を選択します。

   1. (オプション) Workflow Studio でワークフロー定義を更新するには、**[コード]** ボタンを選択します。
**注記**  
ワークフロー定義にエラーがある場合は、**[コード]** モードで修正する必要があります。ワークフロー定義にエラーがある場合は、**[デザイン]** モードまたは **[設定]** モードに切り替えることはできません。

1. (オプション) ステートマシン名を編集するには、**MyStateMachine** のデフォルトのステートマシン名の横にある編集アイコンを選択し、**ステートマシン名**ボックスに名前を指定します。

   [設定モード](workflow-studio.md#wfs-interface-config-mode) に切り替えてデフォルトのステートマシン名を編集することもできます。

1. ステートマシンのタイプや実行ロールなどのワークフロー設定を指定します。

1. **[作成]** を選択します。

プロトタイプに使用できるプレースホルダーリソースを使って、新しいワークフローが作成されるようになりました。ワークフロー定義とワークフローのグラフを[エクスポート](#workflow-studio-components-create-export)できます。
+ ワークフロー定義を JSON または YAML ファイルとしてエクスポートするには、**[デザイン]** モードまたは **[コード]** モードで **[アクション]** ドロップダウンボタンを選択します。次に、**[定義をエクスポート]** で、エクスポートする形式を選択します。このエクスポートされた定義は、[AWS Toolkit for Visual Studio Code](https://docs.aws.amazon.com/toolkit-for-vscode/latest/userguide/building-stepfunctions.html) を使用したローカル開発の開始点として使用できます。
+ ワークフローグラフを SVG または PNG ファイルにエクスポートするには、**[デザイン]** モードまたは **[コード]** モードで、**[アクション]** ドロップダウンボタンを選択します。次に、**[定義をエクスポート]** で、必要な形式を選択します。