2.7.1 一覧情報の取得手順と基本動作
一覧情報の取得手順と基本動作について説明します。
(1) 一覧情報の取得手順
getXXXsListメソッドで一覧情報を取得する手順について説明します。
なお,getXXXsListメソッドの「XXX」の部分は,取得する一覧情報にあわせて次の中から該当する文字列に置き換えてください。
-
ActivityInstance(業務ステップオブジェクトの一覧情報を取得する場合)
-
ProcessDefinition(ビジネスプロセス定義オブジェクトの一覧情報を取得する場合)
-
ProcessInstance(案件オブジェクトの一覧情報を取得する場合)
-
WorkDefinition(作業定義オブジェクトの一覧情報を取得する場合)
-
WorkItem(作業オブジェクトの一覧情報を取得する場合)
図2‒4 getXXXsListメソッドで一覧情報を取得する手順
- 説明
-
フィルター条件,ソート条件,取得件数,オフセットなどを指定してgetXXXsListメソッドで検索結果を取得します。
getXXXsListメソッドは一度で複数の件数を取得できますが,一度の取得単位を少なくし,getXXXsListメソッドを繰り返すことで,少しずつ順に検索結果を取得することもできます。
ただし,メソッドを繰り返す間,検索の集合が固定されないため,タイミングによっては,続きのオフセットを指定しても,案件情報の重複や漏れが発生します。
なお,getXXXsListメソッドは,実際には一覧取得する情報の種類によって,それぞれ個別のメソッドを利用します。
(2) 一覧情報取得時のCSCIW内での動作
getXXXsListメソッドで一覧情報を取得する場合のCSCIW内での動作について説明します。
|
- 説明
-
指定されたフィルター条件を満たす情報を指定されたソート順で返し,そのあと,検索結果領域を解放します。
getXXXsListメソッドでは,取得する件数の上限とオフセットを指定できます。この場合は,取得情報として検索結果の上位から指定されたオフセット分を除いて,指定された上限件数分だけ情報を返します。例えば,検索結果の101番目から50件の情報を取得する場合は,オフセットに100を指定し,上限に50を指定します。ソートを指定した場合は,全検索結果をソートしたあと,上位から指定されたオフセット分を除いて,指定された上限件数分だけ情報を返します(実際のソートはデータベースの機能で実行します)。取得件数の上限を指定すると,CSCIW内のリソース消費量を削減できます。
- 注意事項
-
取得する全情報数が多くなるとリソース不足が発生するおそれがあるので,取得する全情報数に注意して使用してください。
取得する全情報数とは,取得する最大情報数の指定(aMaxCount)とは無関係です。常にフィルター条件に合致する全情報数のことです。
(3) 一覧情報取得時の最大取得件数の指定
一覧取得する情報数については,取得する情報の最大取得件数をgetXXXsListメソッドで指定できます。
最大取得件数を指定する場合,getXXXsListメソッドの呼び出しで取得する情報の最大件数を,引数(aMaxCount)で指定します。この場合は,フィルター条件を満たす情報のうち,指定された最大件数分だけ検索結果を取得します。このため,フィルター条件を満たす情報数が引数(aMaxCount)で指定した数より多い場合でも,getXXXsListメソッドで取得できる情報数の上限は引数(aMaxCount)で指定した最大件数までとなります。getXXXsListメソッドで取得できる情報数の上限を超える情報を取得しようとした場合は,全情報を取得する指定(aMaxCountの値が-1)でこれ以上情報が存在しないときに,さらに情報を取得しようとしたときと同じ動作(長さ0の属性値リストを返す)をします。
なお,引数(aMaxCount)を0にすると,長さ0の属性値リストが返されます。