ワークフローで自動化された処理を実行する
歯車アイコンの付いたサービスタスクは、自動化された処理を実行するアクティビティです。
自動化とはユーザが介入することなく、プロセスの実行がアクティビティに到達すると自動的に処理が開始されることを意味します。
ユーザがボタンをクリックして、残りの作業が自動処理されるような場合は、サービスタスクではなくユーザタスクが使用されます。
Content Repository では、サービスタスクは CMS に作成されたスクリプトを実行するために使用されます。
スクリプトは通常、Groovy や EcmaScript です。
スクリプトでは、外部システムを呼び出したり、複雑な計算で時間がかかるような大きな処理が実行されます。
データマッピングのような単純計算で、比較的時間のかからないような処理には、サービスタスクではなく、スクリプトタスクが使用されます。
サービスタスクを作成する
プロセス変数を取得または設定する
プロセス変数をスクリプト内で使用できます。
プロセス変数を取得または設定するには、execution オブジェクトを使います。
// variable1 を取得
def variable1 = execution.getVariable("variable1");
// variable1 を設定
execution.setVariable("variable1", "my variable value");