ワークフロー定義ノード
ご覧のページは、お客様の利便性のために一部機械翻訳されています。また、ドキュメントは頻繁に更新が加えられており、翻訳は未完成の部分が含まれることをご了承ください。最新情報は都度公開されておりますため、必ず英語版をご参照ください。翻訳に問題がある場合は、こちらまでご連絡ください。
ワークフローデザイナでワークフロー定義 を作成する
の基本を理解したら、詳細に進むことができます。 このチュートリアルでは、ワークフローノードで使用できる2つの重要な機能であるアクションと通知について学びます。 また、遷移、フォーク、結合、および条件を使用してワークフローの処理に影響を与える方法についても学習します。
ワークフロー定義で使用できるいくつかのノードタイプがあります。
- タスクノード
- ノードの分岐と結合
- 条件ノード
- 開始ノード
- 終了ノード
- 状態ノード
これらは最も複雑なノードであり、多くの場合ワークフロー定義の中心であるため、タスクノードは個別に カバーされ。
フォークは、参加、および条件ノードが上のチュートリアルで、トランジションと一緒に、議論されている 処理ワークフロー彼らはワークフローの処理に影響を与えるために使用されているので、。
このチュートリアルでは、状態ノード、開始ノード、終了ノード、およびアクションと通知について説明します。
ノードのアクションと通知
すべてのノードがアクションと通知を持つことができます。
行動
アクションは、ノードに入る前、ノードを出た後、またはタスクノードが割り当てられると、追加の処理を実行します。 ノードの[プロパティ]タブにアクセスし、[ アクション]をダブルクリックして構成します。
単一の承認者ワークフローには、アセットのステータスを 拒否に設定し、次に 保留設定するGroovyで記述されたアクションを持つ更新タスクが含まれています。
import com.liferay.portal.kernel.workflow.WorkflowStatusManagerUtil;
import com.liferay.portal.kernel.workflow.WorkflowConstants;
WorkflowStatusManagerUtil.updateStatus(WorkflowConstants.getLabelStatus("denied"), workflowContext);
WorkflowStatusManagerUtil.updateStatus(WorkflowConstants.getLabelStatus("pending"), workflowContext);
アクションスクリプトが最初にステータスを設定し、次に別のステータスに設定するのはなぜですか? 一部のアセットでは、ステータスが 拒否 場合、アイテムが拒否されたという通知がアセット作成者にメールで送信されます。
ワークフロー定義の終了ノードには、終了ノードへの入り口で、デフォルトでアクションが構成されています。
import com.liferay.portal.kernel.workflow.WorkflowStatusManagerUtil;
import com.liferay.portal.kernel.workflow.WorkflowConstants;
WorkflowStatusManagerUtil.updateStatus(WorkflowConstants.getLabelStatus("approved"), workflowContext);
これは通常、ワークフロープロセスの目標であるため、ステータスを 承認済みに更新するGroovyスクリプトです。
上記のアクションのような簡単なことをすることも、好きなだけクリエイティブにすることもできます。
タスクをユーザーに割り当てるのは良いことであり、ユーザーがワークフロータスクの通知を受け取ることができればさらに便利です。
お知らせ
通知は、ワークフローに注意が必要であることをタスク担当者に知らせるため、またはプロセスのステータスについてアセット作成者を更新するために送信されます。 タスクまたはワークフローの他のタイプのノードに送信できます。 通知を設定するには、ノードの[プロパティ]タブで[ 通知 ]をダブルクリックして、通知を作成します。
通知タイプを指定する必要があり、ユーザー通知、電子メール、インスタントメッセンジャー、またはプライベートメッセージを選択できます。 テンプレートが必要な場合は、FreemarkerまたはVelocityを使用するか、プレーンテキストメッセージを作成することを選択できます。
以下は、通知でアセット作成者の名前とアセットのタイプを報告する基本的なFreemarkerテンプレートです。
${userName} sent you a ${entryType} for review in the workflow.
また、タスクの割り当て時(割り当て時)、またはワークフロー処理がノードを離れるとき(終了時)に、通知の送信をノードへのエントリ(開始時)にリンクするように選択することもできます。 ノードで複数の通知を構成できます。
通常、割り当てと通知の設定はチーム化されているため、ワークフローでタスクが割り当てられると、ユーザーは通知を受け取ります。 これを行うには、通知を設定するときに、[Recipient Type]で[ Task Assignees 選択します。
開始ノードと終了ノード
開始ノードと終了ノードはワークフロー処理を開始し、アセットを最終的な承認済み状態にします。 多くの場合、デフォルトの開始ノードと終了ノードを変更せずに使用できます。 さらに処理を開始する場合(開始ノードの場合)、上記のアクションのセクションで説明したように、[プロパティ]タブを使用してノードにアクションを追加します。
エンドノードには、Groovyスクリプト言語を使用してワークフローステータスをApprovedに設定するデフォルトアクションがあります。
import com.liferay.portal.kernel.workflow.WorkflowStatusManagerUtil;
import com.liferay.portal.kernel.workflow.WorkflowConstants;
WorkflowStatusManagerUtil.updateStatus(WorkflowConstants.getLabelStatus("approved"), workflowContext);
追加の処理が必要な場合は、アクションスクリプトに追加してください。
デフォルトでは、開始ノードと終了ノードを接続する遷移がありますが、ほとんどのワークフローは初期状態から承認済みに直接移行しないため、おそらくそれを削除する必要があります。
状態ノード
状態ノードは、通知とアクションを持つことができます。 ワークフローデザイナによって追加されたデフォルトの終了ノードは、ワークフローのステータスを承認済みに設定する事前構成された状態ノードです。 ステータスを Expired設定するノードを作成するとします。 状態ノードを作成するには、ワークフローノードをワークフローデザイナキャンバスにドラッグし、状態ノードを期限切れに設定するアクションを構成します。 Groovyでは次のようになります。
import com.liferay.portal.kernel.workflow.WorkflowStatusManagerUtil;
import com.liferay.portal.kernel.workflow.WorkflowConstants;
WorkflowStatusManagerUtil.updateStatus(WorkflowConstants.getLabelStatus("expired"), workflowContext);
次に、forkノードとjoinノードを使用して並列処理を行う方法を学びます。