プロセスの各ステップには前提条件を指定することができます。この前提条件により、ステップを実行するかどうかが決まります。
後処理スクリプトと同様、前提条件は JavaScript を使用します。
前提条件は、ブール値を返します。前提条件から True が返されると、そのステップは通常通りに実行されます。
前提条件から True 以外のものが返されると、プロセスはそのステップをスキップします。
プロセス要求では、ステップは「前提条件が満たされていません」とラベルが付けられます。しかし、この場合もプロセスの実行は継続されます。プロセスはそのステップが正常に終了した場合のリンクに従って実行されます。
前提条件は、そのステップがアクセスするプロパティーと同じプロパティーにアクセスできます。
例えば、アプリケーション・プロセスは以下のプロパティーにアクセスできます。
- アプリケーション・プロパティー
- アプリケーション・プロセス・プロパティー
- 環境プロパティー (コンポーネントの環境プロパティーを含む)
- システム・プロパティー
プロセスを実行した後、プロセス要求を開いて
「プロパティー」タブをクリックすることで、そのプロセスがアクセスしたプロパティーを確認することができます。
プロパティーにアクセスするには、
properties.get() コマンドを使用します。
例えば、以下のコードは、アプリケーション・プロパティーの値を取得します。
properties.get("application/property1")
次の前提条件の例では、アプリケーション・プロパティー
property1 が存在し、それが NULL 以外の場合にのみステップの実行が可能です。
properties.get("application/property1") !== undefined &&
properties.get("application/property1") !== null &&
properties.get("application/property1") !== ""
前提条件スクリプトは、プロセス・プロパティーにアクセスできます。例えば、プロセスに
processProperty1 という名前のプロパティーがあると、次のコードでそのプロパティーにアクセスできます。
properties.get("processProperty1")
コンポーネント・プロセスおよび汎用プロセスの前提条件スクリプトは、前のステップの出力プロパティーにアクセスできます。
例えば、
Step1 という名前のステップの後処理スクリプトが
OutputProp1 という名前のプロパティーを指定すると仮定します。次の前提条件スクリプトでは、このプロパティーの値が
value1 である場合にのみ、別のステップの実行が可能になります。
properties.get("Step1/OutputProp1") == "value1"
前提条件は、
hasFailures という名前のプロパティーにアクセスできます。
プロセス内のステップのいずれかが失敗すると、このプロパティーは
True になります。
失敗したステップが無い場合は、このプロパティーは未定義になります。例えば、プロセス内の他のどのステップも失敗しない場合にのみステップを実行する場合は、以下の前提条件を使用します。
properties.get('hasFailures') == undefined