---
title: "ワークフローの定義"
slug: "defining-workflows"
abstract: "ワークフローがアクションやコマンドを使って状態をどのように進めるかの概要。また、初期状態フィールド、最終チェックボックス、__OnSaveコマンドもカバーしています。"
---
# ワークフローの定義

ワークフロー、状態、アクション、コマンドはすべて、コンテンツツリーの /sitecore/System/Workflows下に保存される定義項目です。ワークフローは状態を含み、状態はアクションとコマンドを含みます。コマンドもアクションを含むことがあります。定義項目は、コンテンツ項目が公開可能になる前に通過すべきステップを定義します。

![Workflow tree with states, actions and commands.](https://doc.sitecore.com/api/markdown-image/xp/ja/developers/103/sitecore-experience-manager/image/XM-Workflow_tree_with_labels.png)

## ワークフロー

ワークフローには、新しいコンテンツアイテムがワークフローの一部となる際に割り当てられる状態を定義する **初期状態** フィールドが含まれています。

ワークフローは */sitecore/Templates/System/Workflow/Workflow*テンプレートに基づいています。

## 州

状態はワークフローの主要な構成要素であり、**Final**のチェックボックスを含みます。 **Final**のチェックボックスを選択すると、この状態のコンテンツ項目は公開可能です。ユーザーが最終状態のコンテンツ項目をロックするために **編集** をクリックすると、Sitecoreは自動的に新しいコンテンツアイテムを作成し、このバージョンをチェックアウトして初期ワークフローの状態に配置します。

コンテンツ項目は必ずしもワークフローのすべての状態を通る必要はありません。アクションやコマンドは、コンテンツ項目を任意の状態に直接送信できます。

州は */sitecore/Templates/System/Workflow/State*テンプレートに基づいています。

## 行動

アクションは状態またはコマンドに関連付けられることができ、アクションが起動された際にSitecoreが実行するメソッドを表します。状態のサブアイテムとして動作するアクションは、コンテンツアイテムが状態に入るときに実行されます。コマンドのサブアイテムとして動作するアクションは、ユーザーがコマンドを実行するときに実行されます。

アクションは */sitecore/Templates/System/Workflow/Action*テンプレートに基づいています。

## コマンド

コマンドは、ユーザーがコンテンツアイテムをある状態から別の状態へ移動させることができます。コンテンツエディタは、コンテンツ項目が対応する状態にあり、ユーザーがコマンドにアクセスできる場合、**レビュー** タブの **ワークフローグループ内の** コンテンツエディターにコマンドを表示します。同じコマンドはワークボックスにも表示されます。

![Commands shown as buttons in the Content Editor window, Review tab, Workflow group.](https://doc.sitecore.com/api/markdown-image/xp/ja/developers/103/sitecore-experience-manager/image/XM-Content_editor-Command_buttons.png)

コマンドは以下のフィールドを含む */sitecore/templates/System/Workflow/Command*テンプレートに基づいています:

フィールド

価値

**次の州**

アクションが実行された時点でコンテンツアイテムが移動する状態。

**コメントを抑制してください**

システムがコマンドを実行する際にユーザーにコメント入力を促すかどうかを定義します。チェックボックスがクリアされていれば、ユーザーにプロンプトが出ます。チェックボックスが選択されていれば、ユーザーにプロンプトされません。

## \_\_OnSave指揮

*\_\_OnSave*コマンドは、ユーザーがこの状態のコンテンツ項目に変更を保存した際に行われるアクションのプレースホルダーです。*\_\_OnSave*コマンドの機能は、web.configファイルのsaveUIパイプラインで定義されています。

*Sample Workflow*では、*\_\_OnSave*コマンドが自動送信アクションをトリガーします。Sitecore Minimal Page Editor役割のメンバーであるユーザーがアイテムを保存すると、Auto Submit Actionによってコンテンツアイテムが別の状態に移動します。これは自動的に行われます。なぜなら、Sitecore Minimal Page Editor役割のメンバーはページエディター内のワークフロー関連コマンドにアクセスできないためです。

![The \_\_OnSave command with the Auto Submit Action as a subitem.](https://doc.sitecore.com/api/markdown-image/xp/ja/developers/103/sitecore-experience-manager/image/XM-Workflow_Tree-Auto_Submit_Action.png)