プロセスデータ

通常、プロセスが機能するにはデータが必要です。例えば、プロセスの開始時やプロセス内の他のアクティビティにおいてデータを入力としてプロセスに取り込んだり、プロセスの中で必要に応じてデータを使用したりします。また、データを出力として、プロセス完了時にプロセス作成元に返すこともできます。プロセスの中で変数に格納されたデータは、参照して判断に使用することや、サービス操作による作用の対象とすることができます。

変数を使用する方法は、次の 2 つがあります。

  • プロセス変数は、実行時のデータ保存とアクセスに使用されます。保存されるデータは、プロセスインスタンスごとに異なります。また、実行時に変更することができます( プロセス変数 を参照)。

  • 設定パラメーターは、すべてのプロセスインスタンスに適用されるデフォルトのデータ値の設定に使用されます。このデータを実行時に変更することはできませんが、管理コンソールまたは Workbench を使用して設定できます( 設定パラメーター を参照)。

プロセスの入力および出力データ

プロセス変数は、プロセス開始時に入力として渡されるデータを指定するのに使用されます。同様に、プロセス完了時にプロセス開始者に返される出力データの保存にも、プロセス変数を使用できます。プロセス開始時に入力データの指定を必須とするように設定することもできます。

General グループの変数プロパティの値によって、その変数にプロセスの入力と出力のどちらのデータが保存されるかが決まります( 変数の共通プロパティ を参照)。

プロセスデータモデル

プロセス用に保存されるデータは、内部的にはデータツリーとして表現されます。このデータツリーのノードはそれぞれ、プロセス内で使用できる 1 つのデータアイテムを表します。ツリーのルートノードには、 process_data という名前が付いています。このノードの下に、他のすべてのデータノードがあります。以下に示す標準のノードは、どのプロセスの場合も存在します。

create_time:
プロセスインスタンスが作成された日時。

creator_id:
プロセスインスタンスを開始したユーザーの ID。

id:
プロセスインスタンスの一意の識別子。

status:
プロセスインスタンスのライフサイクルステータス。

update_time:
プロセスインスタンスデータが前回変更された日時。

process_data の下にあるこれ以外のノードは、そのプロセスのために作成されたプロセス変数に保存されているデータを表します。次の図に示すプロセスのデータツリーには、3 つの変数が定義されており、 booleanvar stringvar longvar という名前が付けられています。

変数は、データツリー内ではアルファベット順に表示されます。標準のノードの名前は、斜体で表示されます。

単純な変数型、例えば boolean long は、データツリー内ではリーフノードとして表現されます。変数型の中には、 xfaForm xml のように独自のデータスキーマを持つものがあり、子を持つノードとして表現されます。子ノードは、その変数のスキーマに従って組織化されたデータを表します。

プロセスデータへのアクセス

プロセスデータは、プロセス実行中の判断に使用され、ほかにもサービス操作への入力データの提供や、サービス操作出力データの保存に使用されます。データモデル内のノードは、XPath 式を使用して取得できます。プロセスのデータモデルは、XPath Builder で見ることができます。XPath Builder には、プロパティ値を XPath 式として表現できる任意のビューやダイアログボックスからアクセスできます。