照会結果は、照会基準に一致するオブジェクトを戻します。
この結果を、変数の値でフィルタリングすることもできます。
このタスクを実行する理由と実行時期
実行時にプロセスが使用する変数を、そのプロセス・モデルで
定義することができます。これらの変数で、照会可能なパートを宣言します。
例えば、John Smith が保険会社のサービス番号を呼び出して、
損傷を受けた車に対する保険請求の進捗状況を問い合わせるとします。
請求の管理者はカスタマー ID でその請求を検索します。
このタスクのステップ
- オプション: プロセス内の照会可能な変数のプロパティーを
リストします。
プロセス・テンプレート ID を使用して、
プロセスを特定します。照会可能な変数がわかっている場合は、
このステップはスキップしてください。
List variableProperties = process.getQueryProperties(ptid);
for (int i = 0; i < variableProperties.size(); i++)
{
QueryProperty queryData = (QueryProperty)variableProperties.get(i);
String variableName = queryData.getVariableName();
String name = queryData.getName();
int mappedType = queryData.getMappedType();
...
}
- フィルター基準に一致する変数を持つプロセス・インスタンスを
リストします。
このプロセスでは、カスタマー ID は変数 customerClaim の一部として
モデル化され、照会可能です。そのため、カスタマー ID を使用すれば
問題の請求を見つけることができます。
QueryResultSet result = process.query
("PROCESS_INSTANCE.NAME, QUERY_PROPERTY.STRING_VALUE",
"QUERY_PROPERTY.VARIABLE_NAME = 'customerClaim' AND " +
"QUERY_PROPERTY.NAME = 'customerID' AND " +
"QUERY_PROPERTY.STRING_VALUE like 'Smith%'",
(String)null, (Integer)null,
(Integer)null, (TimeZone)null );
このアクションによって戻される照会結果セットには、
プロセス・インスタンス名と、ID が Smith で始まる顧客のカスタマー ID の値が
含まれています。